Functional Global Menu with Xfce Appmenu plugin
After tinkering with it for a while now I finally have got a very much functional global menu working on my Xfce4 desktop running on Debian 10. I will list down the steps I followed to get the global menu configured on my Debian Xfce box in this post.
Table of Contents
- Global menu vs Local menu
- Load appmenu-gtk-module on startup
- Configure the top panel
Global menu vs Local menu
For those of you who might be wondering what a global menu is, it is a way of displaying the application menus on the top of the screen like the way MacOS does. By default the Xfce4 desktop displays the menus right below the Window title bar separately in each Window.
But if you have a small display screen (eg. a laptop display), this may not be the most efficient use of the vertical screen space. The MacOS does a better job at this by displaying the application menus on the top panel.
Apart from MacOS, global menu was most prominently featured in the Unity DE by Ubuntu.
The Xfce plugin that makes it all possible is called the
This plugin uses the same global menu implementation used by the aforementioned
Unity DE and supports all the features found in the Unity implementation.
To install the
xfce4-appmenu-plugin on Debian, run
sudo apt install xfce4-appmenu-plugin
Load appmenu-gtk-module on startup
xfce4-appmenu-plugin does not support every menu implementations out of
appmenu-gtk-module exports the unsupported menus to the supported format
xfce4-appmenu-plugin can display them.
appmenu-gtk-module is automatically installed as a transitive dependency of
xfce4-appmenu-plugin but it needs to be loaded on start up.
To do that, edit the
/etc/environment file with root permisson and append the
And restart the system.
Configure the top panel
- Edit the top panel and replace the
Windows Buttonsplugin with the
- Edit the
Separatorplugin that appears right after the
AppMenu Pluginand uncheck the
Here’s how it looks like in the end.
The steps have been tested in Debian 10. This plugin is quite functional and I have rarely noticed any glitches for the applications that I use day-to-day including LibreOffice. One notable exception was IntelliJ Idea. Although it supports the global menu plugin but at times the menu will not be automatically refreshed. I need to switch to some other window and switch back to it so that the menu items are refreshed.