PolicyKit doesn't work inside snaps, preventing snap installation in unity8
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical System Image |
Confirmed
|
Critical
|
Thomas Voß | ||
Snappy |
Won't Fix
|
Undecided
|
Unassigned | ||
Unity8 Session Snap |
Confirmed
|
Critical
|
Unassigned | ||
snapd-glib |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
In the unity8-session snap, we'd like to be able to install snaps from the store. The snappy scope lets the user do that by talking to snapd-login-service over dbus.
This works mostly fine. We can activate it and the service starts. But then policykit denies us.
The policykit schema is:
<action id="io.
...
<defaults>
...
<
</defaults>
</action>
We have a policykit agent in the snap (unity8-policykit). But it can't work:
** (process:23093): WARNING **: Cannot spawn helper: Failed to execute child process "/usr/lib/
The file does not exist because /usr/lib is hidden by a mount, it looks like. And we can't just point at the copy inside the snap because it lacks the setuid bits that the system copy has.
I grepped in snapd code for polkit or policykit, but I don't see anything about an existing interface or something to help us hook into this. Is there an existing solution for this sort of problem?
Changed in snappy: | |
status: | New → Confirmed |
affects: | snappy → snapd-glib |
Changed in canonical-devices-system-image: | |
milestone: | none → p1 |
importance: | Undecided → High |
tags: | added: personal |
Changed in canonical-devices-system-image: | |
status: | New → Confirmed |
assignee: | nobody → Pat McGowan (pat-mcgowan) |
Changed in canonical-devices-system-image: | |
assignee: | Pat McGowan (pat-mcgowan) → Thomas Voß (thomas-voss) |
milestone: | p1 → p2 |
Changed in unity8-session-snap: | |
assignee: | Michael Terry (mterry) → nobody |
Adding a snappy task, since I think this needs input from the Snappy architects, about how policykit works in a snappy world. (Or if we should be using something besides SnapdLoginService to install snaps.)