aboutsummaryrefslogtreecommitdiffstats
path: root/packaging/systemd/meshbay-node.service
diff options
context:
space:
mode:
Diffstat (limited to 'packaging/systemd/meshbay-node.service')
-rw-r--r--packaging/systemd/meshbay-node.service29
1 files changed, 29 insertions, 0 deletions
diff --git a/packaging/systemd/meshbay-node.service b/packaging/systemd/meshbay-node.service
new file mode 100644
index 0000000..e64934f
--- /dev/null
+++ b/packaging/systemd/meshbay-node.service
@@ -0,0 +1,29 @@
+[Unit]
+Description=MeshBay Node — local file host and streaming server
+Documentation=https://meshbay.org/docs
+After=network-online.target
+Wants=network-online.target
+
+[Service]
+Type=simple
+User=%i
+Group=%i
+
+# Per-user service: systemctl enable --now meshbay-node@$USER
+WorkingDirectory=%h
+
+# Override unlock mode in ~/.config/meshbay/hub.env
+EnvironmentFile=-%h/.config/meshbay/node.env
+# Alternative: MESHBAY_UNLOCK_KEY=<password> in environment file (chmod 600)
+
+ExecStart=/usr/bin/meshbay-node --config %h/.config/meshbay/node.toml
+Restart=on-failure
+RestartSec=10
+TimeoutStopSec=30
+
+# Security hardening
+NoNewPrivileges=true
+PrivateTmp=true
+
+[Install]
+WantedBy=default.target