[xmonad] Issue 91 in xmonad: DynamicLog causes xmonad to hang when
the output pipe is full
codesite-noreply at google.com
codesite-noreply at google.com
Sun Feb 15 19:19:33 EST 2009
Comment #5 on issue 91 by wirtwolff: DynamicLog causes xmonad to hang when
the output pipe is full
http://code.google.com/p/xmonad/issues/detail?id=91
Hmm, unfortunately, looks like this needs to be re-opened.
Run either of these configs with latest darcs, or Config.Sjanssen, or
anything that spawnPipes and hPutStrLn's to a status bar. Then kill the bar
and hold down mod-j till xmonad freezes. Asgaroth worked out can find pipe
fd via lsof, so to clear it to restart xmonad can use something like:
ls /proc/`pgrep xmonad`/fd/`lsof | grep xmonad | \
egrep '[ur] *FIFO' | sed -n 's/.*\([0-9]\)[ur].*/\1/ p'`
and cat the appropriate pipe.
import XMonad
import XMonad.Hooks.DynamicLog
{-
import XMonad.Hooks.ManageDocks
import XMonad.Util.Run
import System.IO
main = do
h <- spawnPipe "xmobar"
xmonad $ defaultConfig
{ layoutHook = avoidStruts $ layoutHook defaultConfig
, logHook = dynamicLogWithPP $ xmobarPP { ppOutput = hPutStrLn h }
}
-} -- or equivalent plus kebinding--
main = xmonad =<< statusBar "xmobar" xmobarPP strutkey defaultConfig
where strutkey (XConfig {modMask = modm}) = (modm, xK_b)
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
More information about the xmonad
mailing list