Skip to content

Remove duplicate buttons using xfconf-query for xfce-based VM#261

Open
noskb wants to merge 1 commit into
QubesOS:mainfrom
noskb:fix-dup-buttons
Open

Remove duplicate buttons using xfconf-query for xfce-based VM#261
noskb wants to merge 1 commit into
QubesOS:mainfrom
noskb:fix-dup-buttons

Conversation

@noskb

@noskb noskb commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

In the gnome-based template, xsettingsd was used to remove duplicate buttons. However, since xfce-based templates use xfsettingsd, xfconf-query is called at session startup to perform the same configuration.

Previously: #256

In the gnome-based template, xsettingsd was used to remove duplicate
buttons. However, since xfce-based templates use xfsettingsd,
xfconf-query is called at session startup to perform the same
configuration.
@marmarek

marmarek commented Jun 8, 2026

Copy link
Copy Markdown
Member

Hm, looking at this more, there is a significant issue with this approach: it also disables buttons in GUI domain Interface qube, for applications running directly there (like xfce settings windows). This is because the setting set via xfconf-query will persist in user home, so even if at later time user session is started with XDG_CURRENT_DESKTOP=XFCE (so OnlyShowIn=X-QUBES; will prevent calling xfconf-query), the setting will be carried over from previous startup.

So, I'm afraid it needs to be a bit smarter. Maybe a script that saves old value to a file in user home (somewhere in ~/.config) and on non-qubes session restores it?

@noskb

noskb commented Jun 9, 2026

Copy link
Copy Markdown
Contributor Author

the setting set via xfconf-query will persist in user home

This is a strange behavior of XFCE, but when only the /Gtk/DecorationLayout is changed, it is not persisted. It appears that the value reverts to/general/button_layout value of xfwm4 property (even if it does not exist, revert to the default) when xfsettingsd starts up. And that was exactly why the changes didn't take effect even after running xfconf-query in 60xfce-desktop, which is why I tried using /etc/xdg/autostart as an alternative...

So, I'm afraid it needs to be a bit smarter. Maybe a script that saves old value to a file in user home (somewhere in ~/.config) and on non-qubes session restores it?

Wouldn't it be sufficient to simply skip it when guivm service is enabled?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants