feat: sync with upstream — v1.2.0, in-app updates, Projects, modules
Brings the public tree back in line with the development repo after several weeks of drift caused by a stale publish include list. New: - In-app update path: GET /update/check compares the checkout against origin/main and POST /update/apply runs `ncp upgrade` detached (pull, rebuild, restart). The sidebar shows the version, checks on click, and offers an "update available" pill. - Projects: a project workspace groups chats and RAG documents, with per-project instructions and document retrieval scoped to the active project. Replaces the standalone Documents page. - modules/: auto-discovered feature plugins (mail, network) with their frontend counterparts and tests. - Memory curation runs in-process (synapse/memory/curator.py) on the chat model when a conversation goes idle. The separate memory service on :8001 is gone, along with the launcher lines that started it. Also: the KDE theme, panel and Promethean terminal assets, the full test suite, and VERSION 1.2.0. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
This commit is contained in:
@@ -36,6 +36,22 @@ cp -f "$NEXUS/management/autostart/nm-applet.desktop" "$AUTOSTART/nm-appl
|
||||
cp -f "$NEXUS/management/autostart/blueman.desktop" "$AUTOSTART/blueman.desktop"
|
||||
cp -f "$NEXUS/management/autostart/blueman-applet.desktop" "$AUTOSTART/blueman-applet.desktop"
|
||||
|
||||
# Suppress the XApp tray icons (Update Manager, System Reports, nvidia-prime).
|
||||
# XApp.StatusIcon only speaks its own org.x.StatusIcon protocol; with no XApp
|
||||
# status monitor on Plasma it falls back to a legacy XEmbed icon, and
|
||||
# xembedsniproxy renders those as solid black silhouettes. Plasma's own
|
||||
# DiscoverNotifier already covers update notifications, and nvidia-prime's
|
||||
# GPU-mux switching is reachable from `prime-select`. Delete the override to
|
||||
# get one back -- it will still render black.
|
||||
for app in mintupdate mintreport nvidia-prime; do
|
||||
printf '[Desktop Entry]\nType=Application\nName=%s\nExec=/bin/true\nHidden=true\nX-XFCE-Autostart-Override=true\n' \
|
||||
"$app" > "$AUTOSTART/$app.desktop"
|
||||
done
|
||||
|
||||
# Plank runs under the primary-follow watcher, which also restarts it if it dies.
|
||||
# Nothing else launches Plank — a restored ~/.config/plank only holds its
|
||||
# launchers, so without this the dock is simply absent on a fresh box.
|
||||
ln -sf "$NEXUS/management/autostart/plank.desktop" "$AUTOSTART/plank.desktop"
|
||||
|
||||
# ── Register the genmon applets into the XFCE panel ────────────────────────
|
||||
# The network applet's genmon (plugin-13) was added by hand once; the Nexus
|
||||
|
||||
@@ -15,15 +15,13 @@ port_up() {
|
||||
state() { port_up "$1" && echo "up" || echo "down"; }
|
||||
|
||||
BACKEND=$(state 8000) # Synapse
|
||||
MEMORY=$(state 8001) # Memory service
|
||||
FRONTEND=$(state 5173) # Vite frontend
|
||||
|
||||
up=0
|
||||
[ "$BACKEND" = up ] && up=$((up + 1))
|
||||
[ "$MEMORY" = up ] && up=$((up + 1))
|
||||
[ "$FRONTEND" = up ] && up=$((up + 1))
|
||||
|
||||
if [ "$up" -eq 3 ]; then ICON="$ICON_DIR/nexus-on.png"
|
||||
if [ "$up" -eq 2 ]; then ICON="$ICON_DIR/nexus-on.png"
|
||||
elif [ "$up" -eq 0 ]; then ICON="$ICON_DIR/nexus-off.png"
|
||||
else ICON="$ICON_DIR/nexus-partial.png"
|
||||
fi
|
||||
@@ -31,8 +29,7 @@ fi
|
||||
dot() { [ "$1" = up ] && echo "●" || echo "○"; }
|
||||
|
||||
echo "<img>$ICON</img>"
|
||||
echo "<tool>NexusOS — ${up}/3 services up
|
||||
echo "<tool>NexusOS — ${up}/2 services up
|
||||
$(dot "$BACKEND") Synapse backend :8000
|
||||
$(dot "$MEMORY") Memory service :8001
|
||||
$(dot "$FRONTEND") Frontend (Vite) :5173</tool>"
|
||||
echo "<click>$HOME/.local/bin/nexus-popup.py</click>"
|
||||
|
||||
@@ -34,7 +34,6 @@ APP_URL = "http://localhost:5173"
|
||||
# name, port, nexus-cli flag
|
||||
SERVICES = [
|
||||
("Synapse backend", 8000, "--backend"),
|
||||
("Memory service", 8001, "--memory"),
|
||||
("Frontend (Vite)", 5173, "--frontend"),
|
||||
]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user