Cannot run polarr snap on Archlinux after update

Hi,

after updating polarr snap package from 4.5 to 5.2.1 I cannot run it anymore on my Archlinux.
Since other snaps (like spotify) works OK. And previous version worked OK, I believe there is something broken in package itself.

Package installs without any error. But when I do snap run polarr, nothing happens.

Here is output with DEBUG flags on:

SNAPD_DEBUG=1 SNAP_DEBUG_CONFINE=1 snap run polarr
2018/09/25 15:58:20.493260 cmd.go:70: DEBUG: re-exec not supported on distro "arch" yet
DEBUG: security tag: snap.polarr.polarr
DEBUG: executable:   /usr/lib/snapd/snap-exec
DEBUG: confinement:  non-classic
DEBUG: base snap:    core
DEBUG: ruid: 1000, euid: 0, suid: 0
DEBUG: rgid: 1000, egid: 0, sgid: 0
DEBUG: checking if the current process shares mount namespace with the init process
DEBUG: re-associating is not required
DEBUG: creating lock directory /run/snapd/lock (if missing)
DEBUG: opening lock directory /run/snapd/lock
DEBUG: opening lock file: /run/snapd/lock/.lock
DEBUG: sanity timeout initialized and set for three seconds
DEBUG: acquiring exclusive lock (scope (global), uid 0)
DEBUG: sanity timeout reset and disabled
DEBUG: ensuring that snap mount directory is shared
DEBUG: unsharing snap namespace directory
DEBUG: creating namespace group directory /run/snapd/ns
DEBUG: namespace group directory does not require intialization
DEBUG: releasing lock 4
DEBUG: snap-update-ns executable: /usr/lib/snapd/snap-update-ns
DEBUG: opened snap-update-ns executable as file descriptor 3
DEBUG: creating lock directory /run/snapd/lock (if missing)
DEBUG: opening lock directory /run/snapd/lock
DEBUG: opening lock file: /run/snapd/lock/polarr.lock
DEBUG: sanity timeout initialized and set for three seconds
DEBUG: acquiring exclusive lock (scope polarr, uid 0)
DEBUG: sanity timeout reset and disabled
DEBUG: initializing mount namespace: polarr
DEBUG: opening namespace group directory /run/snapd/ns
DEBUG: found base snap filesystem device 7:0
DEBUG: sanity timeout initialized and set for three seconds
DEBUG: receiving information about the state of the mount namespace
DEBUG: ensuring that parent process is still alive
DEBUG: joining the namespace that we are about to probe
DEBUG: found root filesystem inside the mount namespace 7:0
DEBUG: sending information about the state of the mount namespace (keep)
DEBUG: support process for mount namespace inspection is about to finishDEBUG: 
sanity timeout reset and disabled
DEBUG: the mount namespace is up-to-date and can be reused
DEBUG: attempting to re-associate the mount namespace with the namespace group polarr
DEBUG: successfully re-associated the mount namespace with the namespace group polarr
DEBUG: releasing resources associated with namespace group polarr
DEBUG: moved process 29521 to freezer cgroup hierarchy for snap polarr
DEBUG: releasing lock 5
DEBUG: sc_setup_user_mounts: polarr
DEBUG: performing operation: (disabled) use debug build to see details
DEBUG: calling snap-update-ns to initialize user mounts
DEBUG: waiting for snap-update-ns to finish...
DEBUG: launching snap-update-ns under per-snap profile snap-update-ns.polarr
DEBUG: fexecv(3 (snap-update-ns), snap-update-ns --user-mounts polarr,)
main.go:214: DEBUG: desired mount profile:
main.go:216: DEBUG: 	/run/user/1000/doc/by-app/snap.polarr /run/user/1000/doc none bind,rw,x-snapd.ignore-missing 0 0
change.go:405: DEBUG: desiredIDs: map[/run/user/1000/doc:true]
change.go:406: DEBUG: reuse: map[]
main.go:225: DEBUG: mount changes needed:
main.go:227: DEBUG: 	mount (/run/user/1000/doc/by-app/snap.polarr /run/user/1000/doc none bind,rw,x-snapd.ignore-missing 0 0)
main.go:174: DEBUG: performing mount changes:
main.go:177: DEBUG: 	 * mount (/run/user/1000/doc/by-app/snap.polarr /run/user/1000/doc none bind,rw,x-snapd.ignore-missing 0 0)
main.go:219: DEBUG: current mount profile (after applying changes): (none)
DEBUG: snap-update-ns finished successfully
DEBUG: resetting PATH to values in sync with core snap
DEBUG: snappy_udev_init
DEBUG: setup_devices_cgroup
DEBUG: write_string_to_file /sys/fs/cgroup/devices/snap.polarr.polarr/tasks 29521
DEBUG: write_string_to_file /sys/fs/cgroup/devices/snap.polarr.polarr/devices.deny a
DEBUG: run_snappy_app_dev_add: /sys/class/mem/null snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/class/mem/null 1:3
DEBUG: run_snappy_app_dev_add: /sys/class/mem/full snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/class/mem/full 1:7
DEBUG: run_snappy_app_dev_add: /sys/class/mem/zero snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/class/mem/zero 1:5
DEBUG: run_snappy_app_dev_add: /sys/class/mem/random snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/class/mem/random 1:8
DEBUG: run_snappy_app_dev_add: /sys/class/mem/urandom snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/class/mem/urandom 1:9
DEBUG: run_snappy_app_dev_add: /sys/class/tty/tty snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/class/tty/tty 5:0
DEBUG: run_snappy_app_dev_add: /sys/class/tty/console snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/class/tty/console 5:1
DEBUG: run_snappy_app_dev_add: /sys/class/tty/ptmx snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/class/tty/ptmx 5:2
DEBUG: running snap-device-helper add snap_polarr_polarr /dev/pts/slaves 136:*
DEBUG: running snap-device-helper add snap_polarr_polarr /dev/pts/slaves 137:*
DEBUG: running snap-device-helper add snap_polarr_polarr /dev/pts/slaves 138:*
DEBUG: running snap-device-helper add snap_polarr_polarr /dev/pts/slaves 139:*
DEBUG: running snap-device-helper add snap_polarr_polarr /dev/pts/slaves 140:*
DEBUG: running snap-device-helper add snap_polarr_polarr /dev/pts/slaves 141:*
DEBUG: running snap-device-helper add snap_polarr_polarr /dev/pts/slaves 142:*
DEBUG: running snap-device-helper add snap_polarr_polarr /dev/pts/slaves 143:*
DEBUG: running snap-device-helper add snap_polarr_polarr /dev/uhid 10:239
DEBUG: run_snappy_app_dev_add: /sys/devices/pci0000:00/0000:00:02.0/drm/card0 snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/devices/pci0000:00/0000:00:02.0/drm/card0 226:0
DEBUG: run_snappy_app_dev_add: /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-1 snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-1 0:0
DEBUG: run_snappy_app_dev_add: /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-2 snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-2 0:0
DEBUG: run_snappy_app_dev_add: /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-3 snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-3 0:0
DEBUG: run_snappy_app_dev_add: /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-4 snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-4 0:0
DEBUG: run_snappy_app_dev_add: /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-HDMI-A-1 snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-HDMI-A-1 0:0
DEBUG: run_snappy_app_dev_add: /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-HDMI-A-2 snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-HDMI-A-2 0:0
DEBUG: run_snappy_app_dev_add: /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-eDP-1 snap_polarr_polarr
DEBUG: running snap-device-helper add snap_polarr_polarr /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-eDP-1 0:0
DEBUG: creating user data directory: /home/user/snap/polarr/9
DEBUG: loading bpf program for security tag snap.polarr.polarr
DEBUG: read 6160 bytes from /var/lib/snapd/seccomp/bpf//snap.polarr.polarr.bin
DEBUG: raising privileges to load seccomp profile
DEBUG: dropping privileges after loading seccomp profile
DEBUG: execv(/usr/lib/snapd/snap-exec, /usr/lib/snapd/snap-exec...)
DEBUG:  argv[1] = polarr

