[We have a change in the URI for the GlobalMenu Team PPA. See below. And I've (finally) updated the package name. -Peng]
One of the things users of Mac4Lin (as well as others) love is the GlobalMenu, which used to be known as the MacMenu. The one pain in the rump is trying to get the damned thing installed, because it invariably involves compiling it from source and the very large possibility for spending a bit of time in dependency hell.
But not anymore. I found a link to a part of the Google Code site for the GlobalMenu code. They have packages for several distros as well, and while they have packages for Ubuntu Gutsy they have installation instructions that include using a PPA for Ubuntu Intrepid. But rather send you over there and risk your getting a side trip through Dependency Hell I’ll give you some nice easy steps to follow for users on Ubuntu Intrepid. There’s a new URI for the GlobalMenu Team PPA. I’ve updated the data to put into your sources.list below.
Dependencies are a bugger
NOTE: Vala, a dependency for GlobalMenu, is available in a Launchpad PPA. If you want to skip the section on compiling Vala read this post and then jump down to the heading “Not so fast…“ I was following this tutorial to try to get GlobalMenu working before I found the PPA so I already had Vala installed. There are some dependencies that you need to have met before installing Vala so fire up your favorite command line app and run this:
sudo apt-get install build-essential flex bison gnome-common libglib2.0-dev gtk-doc-tools autoconf2.13 automake1.9 libgtk2.0-dev libdbus-glib-1-dev libwnck-dev libpanel-applet2-dev
Before you close your terminal let’s get Vala installed so let’s follow ayoli’s instructions for installing it. (The dependencies you just met are also from ayoli’s site.)
cd ~/
wget -c http://download.gnome.org/sources/vala/0.5/vala-0.5.1.tar.bz2
tar xjvf vala-0.5.1.tar.bz2
cd vala-0.5.1/
./configure
make
sudo make install # (for some reason, checkinstall doesn't work here)
sudo ldconfig
Not so fast…
You need to make sure the libgnomenu GTK module is loaded, but there’s an easy way to do it. Create a file in your root folder called ~/.gnomerc, and open it in your preferred text editor and paste the following into the file.
# Uncomment to load the GTK module
# export GTK_MODULES=globalmenu-gnome
# Uncomment to tell the GTK module to open a Gtk
# TreeView for all menus in the application you start.
# export GNOMENU_FUN=1
# Uncomment to disable global menu.
# export GNOMENU_DISABLED=1
# Uncomment to print a lot of debugging messages
# export GNOMENU_VERBOSE=1
# Uncomment to save the debugging messages to the given file.
# export GNOMENU_LOG_FILE=/tmp/gnomenu.log
# uncomment to disable the plugin for specific programs.
# export GTK_MENUBAR_NO_MAC="fast-user-switch-applet"
You’ll need to uncomment the particular lines you want to use. To use the GlobalMenu you’ll need to disable uncomment the line to export the GTK module, but the rest are up to you.Updated 13 February 2009 8:05am: You no longer have to uncomment the first line for GlobalMenu to work. Now you can comment/uncomment that and all other lines via the new settings window, which is just a right click away.
I tried using the option to use the GTK TreeView but it opened a new window and I had absolutely no clue what it did so I disabled it. I do, however, save the debugging messages, and I had them saved to a file in my /home folder just so I can find it more easily.
Now to install GlobalMenu
You need to add a pair of entries to your apt sources.lst file. Updated URI for the GlobalMenu Team’s PPA, posted 3 December 7:30 am, pointed out by Ali Servet Dönmez.
deb http://ppa.launchpad.net/globalmenu-team/ubuntu intrepid main
deb-src http://ppa.launchpad.net/globalmenu-team/ubuntu intrepid main
Save the file and close it, and you’re just about ready to install GlobalMenu. I forgot to post it because I do it automatically, but first you need to run
sudo apt-get update
and then you can run
sudo apt-get install gnome2-globalmenu
sudo apt-get install gnome-globalmenu
Updated 13 February 2009 8:05 am: The package name has been updated to reflect the current name of the package. Sorry about that, and thanks to nicad for reminding me that I hadn’t changed it yet.
Now restart your system log out* and and when you log back in there will be one detail left to take care of. If you have a panel menu on your upper panel remove it and right click on your panel, select Add to panel… and add the GlobelMenu Panel Applet. Now you’ll find the menu for whatever window you’re using showing on your panel. There is a list of compatible applications, but it’s easier to say what won’t work with it. Any applications that don’t use GTK will keep their menus inside their windows. Namely that means any KDE app you use (such as Amarok), OpenOffice.org and Mozilla’s Firefox and Thunderbird. Any applications you run with sudo permissions (like Synaptic) won’t use GlobalMenu either, but that’s a safety precaution.
Here are a couple of screenshots of my system after I installed GlobalMenu.

My desktop with some details in the AWN Terminal

My desktop with Firefox 3 and Nautilus running. You can hide your menu in Firefox with the Hide Menubar add-on, but I have to warn you not to disable it without first using View > Toolbars > Mainmenu Toolbar. Otherwise you’ll find that your menus are hidden when you’ve restarted Firefox with no way to bring them back.
If you use Mac4Lin…
The normal themes for Mac4Lin are missing some components that make a difference for using GlobalMenu. You should either install the MacMenu version of the Mac4Lin GTK themes, or if you’re using Mac4Lin ver.1.0 RC1 simply use System > Preferences > Appearances > Customize to select the Mac4Lin_MacMenuv1.0RC control set, then save the modified theme. Now you’ll be able to enjoy even more OSX-like goodness.
*-Thanks to BobCFC for letting me know in his comment that you only need to log out, not reboot, to get it working. I thought it was just logging out but I did a reboot to clear up other things and I didn’t want to risk telling you the wrong thing.
RSS - Posts




