Repository navigation
fix(snap): only enable gateway user service for one user - #4615
Conversation
Signed-off-by: Oliver Calder <oliver.calder@canonical.com>
Signed-off-by: Oliver Calder <oliver.calder@canonical.com>
|
/ok to test a6782b0 |
TaylorMutch
left a comment
There was a problem hiding this comment.
The fresh-install path looks consistent with the native packages, but the upgrade path needs a migration before merging.
Existing user-mode installations already have the gateway globally enabled. Removing snapctl start --enable from snap/hooks/configure prevents future enablement, but does not clear that existing state. Meanwhile, snap/hooks/post-refresh immediately exits for gateway-mode=user. Users upgrading from an affected revision can therefore retain the same competing gateway startups reported in #4614.
Please add an explicit migration to the selected-user model and an upgrade test starting from a globally enabled revision. The new second-user canary covers fresh installation only.
The focused installer, packaging, wrapper, and snap-hook tests pass. I have not verified a live Ubuntu snap installation or upgrade.
|
Alternatively @olivercalder we can acknowledge this is for new installs if we aren't concerned about upgrades, but I just want to understand the impact before we declare that. |
Compatibility review (advisory)New or updated breaking changes; see the full report for all findings. 1. configuration — No explicit risk acceptance found
Review details
Advisory review; publication gates are unchanged. |
Ideally, the So I'm inclined to put this in the documentation rather than try to add some complicated migration workaround that we then have to live with. Doing something in |
|
Okay sounds ok to me then @olivercalder ! |
|
Let me push a small comment about this... |
Signed-off-by: Oliver Calder <oliver.calder@canonical.com>
|
/ok to test 32da1c6 |
Summary
The snap currently enables the gateway user service globally, while the .deb and .rpm require manually enabling it for a single target user. This means that snap users can have issues if there are multiple users logged in or the
greetersession takes several seconds to stop services after a user logs in. So make the snap match the other packaging formats.Related Issue
Closes #4614
Changes
systemctl --usercontrolinstall.shmanually enable the gateway user service for the target user, like it does for other packaging formatssnapcraft.yamldescription (snap info) to explain thisTesting
Checklist