Those of you who like the global menu in KDE Plasma will have already noticed that neither Firefox nor Thunderbird export their application menu to the Plasma global menu widget out-of-the-box. And indeed, in their original form as they ship from Mozilla, these two popular applications do not. But that doesn’t mean that you’re stuck with an inconsistent look & feel on your desktop.
The thing however is that you must not be using the stock Firefox and/or Thunderbird anymore, but that you must instead use one of the specially patched versions of these two software titles. This HowTo is intended to present you with the alternatives that do play nice with KDE Plasma.
Global menu support in other GTK-based applications
In order to have global menu support in other GTK-based applications, you must have the
appmenu-gtk-module package installed ─ it’s in the Manjaro repository.
In some cases, this package may however cause Firefox (and derivatives) and Chrome/Chromium to segfault. In that case, it is recommended to replace the
appmenu-gtk-module package from the Manjaro repository by the
appmenu-gtk-module-git package from the AUR. This is a source code package that must be compiled locally by way of an AUR helper application ─ see farther down ─ or by Pamac, but doing so doesn’t take very long; it’s a lightweight package.
Note: There is to the best of my knowledge no global menu support for the Pale Moon browser, which is a Firefox fork specifically developed with the user interface of the Firefox 2.x generation.
Firefox versions with global menu support
Firefox is the Mozilla application where you have the most options, because there are three versions with global menu support in the AUR (“Arch User Repository”) that you can choose from, as well as a standalone version ─ the one we’ll address here first ─ which was specifically developed for Manjaro.
Plasmafox was specifically developed ─ and is still being maintained ─ for Manjaro by a former forum member, Torvic9. It is based upon
firefox-kde-opensuse from the AUR, with special privacy enhancements from Waterfox, which itself is another Firefox fork.
And this is then what it looks like…
The theme may differ depending on your own preferences. You can add themes to Plasmafox just as you would to the regular Firefox.
Plasmafox does not adopt or inherit the settings, preferences or bookmarks of any existing Firefox installation. It uses its own configuration files.
Update - 2020.08.27: I have just been informed that the developer of Plasmafox has decided to focus on EndeavourOS and that he as such won’t guarantee the proper operation of Plasmafox in Manjaro anymore.
He does however believe that it’ll most likely still work in the Manjaro Unstable branch.
This is the patched Firefox that Plasmafox is partly based upon. The package can be downloaded from the AUR, in two versions:
Unless you’ve got loads of RAM to spare and you have a very fast computer, you will almost with certainty want to choose the latter package, because ─ like with most software from the AUR ─ the first package comes as source code only and must be compiled on your own computer.
When I was still new to Manjaro, I once made the mistake of picking the source code version ─ there may not even have been a pre-compiled binary version of it at the time ─ and it took my computer a whole five (5!) hours to compile and link the source code and turn it into an installable package, with all RAM maxed out, 80% of my swap partition filled up, and all 6 cores of my i5-8400 processor running at the full 100% load. And all the while, the system was completely unusable for anything else.
So, again, unless you’ve got a very powerful machine with loads of RAM ─ say at least 32 GiB ─ you will most likely want to go with the pre-compiled version, i.e.
Same comments as here-above. It’s a package from the AUR, and it comes as both a source-code-only variant and as a pre-compiled variant.
This is what it looks like…
This version has global menu support patches from Ubuntu, given that Ubuntu uses GNOME as the default desktop environment, and Unity before that, and both GNOME and Unity have/had a global menu.
This version of Firefox is once again available from the AUR, but it comes as a readily installable binary package only. As the name says, the package is called
Thunderbird versions with global menu support
Analogous to Firefox ─ with the exception of Plasmafox ─ these are packages from the AUR. The offer is however a bit more limited than for its browser sibling.
thunderbird-appmenu─ source code only
thunderbird-appmenu-bin─ pre-compiled and readily installable binary package
thunderbird-ubuntu-bin─ pre-compiled and readily installable binary package
How do I install any of these packages?
1. Using the GUI
If you use the GUI version of Pamac, then you can simply install them from there.
If you use Octopi, then you must enable support for the AUR in the settings, and then you must also install an AUR helper program such as
trizenfrom the standard Manjaro repository. Then, you can click on the icon next to the search field, and then you type the name of the package in the search field and you press Enter/Return. You can then mark the package for installation, and the AUR helper will do the rest.
2. By way of the command line
This suggests that you use the command-line version of
pamac, or that you have an AUR helper installed.
Given that I don’t have
pamac installed here, but instead I have the AUR helpers
trizen, here’s how I do it. As an example, we’re going to be using the package
yay -Syyua firefox-kde-opensuse-bin
This command will first make sure that your entire system is fully up-to-date, including any AUR packages you already have installed and of which a newer version has been uploaded to the Arch User Repository in the meantime.
It is not necessary to prefix this command with
sudo; in fact,
yay will refuse to work if you do that, and instead it will prompt you for the root password when necessary. After making sure your system is fully up-to-date,
yay will then download and install the package. No need to log out or reboot, because it’ll be readily available from the system menu right away.
If instead you prefer the use of
pamac, then ─ using the same
firefox-kde-opensuse-bin package as an example ─ the command would be this…
pamac build firefox-kde-opensuse-bin
Further Plasma integration
While all of the above so far has been pertinent to getting global menu support in Firefox and Thunderbird, there is however something more you can do to have these applications further integrate with KDE Plasma.
kmozillahelperpackage from the repository.
(Note: For Plasmafox you instead need to install the
kplasmafoxhelperpackage ─ see the links higher up in this post.)
xdg-desktop-portal-kdepackage from the repository (if it’s not installed already).
plasma-browser-integrationpackage from the repository (if it’s not installed already).
The following is not needed for Plasmafox, but for any of the other Firefox variants discussed in this post and for Thunderbird, you need to edit the file
/etc/profile.d/mozilla-common.shand add the following line to it…
You will need to log out of Plasma and log back in for this last setting to take effect, because the contents of the files under
/etc/profile.d/ are only ever read at login time.
Hopefully this information was useful. Enjoy!
This HowTo is a wiki. Anyone can amend the information in this post.