Skip to content
Commit 3b126b4a authored by intrigeri's avatar intrigeri
Browse files

Migrate tails-unblock-network to a systemd service, that handles starting NetworkManager.

In the current state of things, this change merely speeds up login a bit since
this allows us to start this service in a non-blocking way in Tails Greeter,
without losing the ability to retrieve its status and output later.

That's the first step towards Will-fix: #8327.

Also, we move the "start NetworkManager as soon as the network is unblocked"
logic to tails-unblock-network.service.

Previously, /usr/local/sbin/tails-unblock-network (started by
tails-unblock-network.service) would manually start NetworkManager services.
This feels ugly, since it encodes systemd unit ordering in /usr/local/sbin/,
while it really belongs to the unit files themselves.

So, we use:

 * Requires= to trigger the startup of the NM services;
 * Before= to ensure that said startup only happens once the network
   has been unblocked.

Note that tails-unblock-network.service is *not* WantedBy multi-user.target.
Otherwise, it would try to start on boot before the user has had the chance to
opt-out from MAC spoofing. And then it would fail, since its EnvironmentFile
(/var/lib/gdm3/tails.physical_security) does not exist yet.
parent 766c262f
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment