{ config, lib, pkgs, ... }: let direwolfConfig = pkgs.writeText "direwolf-config" '' ADEVICE plughw:Device,0 ACHANNELS 1 CHANNEL 0 MYCALL G5BSD-1 MODEM 1200 PTT CM108 3 AGWPORT 8000 KISSPORT 8001 PBEACON delay=1 every=30 overlay=S symbol="digi" lat=51^13.07N long=000^8.69W power=2 height=12 gain=4 comment="Redhill Aerodrome." via=WIDE1-1,WIDE2-1 OBEACON OBJNAME="G5BSD/R" delay=1 every=30 overlay=S symbol="repeater" lat=51^13.07N long=000^8.00W power=8 height=12 gain=4 FREQ="430.975" TONE="82.5" OFFSET="+7.6" comment="UHF Repeater" via=WIDE1-1,WIDE2-1 DIGIPEAT 0 0 ^WIDE[3-7]-[1-7]$|^TEST$ ^WIDE[12]-[12]$ TRACE IGSERVER euro.aprs2.net IGLOGIN G5BSD 12932 #PBEACON sendto=IG delay=0:30 every=60:00 symbol="igate" overlay=R lat=42^37.14N long=071^20.83W #PBEACON sendto=IG delay=0:30 every=60:00 symbol="igate" overlay=T lat=42^37.14N long=071^20.83W #IGTXVIA 0 WIDE1-1 #IGFILTER m/50 #FILTER IG 0 t/m #FILTER IG 1 t/wn IGTXLIMIT 6 10 ''; in{ systemd.services.direwolf = { enable = true; description = "direwolf digipeater"; wants = [ "network-online.target" ]; after = [ "sound.target" "syslog.target" "network-online.target" ]; serviceConfig = { #User = ""; #Group = ""; ExecStart = "${pkgs.direwolf}/bin/direwolf -t 0 -c ${direwolfConfig}"; StandardOutput = "syslog"; StandardError = "syslog"; SyslogIdentifier = "direwolf"; }; wantedBy = [ "multi-user.target" ]; }; }