[xmonad] Fedora 10, Gnome and Xmonad

Daniel Spoonhower spoons at cmu.edu
Wed Dec 17 11:15:14 EST 2008

I have also had problems using Xmonad with Gnome 2.23 and 2.24 (the
version I believe is in Fedora 10) on my Gentoo system.

In 2.23, I had things working as I wrote on a talk page on the wiki:
Which referenced the following post from a compiz user:

When I upgraded to 2.24, metacity came up as the default WM.  I haven't
had time to fix it yet, but I'll post something when I do (if no one
else gets there first).  Anyway, I just want to say that you're not the
only ones with Gnome issues.

Wishing the Gnome people would document these things better,


Yaakov Nemoy wrote:
> 2008/12/5 Jan Müller <mueller at imt.uni-luebeck.de>:
>> (Warning: As pointed out below my knowledge of Haskell, Xmonad and Linux is very limited, so please bear with me)
>> Short version:
>> ------
>> Getting xmonad up and running under Fedora 10 in combination with Gnome is not straightforward. After several hours I found a solution which is posted below. It would be nice if someone would update the Wiki page accordingly.
> Jan,
> Are you continuing to have problems?  I'm working on Xmonad for Fedora
> 10 as well, and i'm getting some very strange behavior due to the new
> version of Gnome.
> <snip>
>> First I was looking for precompiled packages for 64bit Fedora 10 but in the end I had to compile everything by myself. After an hour or so I got a file called xmonad in /usr/local/bin/. In order to test it I did a
>> killall metacity; xmonad &
>> with the old xmonad.hs from my previous Ubuntu installation. Besides some cryptic warnings (in the console window where I startedxmonad) everything worked fine. (I could not find any occurence of these warnings anywhere, so if someone is interested I can have a second look and post them on the list)
>> After this the real trouble begun:
>> Essentially all available tips on how to replace metacity with xmonad (or any other window manager) do _not_ work under Fedora 10!
>> Some things I tried:
>> - .gnomerc
> Deprecated in the new Gnome.
>> - .xinit / .xsession
> Fedora will ignore these unless you have 'xorg-x11-xinit-session'
> installed.  This will give you an option at the Login Screen (gdm) to
> use a user defined session, which can be anything you put in
> ~/.xsession.  The problem there, is that Gnome still does its own
> thing to start a window manager.
>> - the stuff described under "2.2 gnome-session" on [1]
> This is deprecated, and we need a working solution before we can fix this.
>> While reading [2] I got the impression that this problem is not restricted to xmonad.
> I'm getting weirder behavior from this, more on that below.
>> After searching some more I stumbled onto the first three paragraphs on [3]. Unfortunately the tips given there are not complete, but after finding [4] I was able to combine both approaches and make it work (at least for me) :)
>> First step:
>> ------
>> create a file called Xmonad.desktop in /usr/share/applications which contains the following:
>> [Desktop Entry]
>> Type=Application
>> Encoding=UTF-8
>> Name=Xmonad
>> # change this path according to your xmonad binary
>> Exec=/usr/local/bin/xmonad
>> NoDisplay=true
>> X-GNOME-WMName=Xmonad
>> X-GNOME-Bugzilla-Bugzilla=XMonad
>> X-GNOME-Bugzilla-Product=xmonad
>> X-GNOME-Bugzilla-Component=general
>> X-GNOME-Autostart-Phase=WindowManager
>> X-GNOME-Provides=windowmanager
>> X-GNOME-Autostart-Notify=true
>> I copied Metacity.desktop and replaced some lines. I'm sure some of these lines can be removed but since this works for me without any problems I'm not going to put more time in this.
>> Second step:
>> ------
>> Use gconf2 or gconf-edit to set /desktop/gnome/applications/window_manager to "xmonad"
>> It seems that this key is deprecated (see [3]) but (at least for me) it's the only way to get it work.
> The correct key is:
> /desktop/gnome/session/required_components/windowmanager
> as far as i can tell.
> I'm having a stranger problem though, where xmonad will suddenly
> 'disappear'.  I had thought it segfaulted at first, until i did a bit
> of tinkering.  At one point, i loaded Gnome with an older version of
> the xmonad-x86_64-linux binary in my ~/.xmonad/ directory.  Then i
> stuck in a fresh new config, recompiled it, and loaded it up.  It
> lasted for about four minutes, until it disappeared. Instead of being
> stuck with no window manager, i was actually stuck with my older
> binary, which was clearly fighting it out with the newer one.  I tried
> loading in another one, to see what would happen, and i got:
> yankee at koan ~/.xmonad $ ./xmonad-x86_64-linux
> X Error of failed request:  BadAccess (attempt to access private
> resource denied)
>   Major opcode of failed request:  2 (X_ChangeWindowAttributes)
>   Serial number of failed request:  7
> ps showed that there were several processes running. I killed them
> all, ran a clean one, and i've been problem free.
> Observations and Theories:
> 1) Xmonad's being declared in two places, in /usr/share/applications
> and in gconf.
> 2) Xmonad's being loaded more than once.
> 3) Metacity has the ability to --replace itself and/or shutdown when
> more than one window manager is around.
> 4) Xmonad has the ability to do weird things when more than one
> instance is around.
> 5) I can't actively coerce more than one Xmonad into existence simultaneously
> 6) When i was using the older binary, launched from Gnome as a window
> manager, i couldn't use key-commands that would 'spawn nautilus'.  Nor
> could i get it to spawn from gmrun that was equally spawned from
> xmonad.  The only way i could get it to load is either through the
> gnome-panel menus or from opening a terminal window and calling it
> there.
> Conclusion:
> Gnome is doing something pretty weird in loading a WM.
> Any comments?
> _______________________________________________
> xmonad mailing list
> xmonad at haskell.org
> http://www.haskell.org/mailman/listinfo/xmonad

More information about the xmonad mailing list