Any idea what could be wrong? I do not see any error in console.

Snap version:
snap 2.35.2-1
snapd 2.35.2-1
series 16
arch -
kernel 4.18.9-zen1-1-zen

Seems to be working fine here (rev 9, version 5.2.1). I’ve tried it on a system with nvidia card and another one with Intel’s IGP. I see you’re running the same revision.

Can you try running snap run --strace polarr to check if there’s anything standing out in the logs?

If you have previous revisions installed (snap list --all will show that), you can always try reverting with:

$ snap revert polarr # optionally pass revision with --revision=<num>

Unfortunatelly, I cannot revert back to 4.5 because this version is not listed in snap :frowning:

polarr 5.1.1 6 stable polarrco✓ disabled polarr 5.2.0 8 stable polarrco✓ disabled polarr 5.2.1 9 stable polarrco✓ -

running with that --strace option gives me just: /var/lib/snapd/snap/strace-static/current/bin/strace: Unexpected wait status 0x8b error: exit status 1 Which leads me to nowhere.

I am running on integrated Intel graphics in my laptop. Gnome 3.30 on Wayland. Unfortunately I cannot say if 4.5 version was working on new Gnome, because last time I run Polarr was with 3.28 and it worked. Since snaps updates automatically, I did not even noticed that polarr snap did some updates. Probably problem is the 5.X line of Polarr, maybe in some combination with Wayland. But who knows when app does not report any meaningful error.

Well, seem snaps are way to hell because they do not even notice user that something has changed… And same for closed-source apps. Noone can fix them, when they are broken (or poorly created). :frowning:

But good thing is this situation reminded me why I switch to OSS years ago.

This is likely the issue. Can you login to an X session to eliminate Wayland from the debugging?

Yep, you are right.

So polarr 4.5 was a friend of wayland. But new 5.X version is not wayland-friendly.

Good to know. I wonder why would a developer do change like that in newer version of app.

Great (to have it debugged). Maybe file an issue upstream to get some details on why wayland no longer works. It might be that they don’t know this.