Keepassxc: [PRE-RELEASE] Snap: recent edge channel update (version 245) broke theming

Created on 9 Apr 2019  路  13Comments  路  Source: keepassxreboot/keepassxc

I'm running keepassxc snap from the edge channel. After contributing mouse cursor fixes #2832 I've been running the edge version since without issues. Today revision 245 was pushed to the edge channel and the snap theme looks broken, not sure what has been changed.

shot

Expected Behavior

Revert to using default Qt fusion style

Current Behavior

Fallback theme is used, see screenshot above

Possible Solution

Revert changes or investigate possible cause

Steps to Reproduce

  1. sudo snap refresh keepassxc --edge
  2. keepassxc

Context

Debug Info

KeePassXC - Version 2.4.0
Revision: 29c79c9
Distribution: Snap

Qt 5.9.5
Debugging mode is disabled.

Operating system: Ubuntu Core 18
CPU architecture: x86_64
Kernel: linux 4.18.0-17-generic

Enabled extensions:

  • Auto-Type
  • Browser-Integration
  • SSH-Agent
  • KeeShare (signed and unsigned sharing)
  • YubiKey

Cryptographic libraries:
libgcrypt 1.8.1

Operating system: Ubuntu 18.04
CPU architecture: x86_64
Kernel: 4.18.0-17-generic

PRE-RELEASE BUG

Most helpful comment

The documentation is a bit misleading because this actually works in any VM (inside Virtualbox for example) and is not dependent on LXD.

The --destructive-mode flag just tells snapcraft to not spin up a VM and use the raw system whether it is running on real hardware or inside a virtual machine.

https://bugs.launchpad.net/snapcraft/+bug/1815319

All 13 comments

We haven't touched anything regarding theming it snaps

That's curious.
I'll try to do some tests to find out.
Usually when an update is pushed to the edge channel, it came from a trigger which can be viewed on the build snapcraft.io console.

Build log: https://launchpad.net/~droidmonkey/+snap/keepassxc-develop/+build/519300

After some investigation it appears something changed on core18 or snapcraft/snapd side of things because many of my own snaps broke on the edge channel too, so I was too quick to blame it on keepassxc devs (sorry).

Sometimes when the core18 base or a dependency package changes (is updated to fix security issues or something else) edge channels snaps are usually automatic rebuilt, so that's the reason an update was pushed automatically to the edge channel.

Apparently there could be a regression inside the base snap or snapcraft, so my suggestion is to wait too see if they fix it. If not, and a new release of keepassxc is being released (2.4.1) in the meantime we could revert PR https://github.com/keepassxreboot/keepassxc/pull/2832

A bit disappointed, shows how much this technology (snap) is still immature and needs more work.

I am totally disappointed in snaps, to be quite honest. I do not think flatpaks are any better, but they seem easier to build on any platform. The fact that I cannot build snaps in an Ubuntu 18.04 VM is a complete travesty.

Flatpak isn't better at all, I failed multiple times to just ship a simple Qt app. At least with snap I can specify dependencies with just a package from a base, instead of building from source all deps of deps recursively, that's insane.

The fact that I cannot build snaps in an Ubuntu 18.04 VM is a complete travesty.

from https://snapdocs.labix.org/build-on-lxd/4157
snapcraft --destructive-mode
will build in a VM (must be a clean Ubuntu 18.04 though), this is intended for throwaway build environments like CI systems.

And with multipass things are improving to build snaps on any distro that ships snapd, since it's basically spinning up a minimal VM.

You cannot run a vm in a vm (without fancy hardware). I would need a host based Linux system.

The documentation is a bit misleading because this actually works in any VM (inside Virtualbox for example) and is not dependent on LXD.

The --destructive-mode flag just tells snapcraft to not spin up a VM and use the raw system whether it is running on real hardware or inside a virtual machine.

https://bugs.launchpad.net/snapcraft/+bug/1815319

You sir have saved me a lot of hassle for future debugging!

Is this theming issue still present?

Yes, for me, on Ubuntu MATE 19.04. I'm on the snap edge channel, version 2.5.0, rev 301.

Yes, still not fixed. Tried a fresh build environment since the edge channel was not updated.
Workaround and improvements proposed in PR https://github.com/keepassxreboot/keepassxc/pull/3028.

A bit hacky though.

Just wanted to thank @droidmonkey and others for your efforts in creating such a high-quality snap package. As a user of KeePassXC, I'm very happy I can now use the latest version in Ubuntu without installing a ppa.

Also, in case you didn't know; you can now build snaps in virtual machines using LXD: snapcraft --use-lxd. This can be used, for example, to do automated builds on travis: https://github.com/snapcrafters/sdlpop/blob/master/.travis.yml

Thank you for your kind words! If you didn't know, we have automated builds of the develop branch feeding the "edge" channel. You can try out new features and stay up to the minute very easily.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

TheZ3ro picture TheZ3ro  路  3Comments

JosephHatfield picture JosephHatfield  路  3Comments

guihkx picture guihkx  路  3Comments

Throne3d picture Throne3d  路  3Comments

shaneknysh picture shaneknysh  路  3Comments