pybatmesh/naxalnet.service

39 lines
1.2 KiB
SYSTEMD
Raw Normal View History

# The naxalnet systemd service
# See man:systemd.service(5) and man:systemd.unit(5)
# before editing this file.
2021-05-10 15:15:42 +05:30
[Unit]
Description=Setup mesh networks
Requires=systemd-networkd.service
Requires=iwd.service
Wants=systemd-resolved.service
After=iwd.service
# Stops NetworkManager and wpa_supplicant if already running
Conflicts=NetworkManager.service
Conflicts=wpa_supplicant.service
After=NetworkManager.service
After=wpa_supplicant.service
2021-05-10 15:15:42 +05:30
[Service]
Type=oneshot
RemainAfterExit=yes
Restart=on-failure
RestartSec=2sec
# IWD takes some time to find devices.
# If naxalnet is run before iwd finds devices,
# naxalnet cannot start a mesh network but exits without errors.
# TODO: Remove this line when naxalnet becomes a daemon.
ExecStartPre=/usr/bin/sleep 2
2021-05-22 15:14:16 +05:30
ExecStart=/usr/bin/naxalnet
# Reload systemd-networkd after naxalnet exits
ExecStartPost=/usr/bin/systemctl reload-or-restart systemd-networkd.service
# Delete the interfaces created
ExecStopPost=/usr/bin/networkctl delete bridge0 bat0
# Make python flush messages the moment print() is called.
# Without this env variable, python stores output in a
# buffer before flushing to stdout. But this is not needed
# when naxalnet runs as a systemd service.
Environment=PYTHONUNBUFFERED=1
2021-05-10 15:15:42 +05:30
[Install]
WantedBy=multi-user.target