Empty dropdown menus

I already created a bug report on Launchpad with detailed information: https://bugs.launchpad.net/snapd/+bug/1950452

I think there is a easy fix with AppArmor but I did not find a solution and I got no help or further information on Launchpad.

I have a ThinkPad E14 Gen2 and a Gen3. Both had this problem right from the start with the newest Ubuntu version and provided Kernel version.

Current versions:

$ snap version
snap    2.54.4
snapd   2.54.4
series  16
ubuntu  21.10
kernel  5.13.0-39-generic

Am I missing something or why no one gives a f***? Most snap packages are not usable on 2/3 of my systems.

Serious question, I really want to know.

If you think the problem is related to the usage of AppArmor, you can try installing the snap with the --devmode flag, e.g sudo snap install firefox --devmode, the snap will then run confinement disabled. Please keep in mind that the snap will no longer automatically update whilst in dev mode.

Does the problem still occur in devmode?

Same problem with devmode. I tried with beekeeper-studio.

I think every app that uses Electron has this problem.

so this is likely an electron problem (or a problem of electron with X11 or with wayland) rather than a snap problem then …

I don’t have this problem with deb or flatpak packages. Same problem with Snaps on x11 and Wayland.

right, but if --devmode does not change behavior it is not the snap ecosystem itself … it could be missing themes, missing fonts, missing interaction with your display system … i do use quite a lot electron snaps here on 20.04 (in fact i’m running the forum in an electron snap and just type in it) and do not see such issues with any of them …

can you find any electron app where it works ? perhaps the apps you use use the ancient deprecated desktop-helpers vs the gnome extension for themes and fonts for example …

I tested beekeeper-studio, standard-notes, signal-desktop, insomnia, bitwarden, code and postman.

postman and code have no problems. And they use Electron.

(beekeeper-studio-bin:50975): Gtk-WARNING **: 19:44:56.801: Theme parsing error: gtk.css:1418:23: 'font-feature-settings' is not a valid property name

(beekeeper-studio-bin:50975): Gtk-WARNING **: 19:44:56.804: Theme parsing error: gtk.css:3295:25: 'font-feature-settings' is not a valid property name

(beekeeper-studio-bin:50975): Gtk-WARNING **: 19:44:56.805: Theme parsing error: gtk.css:3757:23: 'font-feature-settings' is not a valid property name

/usr/share/libdrm/amdgpu.ids: No such file or directory

(beekeeper-studio-bin:50975): dbind-WARNING **: 19:44:56.900: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-zHuA1iLlu6: No such file or directory

Some warnings I get while running the app.

they should all be harmless …

I installed standard-notes on focal (X11) and jammy beta (X11 and Wayland), and couldn’t reproduce the issue. In both systems I see dbus and application error messages in the terminal at start time related to migration of backup files, theme parsing and secret service, but menu content seems to appear as expected (see screenshot below).

Versions on jammy:

claudio@jammy:~$ snap version
snap    2.55.2+22.04.1
snapd   2.55.2+22.04.1
series  16
ubuntu  22.04
kernel  5.15.0-25-generic

Versions on focal:

$ snap version
snap    2.55.2+git248.ga4da44a
snapd   2.55.2+git248.ga4da44a
series  16
ubuntu  20.04
kernel  5.13.0-22-generic

Are you using any nonstandard configuration on your system, or is there any special procedure we can follow to reproduce the problem?

I think it has something to do with my hardware. The problem already existed without any configuration. I have a Ubuntu VM on the same system without the problem.

what graphics cards and what drivers are in use on these systems ?

Lenovo ThinkPad E14 Gen3 (20Y7003XGE) with AMD Radeon RX Vega 8 (Ryzen 4000)

I did not change any drivers.

$ lshw -c video

*-display                 
       description: VGA compatible controller
       product: Lucienne
       vendor: Advanced Micro Devices, Inc. [AMD/ATI]
       physical id: 0
       bus info: pci@0000:04:00.0
       version: c1
       width: 64 bits
       clock: 33MHz
       capabilities: pm pciexpress msi msix vga_controller bus_master cap_list
       configuration: driver=amdgpu latency=0
       resources: iomemory:40-3f iomemory:40-3f irq:42 memory:460000000-46fffffff memory:470000000-4701fffff ioport:1000(size=256) memory:fd300000-fd37ffff

