diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-08-31 10:49:45 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-08-31 10:49:45 +0200 |
| commit | 8d5c564e75ad2928e77ea66decc979366ca5ccd5 (patch) | |
| tree | 7f88ceb2ccd838011bb2f399f148c7f9b39f75ec /packaging/deb/meshbay-hub | |
| parent | 0c2754d2d4cb1905d5e324f56fbc64e4afae526f (diff) | |
| download | meshbay-8d5c564e75ad2928e77ea66decc979366ca5ccd5.tar.gz | |
feat(packaging): 4-package .deb/.rpm build system under /opt
Shared venv architecture: meshbay-common owns the Python venv with all
pip deps pre-installed; hub and node add only their code into it.
Client is a standalone Electron app. No pip runs at install time.
- Add build scripts (packaging/build/) for common, hub, node, client
- Add orchestrator build-packages.sh with deb/rpm auto-detection
- Add .deb control/postinst for all 4 packages
- Add .rpm specs for all 4 packages (replaces python3-meshbay-common)
- Add Gnome .desktop launcher and icon resizing
- Add firewalld services (meshbay-cast, meshbay-node) and UFW profiles
- Update systemd units to use /opt/meshbay-common/venv/bin/ paths
- TMDB token baked into node package at build time via QE/node.env
- Fix package-lock.json sync for protobufjs override
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'packaging/deb/meshbay-hub')
| -rw-r--r-- | packaging/deb/meshbay-hub/DEBIAN/control | 17 | ||||
| -rw-r--r-- | packaging/deb/meshbay-hub/DEBIAN/postinst | 9 |
2 files changed, 12 insertions, 14 deletions
diff --git a/packaging/deb/meshbay-hub/DEBIAN/control b/packaging/deb/meshbay-hub/DEBIAN/control index 2f3541c..07799a1 100644 --- a/packaging/deb/meshbay-hub/DEBIAN/control +++ b/packaging/deb/meshbay-hub/DEBIAN/control @@ -1,19 +1,16 @@ Package: meshbay-hub -Version: 0.2.0 +Version: __VERSION__ Section: net Priority: optional Architecture: all Maintainer: MeshBay Team <team@meshbay.org> Homepage: https://meshbay.org -Depends: python3 (>= 3.12), - python3-meshbay-common (= 0.2.0), - postgresql, - python3-fastapi, - python3-uvicorn, - adduser -Recommends: caddy +Depends: meshbay-common (= __VERSION__), adduser +Recommends: caddy, postgresql 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. + WebRTC signaling, notifications, and moderation for MeshBay networks. . - Runs as a systemd service behind Caddy for HTTPS (auto Let's Encrypt). + Installs hub code into the shared venv at /opt/meshbay-common/venv/ and + Alembic migrations at /opt/meshbay-hub/migrations/. + Runs as a systemd service behind Caddy for HTTPS. diff --git a/packaging/deb/meshbay-hub/DEBIAN/postinst b/packaging/deb/meshbay-hub/DEBIAN/postinst index 48921f2..3cf66a9 100644 --- a/packaging/deb/meshbay-hub/DEBIAN/postinst +++ b/packaging/deb/meshbay-hub/DEBIAN/postinst @@ -13,15 +13,16 @@ case "$1" in --gecos "MeshBay service account" meshbay fi - # Create data directory + # Create data and log directories 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 + # Create config directory (files are placed by the admin, not by us) + install -d -m 755 /etc/meshbay + + # Reload systemd if available if [ -d /run/systemd/system ]; then systemctl daemon-reload || true - systemctl enable meshbay-hub.service || true - systemctl start meshbay-hub.service || true fi ;; esac |