pybatmesh/naxalnet.service

41 lines
1.3 KiB
SYSTEMD

# The naxalnet systemd service
# See man:systemd.service(5) and man:systemd.unit(5)
# before editing this file.
[Unit]
Description=Setup mesh networks
Requires=systemd-networkd.service
Requires=iwd.service
Wants=systemd-resolved.service
After=iwd.service
After=systemd-networkd.service
After=systemd-resolved.service
# Stops NetworkManager and wpa_supplicant if already running
Conflicts=NetworkManager.service
Conflicts=wpa_supplicant.service
# This stops networkmanager and wpa_supplicant when naxalnet is enabled
After=NetworkManager.service
After=wpa_supplicant.service
[Service]
Type=notify
NotifyAccess=all
Restart=on-failure
RestartSec=2sec
ExecStart=/usr/bin/naxalnet --systemd
# Reload systemd-networkd after naxalnet signals it is ready
ExecStartPost=/usr/bin/networkctl reload
# When naxalnet exits, delete all files starting
# with mesh.* in /run/systemd/network
ExecStopPost=/usr/bin/find /run/systemd/network -type f -delete -name "mesh.*"
# Then delete the two interfaces created...
ExecStopPost=/usr/bin/networkctl delete bridge0 bat0
# ... and reload the configuration files.
ExecStopPost=/usr/bin/networkctl reload
# naxalnet already logs to systemd journal so we don't need
# stdout and stderr.
StandardOutput=null
StandardError=null
[Install]
WantedBy=multi-user.target