GenerateSaaS

Updating

OpenCompanion auto-updates by default - staged, checksum-verified, and applied only while idle. Update on demand, check without changing anything, pin a version, roll back, or point at a mirror.

OpenCompanion updates itself by default. The always-on daemon checks the release channel when it starts and every six hours or so (with some jitter). When a newer version is available it stages it off the hot path - downloads the artifact, verifies its SHA256SUMS checksum, and sanity-runs the staged binary - then waits until the daemon is idle to apply it. Applying flips the current pointer to the new version and the service restarts on it. A run in flight is never interrupted.

Because the previous version is kept in place, an update is instantly reversible - see rollback below.

Update on demand

opencompanion update

Stages, verifies, flips to, and restarts on the latest release. It is a no-op when you are already current.

Check without changing anything

opencompanion update --check

Prints the installed version, the latest available version, and whether auto-update is on. It changes nothing and exits non-zero if it could not reach the release server.

Pin a version (turn auto-update off)

opencompanion update --auto off     # stop self-updating; stay on the current version
opencompanion update --auto on      # resume self-updating (the default)

With auto-update off, the daemon still checks and the app can still badge that an update is waiting, but it never stages or applies one. You update on your schedule with opencompanion update.

Roll back

opencompanion update --rollback

Flips current back to the newest previously installed version and restarts on it. OpenCompanion keeps the active version and the most recent other one, so there is always exactly one version to roll back to after an update.

Fetch from a mirror

Set OPENCOMPANION_RELEASE_BASE to fetch releases from somewhere other than the default GitHub download URL - useful behind a firewall or an internal mirror. It applies to the installer, opencompanion update, and the daemon's auto-update alike.

Major versions

Major releases ship dual-stack: a daemon that auto-updates across a major boundary keeps speaking to an app still on the older protocol, so an update never silently breaks a pairing.

On this page