Comment 14 for bug 1983528

Revision history for this message
James Henstridge (jamesh) wrote (last edit ):

From IRC conversation, this was one hypothesis:

1. when the system boots for OEM configuration, it boots to the oem-config.target systemd target rather than multi-user.target.

2. the systemd mount units that snapd generates only set WantedBy=multi-user.target, so they are not started at this point. While they set Before=snapd.service, that only orders things if both the mount unit and snapd.service are to be started.

3. The Ubuntu desktop now ships the snapd-desktop-integration snap, which includes a user session service. This is active during the OEM config desktop session.

4. the snapd-desktop-integration user session service hits the /run/snapd-snap.socket REST API socket to check whether the snaps corresponding to the current desktop theme are installed, which will cause snapd to start without the mount units (so the Before= directive does nothing).

There's an obvious hole in this hypothesis though: if the snaps haven't been mounted, how could snapd-desktop-integration even start?

Could the mount units have been shut down after the user session service started?