Commit Graph
3 Commits
Author SHA1 Message Date
swinksandClaude Opus 4.8 cd29e00707 electron-builder auf 26 heben, npm-Audit-Warnungen beheben
Alle 16 npm-Audit-Findings (15 high, 1 critical) lagen ausschliesslich im
Build-Werkzeug electron-builder/electron (devDependency) und wurden nie ins
Paket ausgeliefert -- die einzige Runtime-Dependency ist marked. `npm audit
fix` (nicht-breakend) plus Anheben von electron-builder 25 -> 26.15.3
bringt den Audit auf 0 Findings, inkl. der AppImage-Search-Path-Luecke
(GHSA-7g7r-gx96-252g), die das gebaute AppImage tatsaechlich betraf.

electron-builder 26 aendert das linux.desktop-Schema: [Desktop Entry]-
Eintraege liegen jetzt unter desktop.entry statt direkt. StartupWMClass
entsprechend verschoben; das gebaute .desktop enthaelt es unveraendert,
die Always-on-Top-Fensterzuordnung bleibt also erhalten. Linux-Build
(AppImage + .deb, v1.2.1) verifiziert: exit 0, .deb meldet 1.2.1.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EXVYWBuRykeGM4mWw3xMe9
2026-09-01 21:36:38 +02:00
swinksandClaude Opus 4.8 d4571ad39e AppImage-Autostart unter Wayland reparieren
Der Wechsel auf X11 (noetig, weil Wayland weder Selbstpositionierung noch
Always-on-Top erlaubt) startete die App unter Wayland gar nicht neu: Electrons
app.relaunch() legt den Nachfolger ueber einen Hilfsprozess an, der im
/tmp-Mount des AppImage liegt. Beim Beenden der alten Instanz wird der Mount
abgehaengt und reisst den Hilfsprozess mit, bevor er den Nachfolger starten
kann -- die App war nach dem Doppelklick einfach weg.

Fuer das AppImage den Nachfolger jetzt selbst als abgekoppelten Prozess
(child_process.spawn mit detached/unref) auf das echte Abbild starten; das
ueberlebt das Abhaengen des Mounts. Quelle und .deb behalten app.relaunch(),
da dort der Hilfsprozess auf einem bleibenden Pfad liegt.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-05 22:21:13 +02:00
swinksandClaude Opus 4.8 c1b899ec8b Linux-Fassung (Ubuntu) ergaenzen
Die Fachlogik war bereits plattformneutral — paths.js loeste ~/.config
schon auf, jsonl.js liest ueber os.homedir(). Zu tun waren Autostart,
Build-Targets und drei Linux-Eigenheiten der Oberflaeche.

XWayland erzwingen: Ab Electron 36 waehlt Chromium in einer
Wayland-Sitzung von sich aus Wayland. Dort darf sich ein Fenster weder
selbst positionieren noch dauerhaft in den Vordergrund legen — beides
ist der Kern dieses Widgets. Der Schalter muss auf der Kommandozeile
stehen, weil Ozone die Plattform vor dem Main-Skript festlegt;
appendSwitch() und ELECTRON_OZONE_PLATFORM_HINT kommen beide zu spaet.
Bleibt ein einmaliger Neustart mit --ozone-platform=x11, der sich am
Argument selbst als Abbruchbedingung erkennt. Im AppImage muss dabei
execPath auf APPIMAGE zeigen, sonst laeuft der Nachfolger in den
/tmp-Einhaengepunkt, den der Vorgaenger beim Beenden wegraeumt.

Autostart: app.setLoginItemSettings() gibt es unter Linux nicht. Das
neue Modul autostart.js kapselt die Weiche und schreibt bzw. loescht
dort ~/.config/autostart/claude-live-dashboard.desktop. Der Startbefehl
kommt aus APPIMAGE, falls gesetzt.

Ausserdem: enable-transparent-visuals fuer echte Transparenz, das
32-px-Tray-Symbol in der GNOME-Leiste, plattformabhaengige
Beschriftungen in Tray-Menue und Einstellungsdialog, AppImage- und
deb-Targets, icon.png auf 512 px (electron-builder rechnet daraus die
Linux-Groessen herunter) und start.sh als Gegenstueck zu start.cmd.

Getestet unter GNOME/Wayland: Fenster auf X11 an erwarteter Position,
gemerkte Position wird wiederhergestellt, Tray registriert sich auf
DBus, dump liest die Transkripte, beide Pakete bauen und das AppImage
startet ohne Schalter.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-22 21:52:08 +02:00