1
0
dwelling-radio/init/radio.service

60 lines
1.4 KiB
Desktop File
Executable File

[Unit]
Description=Arav's dwelling / Radio
Requires=icecast.service
After=network-online.target icecast.service
[Service]
Type=simple
Restart=on-failure
DynamicUser=yes
ExecStart=/usr/bin/dwelling-radio -listen /var/run/dwelling-radio/sock \
-filelist /mnt/data/appdata/radio/filelist.html \
-playlist /mnt/data/appdata/radio/playlists/all-rand \
-fallback-song /mnt/data/appdata/radio/fallback.ogg \
-db /mnt/data/appdata/radio/statistics.db3 \
-lst-len 10
ReadOnlyPaths=/
ReadWritePaths=/mnt/data/appdata/radio
LogsDirectory=dwelling-radio
RuntimeDirectory=dwelling-radio
AmbientCapabilities=
CapabilityBoundingSet=
LockPersonality=true
MemoryDenyWriteExecute=true
NoNewPrivileges=true
PrivateDevices=true
PrivateTmp=true
PrivateUsers=true
ProcSubset=pid
ProtectClock=true
ProtectControlGroups=true
ProtectHome=true
ProtectHostname=true
ProtectKernelLogs=true
ProtectKernelModules=true
ProtectKernelTunables=true
ProtectProc=noaccess
ProtectSystem=strict
RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX
RestrictNamespaces=true
RestrictRealtime=true
RestrictSUIDSGID=true
SystemCallArchitectures=native
SystemCallFilter=~@clock
SystemCallFilter=~@cpu-emulation
SystemCallFilter=~@debug
SystemCallFilter=~@module
SystemCallFilter=~@mount
SystemCallFilter=~@obsolete
SystemCallFilter=~@privileged
SystemCallFilter=~@raw-io
SystemCallFilter=~@reboot
SystemCallFilter=~@swap
[Install]
WantedBy=multi-user.target