Add Debian .deb package support

- debian/control, changelog, conffiles — package metadata
- debian/postinst — creates irc-bot system user, installs Python venv,
  symlinks runtime dirs, enables systemd services
- debian/prerm/postrm — clean stop/uninstall with purge support
- debian/systemd/ — hardened systemd units for bot and portal
- build_deb.sh — assembles and builds the .deb via dpkg-deb
- Path resolver in irc_client.py, memory.py, config_manager.py, portal/app.py:
  uses /etc/irc-bot + /var/lib/irc-bot when installed as .deb, relative
  paths otherwise (Docker/venv unchanged)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
tocmo0nlord
2026-04-17 22:16:05 -04:00
parent b154f63cfa
commit ff3f6fe05b
13 changed files with 302 additions and 18 deletions

14
debian/prerm vendored Normal file
View File

@@ -0,0 +1,14 @@
#!/bin/bash
set -e
case "$1" in
remove|upgrade|deconfigure)
if [ -d /run/systemd/system ]; then
systemctl stop irc-bot-portal.service 2>/dev/null || true
systemctl stop irc-bot.service 2>/dev/null || true
systemctl disable irc-bot.service irc-bot-portal.service 2>/dev/null || true
fi
;;
esac
exit 0