strange application crashes with gnome/xmonad

I'm mystified by a problem I'm having that only seems to appear when using xmonad with gnome, and I am hoping that someone here can help debug the issue. I'm running xmonad with gnome per the instructions here: http://www.haskell.org/haskellwiki/Xmonad/Using_xmonad_in_Gnome#Setting_up_G... specifically, I set up an xmonad.desktop file in my user's applications dir, and I created another file in xsessions that invokes the following xmonad.start: ---- xmonad.start: -------------------------------------------------------------- #!/bin/bash export PATH=$PATH:$HOME/.cabal/bin export WINDOW_MANAGER=xmonad gnome-session ---------------------------------------------------------------------------------------- I'm running the latest xmonad (0.9), and my xmonad.hs is included below. The problem is that many applications crash when I change desktops, but *only* when docked with the external display oriented so that the display is above my laptop's lcd. No other orientation causes problems - putting the screen to either side, or below the laptop display works just fine. I also don't experience stability issues with gnome + metacity when the monitors are in this configuration. Furthermore, this is the second OS install that has exhibited this problem (both were Debian testing installs, but with different versions of testing). I've posted my .xsession-errors file after having a gnome terminal and thunderbird crash while switching desktops on hpaste: http://hpaste.org/44316/weird_app_crashes_with_xmonad This has been going on for over a year now - I ran non-gnome tools for quite a while, but I'd like to give them a shot again, since other (more annoying) stability issues arise when I yank bits of gnome out of their usual environment (e.g., gnome-terminals crashing every time I dock/undock, etc.). Thanks! Rogan ---- xmonad.hs------------------------------------------------------------------- import XMonad import XMonad.Config.Gnome import XMonad.Layout.NoBorders import XMonad.Hooks.DynamicLog import XMonad.Hooks.ManageDocks import XMonad.Hooks.FloatNext import XMonad.Util.Run import XMonad.Util.EZConfig import System.IO import XMonad.Hooks.SetWMName import qualified XMonad.StackSet as W main = xmonad gnomeConf gnomeConf = gnomeConfig { modMask = mod4Mask , terminal = "gnome-terminal" , layoutHook = smartBorders (layoutHook gnomeConfig) , manageHook = (manageHook gnomeConfig) <+> floatManageHooks <+> doF W.focusDown <+> (composeAll . concat $ [ [className =? "Do" --> doIgnore] ]) , startupHook = setWMName "LG3D" -- LG3D is an xmonad compatible window manager that the JVM is aware of } `additionalKeys` [ ((mod4Mask .|. shiftMask, xK_z), spawn "xscreensaver-command -lock") -- M-S-z lock screen , ((controlMask, xK_Print), spawn "sleep 0.2; scrot -s") -- C-PrintScreen runs scrot. , ((mod4Mask, xK_p), spawn "dmenu_run") -- M-p runs dmenu_run (like the default config..) , ((0, xK_Print), spawn "scrot") ] floatManageHooks = composeAll [ className =? "Pandora" --> doFloat -- make the evolution get mail checker float. , title =? "Send & Receive Mail" --> (doFloat <+> doF W.focusDown) , className =? "Firefox" <&&> resource =? "Dialog" --> doFloat , className =? "Firefox" <&&> resource =? "Extension" --> doFloat , className =? "Firefox" <&&> resource =? "Browser" --> doFloat , className =? "Firefox" <&&> resource =? "Download" --> doFloat , title =? "Open..." --> doFloat ]

On Fri, Feb 25, 2011 at 3:30 PM, Rogan Creswick
I'm mystified by a problem I'm having that only seems to appear when using xmonad with gnome, and I am hoping that someone here can help debug the issue.
I found a workaround - in the event anyone else has this problem: It seems that the crashing occurs when a gnome-panel exists on a shared monitor edge. Placing my (one) panel on the bottom of the external display edge seems to have stopped things from crashing. This *is* clearly a gnome/gtk bug of some sort, but I would still like to figure out some more details so I can submit a report (and xmonad is the only tool I have for reproduction right now). --Rogan
I'm running xmonad with gnome per the instructions here: http://www.haskell.org/haskellwiki/Xmonad/Using_xmonad_in_Gnome#Setting_up_G... specifically, I set up an xmonad.desktop file in my user's applications dir, and I created another file in xsessions that invokes the following xmonad.start:
---- xmonad.start: -------------------------------------------------------------- #!/bin/bash
export PATH=$PATH:$HOME/.cabal/bin export WINDOW_MANAGER=xmonad gnome-session ----------------------------------------------------------------------------------------
I'm running the latest xmonad (0.9), and my xmonad.hs is included below.
The problem is that many applications crash when I change desktops, but *only* when docked with the external display oriented so that the display is above my laptop's lcd. No other orientation causes problems - putting the screen to either side, or below the laptop display works just fine. I also don't experience stability issues with gnome + metacity when the monitors are in this configuration. Furthermore, this is the second OS install that has exhibited this problem (both were Debian testing installs, but with different versions of testing).
I've posted my .xsession-errors file after having a gnome terminal and thunderbird crash while switching desktops on hpaste: http://hpaste.org/44316/weird_app_crashes_with_xmonad
This has been going on for over a year now - I ran non-gnome tools for quite a while, but I'd like to give them a shot again, since other (more annoying) stability issues arise when I yank bits of gnome out of their usual environment (e.g., gnome-terminals crashing every time I dock/undock, etc.).
Thanks! Rogan
---- xmonad.hs------------------------------------------------------------------- import XMonad import XMonad.Config.Gnome import XMonad.Layout.NoBorders import XMonad.Hooks.DynamicLog import XMonad.Hooks.ManageDocks import XMonad.Hooks.FloatNext import XMonad.Util.Run import XMonad.Util.EZConfig import System.IO import XMonad.Hooks.SetWMName
import qualified XMonad.StackSet as W
main = xmonad gnomeConf
gnomeConf = gnomeConfig { modMask = mod4Mask , terminal = "gnome-terminal" , layoutHook = smartBorders (layoutHook gnomeConfig) , manageHook = (manageHook gnomeConfig) <+> floatManageHooks <+> doF W.focusDown <+> (composeAll . concat $ [ [className =? "Do" --> doIgnore] ]) , startupHook = setWMName "LG3D" -- LG3D is an xmonad compatible window manager that the JVM is aware of } `additionalKeys` [ ((mod4Mask .|. shiftMask, xK_z), spawn "xscreensaver-command -lock") -- M-S-z lock screen , ((controlMask, xK_Print), spawn "sleep 0.2; scrot -s") -- C-PrintScreen runs scrot. , ((mod4Mask, xK_p), spawn "dmenu_run") -- M-p runs dmenu_run (like the default config..) , ((0, xK_Print), spawn "scrot") ]
floatManageHooks = composeAll [ className =? "Pandora" --> doFloat -- make the evolution get mail checker float. , title =? "Send & Receive Mail" --> (doFloat <+> doF W.focusDown) , className =? "Firefox" <&&> resource =? "Dialog" --> doFloat , className =? "Firefox" <&&> resource =? "Extension" --> doFloat , className =? "Firefox" <&&> resource =? "Browser" --> doFloat , className =? "Firefox" <&&> resource =? "Download" --> doFloat , title =? "Open..." --> doFloat ]
participants (1)
-
Rogan Creswick