In December, I upgraded from 24.04 to 24.10. From 22.04, I have used every interim release and have had no issues so far, until this update. It took a lot of time to restore the ability to actually reach the desktop. I mostly got it working again but one issue that remains is that when the global application menu is enabled, applications still display their own menus. If I disable and then re-enable the global menu, I'll get maybe 30 seconds of it working properly before the double menus start showing up again. Does anyone know how to fix this?
Hi, @electricbrass and welcome to the Ubuntu MATE Community!
Could you please share a pictures of the issue
when the global application menu is enabled, applications still display their own menus"
Also, share a picture of the item you disabled about that:
If I disable and then re-enable the global menu
Here is Caja showing the issue.
Screenshots don't seem to work while the option is displayed, but it was just right clicking the global menu and removing it from the panel, and then right clicking the panel and add to panel, then selecting global application menu. On all previous versions I have used, the presence of the global menu in the panel would also toggle whether applications showed their own menus.
There is an option in the appmenu
module to keep the menus inside applications, but it is disabled by default. This command is supposed to return false
:
gsettings get org.appmenu.gtk-module always-show-inner-menu
But I doubt it was affected during the upgrade.
What was the problem?
From my knowledge, it's a feature not an issue. Personnaly, I use Redmond layout.
It does.
I didn't figure out the exact issue. I think it was probably related to the issue that led to the greeter change in 24.10. I don't quite remember now but I think whatever I did that finally got it working involved changing the greeter.
At some point during the process I uninstalled the default display manager and installed another one. This resulted in a few packages being uninstalled. I think I have gotten everything back to what should be included, but I'm guessing some setting must have been messed up by this. I'm unfortunately not too familiar with how all the stuff making up the desktop environment actually works.
So, a layout that doesn't even use the feature I'm having problems with?
yep, it differ with layout
You are not alone with this problem. It was probably caused by a needless installation of unity-greeter
during the upgrade, which corrupted the lightdm
configuration.
Global menu is provided by mate-applet-appmenu
package. In the meantime, you can install --reinstall
it and its appmenu
dependencies.
The development repository is here:
Just tried this and didn't seem to have made any change...
I noticed I did get a warning relating to the greeter though:
"No such key “idle-timeout” in schema “x.dm.slick-greeter” as specified in override file “/usr/share/glib-2.0/schemas/30_ubuntu-mate.gschema.override”; ignoring ov
erride for this key."
Try opening the issue in the gitlab repository. The developers seem to be pretty responsive.
I don't see this key either.
Something changed within appmenu-registrar
that seems to have borked the Global Application Menu.
I've been trying to crack this in a VM with 25.04. I recently build the Global Application Menu from source, see here. Even for a relatively seasoned developer - I found troubleshooting problems to be rather difficult.
Anyway, the upshot is - when built from the upstream release - it works.
I suppose the question now is; how long will it be until whatever is broken within the package is fixed, and then that fix makes it to a release?
Wow, that's a good read: quite some activity
This is very helpful. Guess I'll also build it myself for now.
Hopefully by the next LTS at the latest. It's disappointing to hear this wasn't just something that happened as a result of my fiddling to fix the botched update and is still present in 25.04, but it'd be even more disappointing to see this issue still present in 26.04. I definitely hope we see it fixed sooner though.
@electricbrass Yes, I had a fun old time with lightdm when upgrading to 24.10. If you are still having trouble, please check my thread and @ironfoot 's solutions here.
Jaymo
I got that all sorted out back in December, but thanks!
FWIW - here are the instructions I used to build on 25.04.
Firstly, remove the Global Application Menu from your panel, then remove the pre-installed package (and some no-longer-required dependencies):
sudo apt remove mate-applet-appmenu
sudo apt autoremove
Make a directory (anywhere) to work in e.g.:
mkdir -p apps/panel
Then, build and install the appmenu-glib-translator from the latest upstream release:
cd apps/panel
# download, extract:
wget https://gitlab.com/-/project/6865053/uploads/ad1d7fdea9c44ab23feb990086669866/appmenu-glib-translator-25.04.tar.xz
tar -xvf appmenu-glib-translator-25.04.tar.xz
cd appmenu-glib-translator-25.04
# get dependencies, setup, build, install:
sudo apt install meson cmake libgtk-3-dev gobject-introspection valac
meson setup build --prefix=/usr
cd build && ninja && sudo ninja install
Then build and install the vala-panel-appmenu (along with the registrar and appmenu-gtk-module sub-projects) from the release:
cd apps/panel
# download, extract:
wget https://gitlab.com/-/project/6865053/uploads/3d591a881b3b2a091f7184c56b207a01/vala-panel-appmenu-25.04.tar.xz
tar -xvf vala-panel-appmenu-25.04.tar.xz
cd vala-panel-appmenu-25.04
# get dependencies, setup, build, install:
sudo apt install libgtk2.0-dev libwnck-3-dev systemd-dev
sudo apt install libmate-panel-applet-dev
meson setup build --prefix=/usr -Dmate=enabled -Dappmenu-gtk-module=enabled -Dregistrar=enabled
cd build && ninja && sudo ninja install
# will need to recompile the glib schemas immediately:
sudo glib-compile-schemas /usr/share/glib-2.0/schemas
Restart your computer.
-
Check output of
echo $GTK_MODULES
:crashyguy@crashyguy-guest:~$ echo $GTK_MODULES appmenu-gtk-module:gail:atk-bridge:canberra-gtk-module
If it does not contain
appmenu-gtk-module
, check that/etc/profile.d
containsvala-panel-appmenu.sh
, if not,sudo apt install vala-panel-appmenu-common
; then restart (or logout/in). In fact; I would probably make sure this package is installed just in case.
At this point; you should be able to add the Global Application Menu applet. Add it.
-
Check that the
appmenu-registrar
is running:crashyguy@crashyguy-guest:~$ ps -aux | grep appmenu crashyg+ 2676 0.0 0.1 165272 5680 ? Sl 13:37 0:00 /usr/libexec/vala-panel/appmenu-registrar --gapplication-service
-
(Probably irrelevant): Check that the
appmenu-gtk-module.service
was loaded:crashyguy@crashyguy-guest:~$ systemctl status --user appmenu-gtk-module.service â—‹ appmenu-gtk-module.service - Appmenu GTK Module Environment variables Loaded: loaded (/usr/lib/systemd/user/appmenu-gtk-module.service; enabled;> Active: inactive (dead)
If it has been disabled, enable it via
systemctl enable --user appmenu-gtk-module.service
The one issue I'm seeing with this is that it doesn't pick up the desktop menu correctly (it simply shows Caja -> New, Quit) - I think this is a known bug