pybatmesh/naxalnet.service
Pranav Jerry 2e4c3a70a4
cleanup before exit
This was previously done by the systemd service. But since we allowed
changing the name of bat0 and bridge0, we can't expect systemd to still
do that job. Commented out some lines in the systemd service and made it
send SIGINT instead of the default SIGTERM to kill naxalnet. I
accidentally used to increment a2, a3, a4, ... in the __version__
instead of dev1, dev2, &c. a few commits back. Removed some print()
lines lurking somewhere in the code. The cleanup is still not completed.
We still have to delete the interfaces bridge0 and bat0, or whatever
name the user gives it. Just out of boredom, I added some description to
some network configuration, though so I doubt if anyone will understand
it more because of that.
2021-09-27 22:30:07 +05:30

42 lines
1.3 KiB
Desktop File

# 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
KillSignal=SIGINT
# 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