Files
hblink3/hblink3.service
Cort BuffingtonandClaude Opus 4.8 aae53890f7 archive: move legacy/unported modules out of the live tree
Nothing in the asyncio core imports any of these; they are moved to archive/
(history preserved) and dropped from pyproject.toml py-modules:

  * bridge_all.py -- forward-everything proxy, never ported to the asyncio core
    (imports the Twisted-era reportFactory -> ImportError today).
  * playback.py -- talkback/parrot app (connects like a repeater, plays a stream
    back). Twisted-based; earmarked to return as an OmniLink adapter.
  * play_ambe.py / mk_voice.py / voice_lib.py -- Twisted-era voice test utilities.
  * reporting_const.py -- REPORT_OPCODES for the old pickle/opcode reporting
    protocol, superseded by the NDJSON feed; it was imported but never used.

Also removes the now-dead `from reporting_const import *` (hblink.py) and the
unused REPORT_OPCODES name from bridge.py's hblink import. Docs/service updated
(README app table, INSTALL run + legacy note, hblink3.service comment,
dashboard/FIELDS.md); archive/README.md explains what's there and why. Suite
still 74/74.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-12 14:17:02 -05:00

38 lines
969 B
Desktop File

# systemd unit for the HBlink3 conference-bridge router (bridge.py).
#
# Install:
# sudo cp hblink3.service /etc/systemd/system/
# sudo systemctl daemon-reload
# sudo systemctl enable --now hblink3
#
# Adjust User/Group and the paths below to your install. bridge.py defaults to
# hblink.cfg and rules.py in its own directory; pass -c/-r in ExecStart to use
# other files. To run the protocol core standalone, point ExecStart at hblink.py
# instead.
[Unit]
Description=HBlink3 DMR Conference Bridge Router
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=cort
Group=cort
WorkingDirectory=/home/cort/hblink3
ExecStart=/home/cort/hblink3/venv/bin/python /home/cort/hblink3/bridge.py
Restart=always
RestartSec=10
# Security hardening
NoNewPrivileges=true
PrivateTmp=true
# Logging to the journal (journalctl -u hblink3)
StandardOutput=journal
StandardError=journal
SyslogIdentifier=hblink3
[Install]
WantedBy=multi-user.target