debian/DEBIAN/control: package metadata, depends on python3.11+, postgresql-client debian/DEBIAN/postinst: creates activeblue-ai system user, installs venv, enables service debian/DEBIAN/prerm: stops and disables service before removal debian/DEBIAN/postrm: purge removes config, logs, venv, and system user debian/lib/systemd/system/activeblue-ai.service: - Runs as dedicated user with PrivateTmp + ProtectSystem hardening - EnvironmentFile=/etc/activeblue-ai/.env - Restart=on-failure with 5s backoff debian/usr/bin/activeblue-ai: CLI with start/stop/restart/status/logs/migrate/health/sweep/privacy/version build_deb.sh: builds activeblue-ai_X.Y.Z_all.deb in dist/ publish_repo.sh: scans packages, generates Release + checksums, optional GPG signing Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
17 lines
517 B
Bash
17 lines
517 B
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
if command -v systemctl &>/dev/null; then
|
|
if systemctl is-active --quiet activeblue-ai.service 2>/dev/null; then
|
|
systemctl stop activeblue-ai.service || true
|
|
fi
|
|
if systemctl is-enabled --quiet activeblue-ai.service 2>/dev/null; then
|
|
systemctl disable activeblue-ai.service || true
|
|
fi
|
|
systemctl daemon-reload || true
|
|
fi
|
|
|
|
echo "ActiveBlue AI service stopped."
|
|
echo "Configuration preserved in /etc/activeblue-ai/"
|
|
echo "Data preserved in /var/lib/activeblue-ai/"
|