diff options
Diffstat (limited to 'packaging/deb/meshbay-hub')
| -rw-r--r-- | packaging/deb/meshbay-hub/DEBIAN/control | 19 | ||||
| -rw-r--r-- | packaging/deb/meshbay-hub/DEBIAN/postinst | 29 |
2 files changed, 48 insertions, 0 deletions
diff --git a/packaging/deb/meshbay-hub/DEBIAN/control b/packaging/deb/meshbay-hub/DEBIAN/control new file mode 100644 index 0000000..cd4a2de --- /dev/null +++ b/packaging/deb/meshbay-hub/DEBIAN/control @@ -0,0 +1,19 @@ +Package: meshbay-hub +Version: 0.1.0 +Section: net +Priority: optional +Architecture: all +Maintainer: MeshBay Team <team@meshbay.org> +Homepage: https://meshbay.org +Depends: python3 (>= 3.12), + python3-meshbay-common (= 0.1.0), + postgresql, + python3-fastapi, + python3-uvicorn, + adduser +Recommends: caddy +Description: MeshBay Hub — identity authority and group registry server + MeshBay Hub provides user registration, JWT issuance, group management, + GEK bundle distribution, revocation, and moderation for MeshBay networks. + . + Runs as a systemd service behind Caddy for HTTPS (auto Let's Encrypt). diff --git a/packaging/deb/meshbay-hub/DEBIAN/postinst b/packaging/deb/meshbay-hub/DEBIAN/postinst new file mode 100644 index 0000000..48921f2 --- /dev/null +++ b/packaging/deb/meshbay-hub/DEBIAN/postinst @@ -0,0 +1,29 @@ +#!/bin/sh +set -e + +case "$1" in + configure) + # Create service account + if ! getent group meshbay >/dev/null 2>&1; then + addgroup --system meshbay + fi + if ! getent passwd meshbay >/dev/null 2>&1; then + adduser --system --ingroup meshbay --home /var/lib/meshbay \ + --no-create-home --disabled-password \ + --gecos "MeshBay service account" meshbay + fi + + # Create data directory + install -d -o meshbay -g meshbay -m 750 /var/lib/meshbay/hub + install -d -o meshbay -g meshbay -m 750 /var/log/meshbay + + # Enable and start service + if [ -d /run/systemd/system ]; then + systemctl daemon-reload || true + systemctl enable meshbay-hub.service || true + systemctl start meshbay-hub.service || true + fi + ;; +esac + +#DEBHELPER# |