layout lost after snapd refresh with long running content plugging snap
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
snapd |
Triaged
|
High
|
Zygmunt Krynicki |
Bug Description
I have a (private, since it is not ready for consumption) snap that I use personally:
https:/
It uses a layout:
layout:
/usr/
bind: $SNAP/usr/
and plugs gtk2 content:
plugs:
gtk-2-engines:
interface: content
target: $SNAP/lib/gtk-2.0
default-
gtk-2-themes:
interface: content
target: $SNAP/data-
default-
icon-themes:
interface: content
target: $SNAP/data-
default-
sound-themes:
interface: content
target: $SNAP/data-
default-
(note, I've since adjusted the snap to not use a layout to avoid this bug, but the snap in the wget uses the layout).
If I install the snap and run its 'indicator' (ie, a long running process) and then perform a snap refresh of the snapd snap, then the layout is lost. Steps to reproduce:
In a focal desktop VM:
$ snap info snapd # verify using stable
...
tracking: latest/stable
refresh-date: today at 09:29 CDT
channels:
latest/stable: 2.45.2 2020-07-15 (8542) 31MB -
...
$ snap version
snap 2.45.2
snapd 2.45.2
series 16
ubuntu 20.04
kernel 5.4.0-37-generic
$ sudo apt-get install gconf2 # required for the snap to run
$ wget https:/
$ sudo snap install --devmode --dangerous ./hamster-
$ hamster-
<indicator should now be running with this not returning>
<use indicator to 'Show Overview'. It should work>
In another terminal:
$ sudo snap refresh snapd --edge
$ snap version
snap 2.45.2+
snapd 2.45.2+
series 16
ubuntu 20.04
kernel 5.4.0-37-generic
Now go to indicator and do 'Show Overview' and it will fail with with (as seen in the first terminal):
/snap/hamster-
ui.add_
Traceback (most recent call last):
File "/snap/
dialogs.
File "/snap/
dialog = self.get_
File "/snap/
self._gui = load_ui_
File "/snap/
ui.
glib.GError: Failed to open file '/usr/share/
Note, /usr/share/
Changed in snapd: | |
status: | New → Triaged |
importance: | Undecided → High |
Tentatively assigning to zyga since we discussed this on IRC. Please adjust as necessary.