From 20528f98576ce3087cbf7651b1b5f780f8f23825 Mon Sep 17 00:00:00 2001 From: craigerl Date: Mon, 8 Jan 2024 09:34:37 -0800 Subject: [PATCH] add systemd services --- etc/systemd/ardop.service | 12 ++++++++++++ etc/systemd/autohotspot.service | 10 ++++++++++ etc/systemd/digipeater.service | 16 ++++++++++++++++ etc/systemd/digipi-boot.service | 17 +++++++++++++++++ etc/systemd/digipi-resolv.service | 13 +++++++++++++ etc/systemd/fldigi.service | 16 ++++++++++++++++ etc/systemd/gpio_redled.service | 17 +++++++++++++++++ etc/systemd/js8call.service | 16 ++++++++++++++++ etc/systemd/node.service | 16 ++++++++++++++++ etc/systemd/pat.service | 18 ++++++++++++++++++ etc/systemd/rigctld.service | 17 +++++++++++++++++ etc/systemd/sstv.service | 16 ++++++++++++++++ etc/systemd/tnc.service | 15 +++++++++++++++ etc/systemd/tnc300b.service | 18 ++++++++++++++++++ etc/systemd/webchat.service | 18 ++++++++++++++++++ etc/systemd/winlinkrms.service | 21 +++++++++++++++++++++ etc/systemd/wsjtx.service | 15 +++++++++++++++ 17 files changed, 271 insertions(+) create mode 100644 etc/systemd/ardop.service create mode 100644 etc/systemd/autohotspot.service create mode 100644 etc/systemd/digipeater.service create mode 100644 etc/systemd/digipi-boot.service create mode 100644 etc/systemd/digipi-resolv.service create mode 100644 etc/systemd/fldigi.service create mode 100644 etc/systemd/gpio_redled.service create mode 100644 etc/systemd/js8call.service create mode 100644 etc/systemd/node.service create mode 100644 etc/systemd/pat.service create mode 100644 etc/systemd/rigctld.service create mode 100644 etc/systemd/sstv.service create mode 100644 etc/systemd/tnc.service create mode 100644 etc/systemd/tnc300b.service create mode 100644 etc/systemd/webchat.service create mode 100644 etc/systemd/winlinkrms.service create mode 100644 etc/systemd/wsjtx.service diff --git a/etc/systemd/ardop.service b/etc/systemd/ardop.service new file mode 100644 index 0000000..912e769 --- /dev/null +++ b/etc/systemd/ardop.service @@ -0,0 +1,12 @@ +[Unit] +Description=ardopc - ARDOP softmodem for pi +After=network.target sound.target + +[Service] +ExecStartPre=+systemctl stop fldigi sstv wsjtx tnc300b digipeater tnc node js8call +ExecStart=/home/pi/ardop.sh +User=pi +Restart=no + +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/autohotspot.service b/etc/systemd/autohotspot.service new file mode 100644 index 0000000..7d675c5 --- /dev/null +++ b/etc/systemd/autohotspot.service @@ -0,0 +1,10 @@ +[Unit] +Description=Automatically generates an internet Hotspot when a valid ssid is not in range +After=multi-user.target +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStartPre=sleep 30 +ExecStart=/usr/local/bin/digihotspot.sh +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/digipeater.service b/etc/systemd/digipeater.service new file mode 100644 index 0000000..e29f6ad --- /dev/null +++ b/etc/systemd/digipeater.service @@ -0,0 +1,16 @@ +[Unit] +Description=digipeater + +[Service] +ExecStartPre=+systemctl stop fldigi sstv wsjtx ardop tnc300b tnc node winlinkrms pat js8call +ExecStart=/home/pi/direwolf.digipeater.sh +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi +TimeoutStopSec=3 +#KillSignal=SIGKILL + +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/digipi-boot.service b/etc/systemd/digipi-boot.service new file mode 100644 index 0000000..91f99ef --- /dev/null +++ b/etc/systemd/digipi-boot.service @@ -0,0 +1,17 @@ +[Unit] +Description=DigiPi initial boot service +After=default.target + +[Service] +Type=simple +#Wait for boot process to complete, not just start +ExecStartPre=sleep 20 +#ExecStart=digipeater +#ExecStart=node +#ExecStart=winlink +ExecStart=systemctl start tnc +Restart=no + +[Install] +WantedBy=default.target + diff --git a/etc/systemd/digipi-resolv.service b/etc/systemd/digipi-resolv.service new file mode 100644 index 0000000..925c121 --- /dev/null +++ b/etc/systemd/digipi-resolv.service @@ -0,0 +1,13 @@ +[Unit] +DefaultDependencies=no +Description=Create /run/resolv.conf before networking starts +Wants=network-pre.target + +[Service] +Type=oneshot +ExecStart=/usr/bin/touch /run/resolv.conf +TimeoutSec=0 +RemainAfterExit=yes + +[Install] +RequiredBy=network-pre.target diff --git a/etc/systemd/fldigi.service b/etc/systemd/fldigi.service new file mode 100644 index 0000000..e6dbb30 --- /dev/null +++ b/etc/systemd/fldigi.service @@ -0,0 +1,16 @@ +[Unit] +Description=fldigi +#Requires=rigctld.service + +[Service] +ExecStartPre=+systemctl stop tnc sstv wsjtx ardop tnc300b digipeater node winlinkrms pat js8call +ExecStart=/home/pi/fldigi.sh +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi +TimeoutStopSec=3 + +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/gpio_redled.service b/etc/systemd/gpio_redled.service new file mode 100644 index 0000000..407b4c6 --- /dev/null +++ b/etc/systemd/gpio_redled.service @@ -0,0 +1,17 @@ +[Unit] +Description=gpio_redled +#After=ardop +#Before=network.target + + +[Service] +ExecStart=/home/pi/gpio_redled.py +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi + + +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/js8call.service b/etc/systemd/js8call.service new file mode 100644 index 0000000..d879c71 --- /dev/null +++ b/etc/systemd/js8call.service @@ -0,0 +1,16 @@ +[Unit] +Description=js8call +#Requires=rigctld.service + +[Service] +ExecStartPre=+systemctl stop fldigi tnc sstv wsjtx ardop tnc300b digipeater node winlinkrms pat +ExecStart=/home/pi/js8call.sh +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi +TimeoutStopSec=3 + +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/node.service b/etc/systemd/node.service new file mode 100644 index 0000000..dae7af2 --- /dev/null +++ b/etc/systemd/node.service @@ -0,0 +1,16 @@ +[Unit] +Description=node + +[Service] +ExecStartPre=+systemctl stop tnc fldigi sstv wsjtx ardop tnc300b digipeater winlinkrms js8call +ExecStart=/home/pi/direwolf.node.sh +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi +TimeoutStopSec=3 +KillSignal=SIGINT + +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/pat.service b/etc/systemd/pat.service new file mode 100644 index 0000000..12c5ad9 --- /dev/null +++ b/etc/systemd/pat.service @@ -0,0 +1,18 @@ +[Unit] +Description=pat +Requires=rigctld.service + +[Service] +ExecStartPre=+systemctl stop fldigi sstv wsjtx tnc300b digipeater js8call +ExecStartPre=sleep 1 +#ExecStart=/usr/bin/pat-winlink http +ExecStart=/usr/bin/pat http +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi + + +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/rigctld.service b/etc/systemd/rigctld.service new file mode 100644 index 0000000..55e8de1 --- /dev/null +++ b/etc/systemd/rigctld.service @@ -0,0 +1,17 @@ +[Unit] +Description=rigctld +#Before=pat + + +[Service] +ExecStart=/usr/bin/rigctld -m 3085 -r /dev/ttyACM0 -s 115200 +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi + + +[Install] +WantedBy=multi-user.target +WantedBy=pat diff --git a/etc/systemd/sstv.service b/etc/systemd/sstv.service new file mode 100644 index 0000000..e33d7c2 --- /dev/null +++ b/etc/systemd/sstv.service @@ -0,0 +1,16 @@ +[Unit] +Description=sstv + +[Service] +ExecStartPre=+systemctl stop tnc fldigi wsjtx ardop tnc300b digipeater node winlinkrms pat js8call +ExecStart=/home/pi/sstv.sh +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi +TimeoutStopSec=3 + +[Install] +WantedBy=multi-user.target + diff --git a/etc/systemd/tnc.service b/etc/systemd/tnc.service new file mode 100644 index 0000000..06c60f7 --- /dev/null +++ b/etc/systemd/tnc.service @@ -0,0 +1,15 @@ +[Unit] +Description=tnc +After=graphical.target + +[Service] +ExecStartPre=+systemctl stop fldigi sstv wsjtx ardop tnc300b digipeater node winlinkrms js8call +Type=simple +ExecStart=/home/pi/direwolf.tnc.sh +Restart=no +WorkingDirectory=/home/pi/ +User=pi + +[Install] +WantedBy=graphical.target + diff --git a/etc/systemd/tnc300b.service b/etc/systemd/tnc300b.service new file mode 100644 index 0000000..cc87670 --- /dev/null +++ b/etc/systemd/tnc300b.service @@ -0,0 +1,18 @@ +[Unit] +Description=tnc +After=network.target sound.target + +[Service] +ExecStartPre=+systemctl stop fldigi sstv wsjtx ardop digipeater tnc winlinkrms node js8call +ExecStart=/home/pi/direwolf.tnc300b.sh +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi +TimeoutStopSec=3 + + +[Install] +WantedBy=multi-user.target + diff --git a/etc/systemd/webchat.service b/etc/systemd/webchat.service new file mode 100644 index 0000000..30f0e35 --- /dev/null +++ b/etc/systemd/webchat.service @@ -0,0 +1,18 @@ +[Unit] +Description=webchat +Requires=tnc.service + +[Service] +ExecStartPre=sleep 1 +ExecStart=/home/pi/webchat.sh +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +#Environment=FLASK_CONFIG=development +#Environment=FLASK_ENV=development +Restart=no +User=pi +KillSignal=SIGINT + +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/winlinkrms.service b/etc/systemd/winlinkrms.service new file mode 100644 index 0000000..9eca4be --- /dev/null +++ b/etc/systemd/winlinkrms.service @@ -0,0 +1,21 @@ +[Unit] +Description=winlinkrms +Conflicts=fldigi.service sstv.service wsjtx.service tnc300b.service digipeater.service tnc.service node.service + + +[Service] +ExecStartPre=+systemctl stop fldigi sstv wsjtx tnc300b digipeater tnc node js8call +ExecStart=/home/pi/direwolf.winlink.sh +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi +TimeoutStopSec=3 +#KillSignal=SIGKILL + + + + +[Install] +WantedBy=multi-user.target diff --git a/etc/systemd/wsjtx.service b/etc/systemd/wsjtx.service new file mode 100644 index 0000000..9e93331 --- /dev/null +++ b/etc/systemd/wsjtx.service @@ -0,0 +1,15 @@ +[Unit] +Description=wsjtx + +[Service] +ExecStartPre=+systemctl stop tnc fldigi sstv ardop tnc300b digipeater node winlinkrms pat js8call +ExecStart=/home/pi/wsjtx.sh +WorkingDirectory=/home/pi/ +StandardOutput=inherit +StandardError=inherit +Restart=no +User=pi +TimeoutStopSec=3 + +[Install] +WantedBy=multi-user.target