You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Build and distribute the app + gateway daemon as a Debian package (.deb) so the Raspberry Pi (and other Debian/Ubuntu hosts) can install/upgrade it cleanly instead of the current rsync + manual rebuild + service-setup flow.
Motivation
The Pi is currently deployed by rsync from the laptop, then a manual rebuild and a hand-rolled systemd setup via gateway/install.sh (see README). A .deb gives versioned install/upgrade/remove, dependency declaration, and proper service registration through the standard package manager — and pairs naturally with the in-app updater (#13).
What the package should do
Install the built GUI (dist/) and the gateway daemon.
Install/enable the plotter-gatewaysystemd service (replacing the manual setup in gateway/install.sh).
Declare runtime dependencies (Node, serial access / dialout group, udev rule for a stable device path).
Apply the always-on power profile and mDNS bits currently handled by the installer, where appropriate.
Carry a real version so install/upgrade/remove behave correctly.
Acceptance criteria
A repeatable build produces a versioned .deb.
Installing the .deb on the Pi sets up the GUI, daemon, and systemd service.
Dependencies (Node, serial access, udev rule) are declared/handled by the package.
Upgrading via the package preserves persisted state (plotter state, settings).
Removing the package cleans up the service.
Notes
Fold in the logic from gateway/install.sh (service unit, dialout membership, udev rule, power profile, mDNS).
The native serialport binding must build/ship correctly for the Pi architecture (arm).
Shipped in v1.0.0: the daemon + GUI are packaged as penplotter271__arm64.deb by the release workflow (packaging/, nfpm) and installed on the Pi with apt. See the README deployment section.
Activity
BernardJen commentedon Sep 8, 2026
Shipped in v1.0.0: the daemon + GUI are packaged as penplotter271__arm64.deb by the release workflow (packaging/, nfpm) and installed on the Pi with apt. See the README deployment section.