Install problems
The installer fails, antivirus blocks it, or the machine never appears afterwards — per-OS causes and the fixes that actually work.
It installed, but the machine never appeared
The token was already used
Enrollment tokens are single-use. If an earlier attempt got far enough to enroll, the token is spent and the retry fails. Mint a fresh one.
The wrong server
If you are self-hosting, the machine must be pointed at your server. A script served by your own instance names your origin automatically — but a command copied from elsewhere may not.
roomler status # which server does it think it belongs to?It cannot reach the server
The agent needs outbound HTTPS and no inbound ports. From the machine:
curl -sI https://roomler.ai/healthFailing here is a network problem — proxy, firewall, DNS or captive portal.
Antivirus or endpoint protection blocked it
Installers are served through the product's own origin for exactly this reason
Downloads come from roomler.ai (or your own server) rather than from GitHub,
so a corporate allow-list only has to trust one hostname. If yours blocks the
download, allow-list that origin and retry.
Every Windows binary is Authenticode-signed by G ROX LTD, and Linux/macOS artifacts carry GPG signatures and build provenance — useful evidence when asking a security team for an exception. See signed releases.
Per-OS
“Access denied” partway through. A machine-wide install registers a Windows service and needs administrator rights. Run from an elevated PowerShell.
Installed, but not reachable at the lock screen. That is the service mode,
not a failure. Re-install with -Role daemon-system.
A previous version will not uninstall. Remove it from Settings → Apps and retry. If a manually-registered service is in the way:
roomlerd service uninstallThe Mac shows as two devices. Expected — the root half is its own enrollment. See Install on macOS.
The Mac is missing from roomler peers entirely. You installed the user half
only. Add the root half by re-running with a second token as --daemon-token.
Everything installed, screen is wallpaper. A privacy grant, not an install problem — see black screen.
“daemon not running”. You are probably talking to the wrong half. Try with
and without sudo.
Installed, but shows offline. Check the unit is enabled and that the machine has outbound HTTPS:
pgrep -x roomlerd
journalctl -u roomler -n 50 --no-pagerDo not judge by `systemctl is-active` alone
A perfectly healthy daemon can be one systemd does not own, and is-active then
reports inactive. Check pgrep and roomler peers before restarting
anything.
A restart loop. Look for two enabled units trying to run the same agent. The tell is a service perpetually in an auto-restarting sub-state.
Manual package install seemed to do nothing. dpkg -i replaces the file
without restarting the service — so the version command reports the new build
while the old one is still running. Restart the unit.
Uninstalling cleanly
Each OS has its own steps on its install page. Two things people forget:
- Remove the device in the dashboard. That is what revokes the credential and releases the mesh address.
- On macOS, clear the privacy grants. They are bound to the binary you deleted, so a fresh install otherwise shows a toggle that is on but attached to nothing.