Qui-domains (systray Qubes Domains widget) Gtk minor issue - help needed if you use GUIVM

There is a minor bug with qui-domains Gtk widget that I have been desperately trying to fix to no avail. I did not bother to open a Github issue for it as it is only cosmetic and a minor issue.

How to reproduce:
Shutdown one or few VMs. Have the Qubes Domains drop-down menu open and wait. After the qube(s) are shutdown, the menu does not shrink and shows empty space at the bottom of the menu. Like this:

I have been analyzing this bug. Tried many Gtk tricks which did not work. I wonder if this is a Gtk 3.0 bug in Fedora 37. This post from GNOME forum shows that a similar bug existed before. I can confirm that it is fixed now for dynamic expanding and shrinking of menus but only if menu items are Gtk.MenuItem objects. Whereas qui-domains uses Gtk.ImageMenuItem objects as menu items.

If you are using a Fedora 39 (or 40) based GUIVM, I appreciate if you could see if the bug exists on your setup and inform me.

It could be related, but I’m still on dom0 and I see this bug using a window manager (i.e. not XFCE). That being said, in my quest to get sys-gui (and eventually sys-gui-gpu) working on minimal templates with WMs, my experience has been that UI features are often included in unexpected packages.

I’d highly recommend doing a diff on the installed packages between this and dom0 to see what comes up. For example, xfce4-settings provides the little qube icons on this widget, and python3-gobject provides all the individual icons/progressbars on the updater GUI.

Off-topic

On another note, I am curious to understand what it’s like working in sys-gui. I do a good bit of tinkering with my system, and I wonder if not having all that fun access to dom0 will be difficult. Do you experiment, and if so, how has sys-gui impacted that?

If you think this question is worth your time, feel free to open a topic for experiences with sys-gui. It’d be valuable for those of us not yet on the wagon.

1 Like

The package for systray widgets are from qubes-desktop-linux-manager repository. It has 2 major branches. One for Qubes OS 4.2 and one for 4.3. I have been experimenting with it for a while. It was originally designed by Bahtiar Gadimov (domains and devices widgets). It was forked and became an official Qubes repository in 2022. Policy Editor, Updater, Qubes Config, Disk Space Widget and many other things were added to it. Most of the work on it is done by Marmarta these days. Its pogram are written in PyGTK. The old Qube Manager was written in PyQt

Not yet. It is on my agenda.

Yes, I understand, but what I was trying to say is that the functionality you’re looking for may be in a package you don’t expect. It’s entirely possible this is a regular bug, but the fact that I have it too in dom0 suggests to me it is likely in a different package.

I think what is happening is that the devs are doing their coding in dom0/XFCE, and dependencies on those packages may be accidentally created and unnoticed.

1 Like

I do not have this issue on a fedora 39 sys-gui-vnc

1 Like

Thanks a lot for the feedback. That is such a relief. I have been experimenting with a lot of GTK functions, settings and tricks, believing it to be a bug in qui-domains code. I was about to lose sanity.