xmonad.hs:17:29: Not in scope: `ewmhDesktopsLayout'
Конфиг:
Код: Выделить всё
import XMonad
import qualified Data.Map as M
import XMonad.Hooks.ManageDocks
import XMonad.Hooks.EwmhDesktops
myTerminal = "Terminal"
myKeys conf@(XConfig {XMonad.modMask = modMask}) = M.fromList $
[
...
, ((modMask, xK_b), sendMessage ToggleStruts)
...
, ((modMask .|. shiftMask, xK_q), spawn "xfce4-session-logout")
...
]
main = xmonad defaultConfig
{ manageHook = manageDocks <+> manageHook defaultConfig
, logHook = ewmhDesktopsLogHook
, layoutHook = ewmhDesktopsLayout $ avoidStruts $ layoutHook defaultConfig
, modMask = mod4Mask
, keys = myKeys
}
Окружение: Gentoo, ghc-6.12.3,xmonad-0.9.1(оверлай Darcs), xmonad-contrib-0.9.1(оверлай Darcs)
А теперь то, что я смог накопать пытаясь решить эту проблему. При сборки xmoand или xmonad-contrib(сборка производиться до конца, без критических ошибок), получаю множество варнингов, привожу код:
Код: Выделить всё
[1 of 8] Compiling XMonad.StackSet ( XMonad/StackSet.hs, dist/build/XMonad/StackSet.o )
XMonad/StackSet.hs:54:0:
Warning: Module `Prelude' is deprecated:
You are using the old package `base' version 3.x.
Future GHC versions will not support base version 3.x. You
should update your code to use the new base version 4.x.
[2 of 8] Compiling XMonad.Core ( XMonad/Core.hs, dist/build/XMonad/Core.o )
XMonad/Core.hs:35:0:
Warning: Module `Prelude' is deprecated:
You are using the old package `base' version 3.x.
Future GHC versions will not support base version 3.x. You
should update your code to use the new base version 4.x.
XMonad/Core.hs:36:26:
Warning: In the use of `catch'
(imported from Control.Exception, but defined in base:Control.OldException):
Deprecated: "Future versions of base will not support the old exceptions style. Please switch to extensible exceptions."
XMonad/Core.hs:36:33:
Warning: In the use of `try'
(imported from Control.Exception, but defined in base:Control.OldException):
Deprecated: "Future versions of base will not support the old exceptions style. Please switch to extensible exceptions."
XMonad/Core.hs:36:38:
Warning: In the use of `bracket'
(imported from Control.Exception, but defined in base:Control.OldException):
Deprecated: "Future versions of base will not support the old exceptions style. Please switch to extensible exceptions."
XMonad/Core.hs:36:54:
Warning: In the use of `finally'
(imported from Control.Exception, but defined in base:Control.OldException):
Deprecated: "Future versions of base will not support the old exceptions style. Please switch to extensible exceptions."
XMonad/Core.hs:36:63:
Warning: In the use of data constructor `ExitException'
(imported from Control.Exception, but defined in base:Control.OldException):
Deprecated: "Future versions of base will not support the old exceptions style. Please switch to extensible exceptions."
XMonad/Core.hs:367:16:
Warning: A do-notation statement discarded a result of type base:System.Posix.Types.ProcessGroupID.
Suppress this warning by saying "_ <- createSession",
or by using the flag -fno-warn-unused-do-bind
XMonad/Core.hs:372:8:
Warning: A do-notation statement discarded a result of type base:System.Posix.Types.Fd.
Suppress this warning by saying "_ <- dupTo fd stdInput",
or by using the flag -fno-warn-unused-do-bind
XMonad/Core.hs:438:12:
Warning: A do-notation statement discarded a result of type ProcessID.
Suppress this warning by saying "_ <- ($)
forkProcess
executeFile
"xmessage"
ghc-prim:GHC.Bool.True
["-default", "okay", msg]
(base:Data.Maybe.Nothing)",
or by using the flag -fno-warn-unused-do-bind
XMonad/Core.hs:467:4:
Warning: A do-notation statement discarded a result of type Handler.
Suppress this warning by saying "_ <- installHandler
openEndedPipe
System.Posix.Signals.Ignore
(base:Data.Maybe.Nothing)",
or by using the flag -fno-warn-unused-do-bind
XMonad/Core.hs:468:4:
Warning: A do-notation statement discarded a result of type Handler.
Suppress this warning by saying "_ <- installHandler
sigCHLD
System.Posix.Signals.Ignore
(base:Data.Maybe.Nothing)",
or by using the flag -fno-warn-unused-do-bind
XMonad/Core.hs:469:4:
Warning: A do-notation statement discarded a result of type Either
Exception ().
Suppress this warning by saying "_ <- ($)
try
($)
fix
\ more
-> do { x <- getAnyProcessStatus
ghc-prim:GHC.Bool.False
ghc-prim:GHC.Bool.False;
when (isJust x) more }",
or by using the flag -fno-warn-unused-do-bind
XMonad/Core.hs:476:4:
Warning: A do-notation statement discarded a result of type Handler.
Suppress this warning by saying "_ <- installHandler
openEndedPipe
System.Posix.Signals.Default
(base:Data.Maybe.Nothing)",
or by using the flag -fno-warn-unused-do-bind
XMonad/Core.hs:477:4:
Warning: A do-notation statement discarded a result of type Handler.
Suppress this warning by saying "_ <- installHandler
sigCHLD
System.Posix.Signals.Default
(base:Data.Maybe.Nothing)",
or by using the flag -fno-warn-unused-do-bind
[3 of 8] Compiling XMonad.Layout ( XMonad/Layout.hs, dist/build/XMonad/Layout.o )
XMonad/Layout.hs:1:0:
Warning: Module `Prelude' is deprecated:
You are using the old package `base' version 3.x.
Future GHC versions will not support base version 3.x. You
should update your code to use the new base version 4.x.
[4 of 8] Compiling XMonad.Operations ( XMonad/Operations.hs, dist/build/XMonad/Operations.o )
XMonad/Operations.hs:1:0:
Warning: Module `Prelude' is deprecated:
You are using the old package `base' version 3.x.
Future GHC versions will not support base version 3.x. You
should update your code to use the new base version 4.x.
XMonad/Operations.hs:36:0:
Warning: In the use of `C.handle'
(imported from Control.Exception, but defined in base:Control.OldException):
Deprecated: "Future versions of base will not support the old exceptions style. Please switch to extensible exceptions."
XMonad/Operations.hs:38:0:
Warning: The import of `System.IO' is redundant
except perhaps to import instances from `System.IO'
To import instances alone, use: import System.IO()
XMonad/Operations.hs:370:4:
Warning: A do-notation statement discarded a result of type Maybe
(Layout Window).
Suppress this warning by saying "_ <- handleMessage
(W.layout ws)
(SomeMessage XMonad.Core.ReleaseResources)",
or by using the flag -fno-warn-unused-do-bind
XMonad/Operations.hs:477:12:
Warning: A do-notation statement discarded a result of type GrabStatus.
Suppress this warning by saying "_ <- ($)
io
grabPointer
d
root
ghc-prim:GHC.Bool.False
(buttonReleaseMask .|. pointerMotionMask)
grabModeAsync
grabModeAsync
none
none
currentTime",
or by using the flag -fno-warn-unused-do-bind
[5 of 8] Compiling XMonad.ManageHook ( XMonad/ManageHook.hs, dist/build/XMonad/ManageHook.o )
XMonad/ManageHook.hs:21:0:
Warning: Module `Prelude' is deprecated:
You are using the old package `base' version 3.x.
Future GHC versions will not support base version 3.x. You
should update your code to use the new base version 4.x.
XMonad/ManageHook.hs:25:26:
Warning: In the use of `bracket'
(imported from Control.Exception, but defined in base:Control.OldException):
Deprecated: "Future versions of base will not support the old exceptions style. Please switch to extensible exceptions."
XMonad/ManageHook.hs:25:35:
Warning: In the use of `catch'
(imported from Control.Exception, but defined in base:Control.OldException):
Deprecated: "Future versions of base will not support the old exceptions style. Please switch to extensible exceptions."
[6 of 8] Compiling XMonad.Config ( XMonad/Config.hs, dist/build/XMonad/Config.o )
XMonad/Config.hs:1:0:
Warning: Module `Prelude' is deprecated:
You are using the old package `base' version 3.x.
Future GHC versions will not support base version 3.x. You
should update your code to use the new base version 4.x.
[7 of 8] Compiling XMonad.Main ( dist/build/XMonad/Main.hs, dist/build/XMonad/Main.o )
XMonad/Main.hsc:1:0:
Warning: Module `Prelude' is deprecated:
You are using the old package `base' version 3.x.
Future GHC versions will not support base version 3.x. You
should update your code to use the new base version 4.x.
XMonad/Main.hsc:59:4:
Warning: A do-notation statement discarded a result of type Ptr
CChar.
Suppress this warning by saying "_ <- ($)
withCString "" c_setlocale (6)",
or by using the flag -fno-warn-unused-do-bind
XMonad/Main.hsc:123:4:
Warning: A do-notation statement discarded a result of type (ghc-prim:GHC.Prim.Any,
XState).
Suppress this warning by saying "_ <- ($)
allocaXEvent
\ e -> ($)
runX cf st
do { grabKeys;
grabButtons;
.... }",
or by using the flag -fno-warn-unused-do-bind
XMonad/Main.hsc:143:12:
Warning: A do-notation statement discarded a result of type Maybe
().
Suppress this warning by saying "_ <- ($)
userCode startupHook initxmc",
or by using the flag -fno-warn-unused-do-bind
[8 of 8] Compiling XMonad ( XMonad.hs, dist/build/XMonad.o )
XMonad.hs:1:0:
Warning: Module `Prelude' is deprecated:
You are using the old package `base' version 3.x.
Future GHC versions will not support base version 3.x. You
should update your code to use the new base version 4.x.
Registering xmonad-0.9.1...
Понятно, что трабл c пакетом base, который входит в ghc, используется 3 версия а нужна 4, но при конфигурировании xmonad:
Dependency base ==3.*: using base-3.0.3.2
Почему ?? Подскажите что делаю не так. Куда копать дальше.
И еще:
Код: Выделить всё
>>> Install xmonad-0.9.1 into /var/tmp/portage/x11-wm/xmonad-0.9.1/image/ category x11-wm
Installing library in
/var/tmp/portage/x11-wm/xmonad-0.9.1/image/usr/lib64/xmonad-0.9.1/ghc-6.12.3
Installing executable(s) in /var/tmp/portage/x11-wm/xmonad-0.9.1/image/usr/bin
Creating package registration file:
/var/tmp/portage/x11-wm/xmonad-0.9.1/temp/xmonad-0.9.1.conf
Reading package info from stdin ... done.
xmonad-0.9.1: dependency "X11-1.5.0.0-7b516147b5fc52e2efe78cdf1358f527" doesn't exist (ignoring)
xmonad-0.9.1: dependency "base-3.0.3.2-33c49b5f57a891ca80151e2f4f33f82c" doesn't exist (ignoring)
xmonad-0.9.1: dependency "containers-0.3.0.0-7be04792060ce1514c52e2cb13a5c18a" doesn't exist (ignoring)
xmonad-0.9.1: dependency "directory-1.0.1.1-fcaf1f7664193e0ad39e183ab8696baa" doesn't exist (ignoring)
xmonad-0.9.1: dependency "filepath-1.1.0.4-1425f312faf5b8e9f4babf887e252326" doesn't exist (ignoring)
xmonad-0.9.1: dependency "mtl-1.1.0.2-336254fecf8a77054f76cb33671a5177" doesn't exist (ignoring)
xmonad-0.9.1: dependency "process-1.0.1.3-b553ffb533a7014d695ce14e638736d9" doesn't exist (ignoring)
xmonad-0.9.1: dependency "unix-2.4.0.2-2bb6246580a1d8f21582c4265d987876" doesn't exist (ignoring)
Writing new package config file... done.
Заранее всем спасибо за помощь :