One command.
Three binaries, verified.
The installer downloads a published portable CLI archive from GitHub
Releases, detects x86-64 or ARM64 (aarch64), checks the
archive’s SHA-256 digest, ELF architecture and runtime
compatibility, then installs xretractor, xqry
and xtrdb. A systemd service is available on request.
*-portable.tar.gz archive for your CPU ·
run list to check; until those archives are added, the list is empty
Checks first, installs second, keeps what is yours
Checked
SHA-256 digest, ELF architecture and runtime compatibility are verified before anything is installed. On an ARM 32-bit host, a musl-based distribution, or a host with an older glibc/libstdc++ than the release requires, the check stops and shows the cause — such hosts may need a dedicated build.
Configured
The archive includes a retractor.toml with safe default settings. It is copied to /etc/retractor/retractor.toml for a system install, or to ~/.config/retractor/retractor.toml (or XDG_CONFIG_HOME) for a user install — only when absent. xretractor reads it at startup, including as a service.
Preserved
Upgrades and removal keep local configuration, query files and the service account. The installer only removes binaries and the unit it created. The shipped storage.dir line stays commented until you create a writable storage directory.
Run xretractor as a system service
Add --service to a system install if this host runs
systemd. The installer creates the retractor service
account and an empty /etc/retractor/startup.rql when
absent — the empty file starts the engine in idle mode. Existing
query and configuration files are left untouched. For a service, the
install path must be owned by root and not writable by other users.
Pick a version, upgrade, check, remove
The default is the newest stable release with an archive for your
CPU. upgrade can also take --version.
For a custom directory, use --prefix /absolute/path and
supply the same prefix when upgrading or removing. If both user and
system installations exist, the installer asks which one to manage.
Read the script, then run it
Prefer a distribution-managed service?
Use the .deb from
GitHub Releases
through apt. It installs into /usr/bin and
enables the service for the next boot. Manage upgrades and removal
with apt as well; the portable installer does not manage
Debian packages.
Do not install both service variants on one host: they use the same unit name.