$ modinfo amdgpu

filename:       /lib/modules/5.13.0-39-generic/kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
license:        GPL and additional rights
description:    AMD GPU
author:         AMD linux driver team

I hope these informations help.

Are the faulty systems pre-installed with Ubuntu, or did you install them using the iso?

I used the ISO downloaded from there: https://ubuntu.com/download/desktop

@facundobatista Could you try to reproduce this problem in your AMD-based Thinkpad? I don’t think it’s related to this specific platform, but I’ve seen strange things happen before.

I tried beekeeper-studio.

Installation and run:

11:43:56|facundo@camdeonita:~$ sudo snap install beekeeper-studio
[sudo] contraseña para facundo:
Se ha instalado beekeeper-studio 3.3.8 por Beekeeper Studio (matthew-rathbone)
11:44:55|facundo@camdeonita:~$ beekeeper-studio
11:45:51.819                     › initializing background
Gtk-Message: 11:45:52.558: Failed to load module "colorreload-gtk-module"
Gtk-Message: 11:45:52.559: Failed to load module "window-decorations-gtk-module"
running migrations
/usr/share/libdrm/amdgpu.ids: No such file or directory

(beekeeper-studio-bin:2372823): dbind-WARNING **: 11:45:56.152: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-gMuXMZ61m0: No such file or directory

If I try the File, View or Help options, they are ok. But the Edit menu is totally blank:

blank-edit

System info

$ snap version
snap    2.54.4
snapd   2.54.4
series  16
ubuntu  21.10
kernel  5.13.0-39-generic

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 21.10
Release:        21.10
Codename:       impish

$ uname -a
Linux camdeonita 5.13.0-39-generic #44-Ubuntu SMP Thu Mar 24 15:35:05 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

$ env | grep DESKTOP
DESKTOP_SESSION=plasma
XDG_SESSION_DESKTOP=KDE
XDG_CURRENT_DESKTOP=KDE

$ sudo lshw -c video
  *-display                 
       description: VGA compatible controller
       product: Renoir
       vendor: Advanced Micro Devices, Inc. [AMD/ATI]
       physical id: 0
       bus info: pci@0000:07:00.0
       logical name: /dev/fb0
       version: d1
       width: 64 bits
       clock: 33MHz
       capabilities: pm pciexpress msi msix vga_controller bus_master cap_list fb
       configuration: depth=32 driver=amdgpu latency=0 mode=1920x1080 visual=truecolor xres=1920 yres=1080
       resources: iomemory:80-7f iomemory:80-7f irq:78 memory:860000000-86fffffff memory:870000000-8701fffff ioport:1000(size=256) memory:fd300000-fd37ffff

So, as strange as it might sound, this seems to happen only (or more frequently) on AMD machines. I tested it in a Ryzen 3 4350G system running impish with Gnome on X11 and some menus are indeed empty:

Screenshot from 2022-04-12 18-45-43

$ uname -a
Linux peashooter 5.13.0-39-generic #44-Ubuntu SMP Thu Mar 24 15:35:05 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

# lshw -c video
  *-display                 
       description: VGA compatible controller
       product: Renoir
       vendor: Advanced Micro Devices, Inc. [AMD/ATI]
       physical id: 0
       bus info: pci@0000:07:00.0
       version: da
       width: 64 bits
       clock: 33MHz
       capabilities: pm pciexpress msi msix vga_controller bus_master cap_list
       configuration: driver=amdgpu latency=0
       resources: irq:24 memory:d0000000-dfffffff memory:e0000000-e01fffff ioport:e000(size=256) memory:fcc00000-fcc7ffff memory:c0000-dffff

this was my suspicion (and why i asked about the graphics driver above) …

while i always thought the amdgpu.ids warning would be harmless, i wonder if it actually is not and we need to do something in the opengl interface handling to pull/bind that file into the snap namespace from the host.