naxalnet gets stopped at boot in GNOME #21
Labels
No Label
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No Milestone
No project
No Assignees
1 Participants
Notifications
Total Time Spent: 2 hours 22 minutes
Due Date
pranav
2 hours 22 minutes
No due date set.
Depends on
#22 fix for issue #21
pranav/pybatmesh
Reference: pranav/pybatmesh#21
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
naxalnet.service
gets stopped when it is enabled.It is caused when
geoclue.service
is started by gnome-shell. geoclue in turn starts wpa_supplicant, which conflicts with naxalnet and therefore systemd stops naxalnet.Here is some data from the systemd journal:
This does not occur when I mask
wpa_supplicant.service
I added a temporary fix in the README. See the commit referenced above
I'm working on a fix by adding a
Conflicts=wpa_supplicant.service
line to iwd.service and removing the same from naxalnet.service. This will cause naxalnet to exit with an error, which will make systemd restart naxalnet again.Added a sleep(2) to the setup_device function. When iwd is stopped, it signals interface removed to naxalnet. naxalnet tries to reload the wireless configuration and exits with error because iwd is stopped. This makes systemd restart naxalnet and it lives on happily ever after :)
Unfortunately, this could cause some problem with
NetworkManager
when iwd is used as the backend instead of wpa_supplicant.Maybe we could revert the sleep(2) and add
ExecStartPost=systemctl try-restart naxalnet.service
to wpa_supplicant.serviceOr, we could revert the commits and just remove the
Conflicts=wpa_supplicant.service
from naxalnet.service, thus saving the complexity of maintaining service overrides and preventing other conflicts. Anyway, on a machine used by non-devs, only NetworkManager configures wpa_supplicant, not some other program. Since NetworkManager conflicts with naxalnet, it will be stopped when naxalnet starts. And geoclue does not configure any wifi connections with wpa_supplicant, so we are probably better off without theConflicts=wpa_supplicant.service
lineDeleted all the overrides and just removed all references to wpa_supplicant from naxalnet.service.
naxalnet is supposed to create a mesh without too much configuration from the non-hacker. And the non-hacker probably won't have any wpa_supplicant config files configured (the wifi is probably setup by NetworkManager via D-Bus). So we assume starting wpa_supplicant without starting NetworkManager won't cause any harm (are we confused yet?)
Finished. I'll make a new minor release