Appearance
Uninstall
Two flavors: .deb uninstall (managed by dpkg/apt) and wrapper uninstall (manual). Both leave <host-home> intact unless you explicitly remove it. The home is a normal directory; nothing in it holds the OS hostage.
.deb uninstall
Remove (keeps home)
bash
sudo apt remove hivecastThe prerm script (projects/matrix-3/packages/hivecast/scripts/build-deb-installer.js:168-179) runs:
systemctl stop hivecast-host.service hivecast-nats.servicesystemctl disable hivecast-host.service hivecast-nats.service
Then dpkg removes:
/opt/hivecast//usr/bin/hivecast,/usr/bin/matrix/lib/systemd/system/hivecast-{host,nats}.service
What survives:
/var/lib/hivecast/— the entire home, including JetStream data, credentials, runtime records./etc/systemd/system/hivecast-{host,nats}.service.d/— drop-in overrides if you had a workstation-user override./etc/systemd/journald.conf.d/hivecast.conf— the journald cap.
Purge (removes home + cleanup)
bash
sudo apt purge hivecastThe postrm script (build-deb-installer.js:180-195) runs on purge:
- Removes
/etc/systemd/system/hivecast-{nats,host}.service.d/10-workstation-user.confand the empty drop-in directories. - Removes
/etc/systemd/journald.conf.d/hivecast.conf. systemctl daemon-reload.
apt purge does not automatically remove /var/lib/hivecast. You have to do that yourself if you want a clean wipe:
bash
sudo rm -rf /var/lib/hivecast
sudo systemctl restart systemd-journald # apply the journald conf changeIt also does not remove the hivecast system user/group. To remove those:
bash
sudo deluser hivecast
sudo delgroup hivecastWrapper uninstall
The wrapper has no built-in uninstaller. The procedure is:
bash
HOST_HOME=/path/to/host-home
# 1. Stop the Host (also stops the NATS sibling).
hivecast stop --home "$HOST_HOME" 2>/dev/null || true
# 2. Remove the home (or move it aside if you might want to restore).
rm -rf "$HOST_HOME"
# 3. Uninstall the wrapper itself.
npm uninstall -g hivecastThere are no system-level resources to clean up beyond the npm-global files; the wrapper does not register systemd units, launchd plists, Windows services, or any global configuration.
Container uninstall
bash
docker compose down
docker volume rm <volume-with-host-home> # if used named volumes
sudo rm -rf ./credentials # the bind-mounted creds
docker rmi <hivecast-worker-image> # if you don't want the image cachedThe docker-compose.yml shipped at projects/matrix-worker/ uses bind mounts (no named volumes), so the only persistent state is in projects/matrix-worker/credentials/.
What an uninstall removes from HiveCast cloud
If the Host had a Device Link, the uninstall does not automatically revoke it on the cloud side. The cloud will eventually mark the Device stale (no heartbeats), but the link record persists.
To revoke explicitly before uninstalling:
bash
hivecast logout --home "$HOST_HOME" --revoke-cloud-linkThis calls <cloudUrl>/_auth/host-link/revoke with the Host Link token, then clears the local link record. After uninstall, the Device disappears from the cloud's Devices page.
If you forget and uninstall first, you can revoke via the cloud's Devices UI directly — the local link record is no longer needed.
Verifying a clean uninstall
bash
# .deb
dpkg -l | grep hivecast # should be empty
systemctl list-unit-files | grep hivecast # should be empty
ls /var/lib/hivecast 2>/dev/null # only if you wanted to remove
# wrapper
which hivecast 2>/dev/null
npm list -g | grep hivecastSee also
- Backup — back up before uninstall if you might want to restore later.
- Linux systemd
- Local install