fireflo-panel-install.
The five verbs
“Packages” means the installer’s own dependencies, not the services FireFlo talks to. It installs
curl, openssl, rsync, python3 and the PostgreSQL client — never a PostgreSQL server,
never a broker, and never Node. On a bare host, run
setup.sh first.There is no
uninstall verb. Removal is manual, and a tenant is more units than it looks:
the gateway writes fireflo-<name>.service plus a -logclean.timer and -logclean.service pair.Options worth knowing
Layout and identity
Both generated units mount a tmpfs over
/home and bind only the one virtualhost back in, so a
gateway cannot see any other customer’s home directory. That is a namespace, not a permission: the
directory’s own mode still decides who may enter it, which is why --user matters above.
Every flag takes a space-separated value.
--vhost=/home/acme is rejected as an unknown option
rather than parsed.Configuration and database
Behaviour
Running it
--dry-run shows less than you might expect. It cannot report what a package manager would pull
in, or what a migration would find in a database it has not connected to. Read it as “the decisions
this script would make”, not “everything that would change on this host”.What it does not install
The control panel. That isfireflo-panel-install, and on a fresh host you run both.
--log-retain-days installs a daily systemd timer that deletes rotated logs, never touching the five
live ones. Installing by hand means arranging that yourself — see Logging.
See Install in one command for the walkthrough.