Files
gnome-jarvis/docs/MIGRATIONS.md
T
snxraven 390b2fa098
Rolling release / release (push) Successful in 6m40s
Updates
2026-09-12 14:45:04 -04:00

2.1 KiB

Migration notes

The user installer keeps application files in ~/.local/share/jarvis-qvac, the service in ~/.config/systemd/user/jarvisd.service, and the generated QVAC config in ~/.config/jarvis/qvac.config.json. Memory, voice references, audit logs, and generated media remain under their existing Jarvis data directories.

Upgrades stop a running jarvisd.service, uninstall the previous GNOME extension, and replace ~/.local/share/jarvis-qvac from a staging directory so leftover files from older versions cannot mix with the new tree. Failed staging directories next to the install prefix are removed first. Existing config and data under ~/.config/jarvis, ~/.local/share/jarvis, and the model cache are preserved. If the service was running, the installer restarts it after the replacement; --enable also enables the unit. The GNOME HUD files are always copied into ~/.local/share/gnome-shell/extensions/[email protected], then the installer asks Shell to enable the extension. That request does not always hot-reload a stylesheet or JS error on GNOME 50 (ReloadExtension is not implemented). Disable then enable [email protected] on org.gnome.Shell, or start a new session, if the panel HUD does not come back. Each of those steps is appended to ~/.local/state/jarvis/install.log (or $XDG_STATE_HOME/jarvis/install.log) and to the system log as tag jarvis-install. Run systemctl --user daemon-reload only when you install the service file by hand.

The uninstall command requires --yes and preserves data. Add --purge-data only when the user explicitly wants Jarvis-owned memory, cache, and generated media removed.

Shared settings and configurable speech

The GNOME preferences and standalone Control Center now share one window. Daemon controls use config.json; only appearance and shortcuts use GSettings. Opening preferences no longer copies GSettings defaults over JSON values. Legacy snake_case settings and explicit GSettings customizations migrate when you press Apply. See settings for keys, application timing, model compatibility, and controls that were removed because they had no working backend.