Discussion:
[xmonad] Couldn't match type ‘M.Map (KeyMask, KeySym) (X ())’ with ‘containers-0.5.11.0:Data.Map.Internal.Map (ButtonMask, KeySym) (X ())’
Eyal Erez
2018-10-23 21:17:09 UTC
Permalink
Hi,

I've just recently upgraded my system and now I'm getting the following
error:
xmonad.hs:454:32: error:
• Couldn't match type ‘M.Map (KeyMask, KeySym) (X ())’
with ‘containers-0.5.11.0:Data.Map.Internal.Map
(ButtonMask, KeySym) (X ())’
NB: ‘containers-0.5.11.0:Data.Map.Internal.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.5.11.0’
‘M.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.6.0.1’
Expected type: XConfig Layout
-> containers-0.5.11.0:Data.Map.Internal.Map
(ButtonMask, KeySym) (X ())
Actual type: XConfig Layout -> M.Map (KeyMask, KeySym) (X ())
• In the ‘keys’ field of a record
In the expression:
defaultConfig
{modMask = mod1Mask, keys = myKeys,
manageHook = manageDocks <+> composeAll myManageHook,
startupHook = takeTopFocus >> setWMName "LG3D",
layoutHook = myLayout,
terminal = "rxvt-unicode -e $HOME/etc/tmux/init",
workspaces = ["web", "emacs", "dev", ....],
focusedBorderColor = myActiveBorderColor,
normalBorderColor = myInactiveBorderColor, borderWidth = 3}
In an equation for ‘myConfig’:
myConfig
= defaultConfig
{modMask = mod1Mask, keys = myKeys,
manageHook = manageDocks <+> composeAll myManageHook,
startupHook = takeTopFocus >> setWMName "LG3D",
layoutHook = myLayout,
terminal = "rxvt-unicode -e $HOME/etc/tmux/init",
workspaces = ["web", "emacs", ....],
focusedBorderColor = myActiveBorderColor,
normalBorderColor = myInactiveBorderColor, borderWidth = 3}
|
454 | , keys = myKeys
| ^^^^^^

My knowledge of Haskell is not good enough to figure this out.

My xmonad.hs file is available here: https://pastebin.com/rBNUFf1k

Thank you,
--
*Eyal Erez <*****@gmail.com* <***@gmail.com>*>*

There are 10 types of people, those who know binary and those who don't.
Brandon Allbery
2018-10-23 21:22:18 UTC
Permalink
The key part is

NB: ‘containers-0.5.11.0:Data.Map.Internal.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.5.11.0’
‘M.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.6.0.1’

This suggests your xmonad and xmonad-contrib need to be rebuilt with the
new version of containers. Alternately, you will need to use ghc's
PackageImports extension to force your xmonad.hs to import Data.Map from
containers-0.5.11.0.
Post by Eyal Erez
Hi,
I've just recently upgraded my system and now I'm getting the following
• Couldn't match type ‘M.Map (KeyMask, KeySym) (X ())’
with ‘containers-0.5.11.0:Data.Map.Internal.Map
(ButtonMask, KeySym) (X ())’
NB: ‘containers-0.5.11.0:Data.Map.Internal.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.5.11.0’
‘M.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.6.0.1’
Expected type: XConfig Layout
-> containers-0.5.11.0:Data.Map.Internal.Map
(ButtonMask, KeySym) (X ())
Actual type: XConfig Layout -> M.Map (KeyMask, KeySym) (X ())
• In the ‘keys’ field of a record
defaultConfig
{modMask = mod1Mask, keys = myKeys,
manageHook = manageDocks <+> composeAll myManageHook,
startupHook = takeTopFocus >> setWMName "LG3D",
layoutHook = myLayout,
terminal = "rxvt-unicode -e $HOME/etc/tmux/init",
workspaces = ["web", "emacs", "dev", ....],
focusedBorderColor = myActiveBorderColor,
normalBorderColor = myInactiveBorderColor, borderWidth = 3}
myConfig
= defaultConfig
{modMask = mod1Mask, keys = myKeys,
manageHook = manageDocks <+> composeAll myManageHook,
startupHook = takeTopFocus >> setWMName "LG3D",
layoutHook = myLayout,
terminal = "rxvt-unicode -e $HOME/etc/tmux/init",
workspaces = ["web", "emacs", ....],
focusedBorderColor = myActiveBorderColor,
normalBorderColor = myInactiveBorderColor, borderWidth = 3}
|
454 | , keys = myKeys
| ^^^^^^
My knowledge of Haskell is not good enough to figure this out.
My xmonad.hs file is available here: https://pastebin.com/rBNUFf1k
Thank you,
--
There are 10 types of people, those who know binary and those who don't.
_______________________________________________
xmonad mailing list
http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad
--
brandon s allbery kf8nh
***@gmail.com
Eyal Erez
2018-10-25 14:32:35 UTC
Permalink
Thank you. Reinstalling solved the problem.

Eyal Erez <***@gmail.com>

There are 10 types of people, those who know binary and those who don't.
Post by Brandon Allbery
The key part is
NB: ‘containers-0.5.11.0:Data.Map.Internal.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.5.11.0’
‘M.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.6.0.1’
This suggests your xmonad and xmonad-contrib need to be rebuilt with the
new version of containers. Alternately, you will need to use ghc's
PackageImports extension to force your xmonad.hs to import Data.Map from
containers-0.5.11.0.
Post by Eyal Erez
Hi,
I've just recently upgraded my system and now I'm getting the following
• Couldn't match type ‘M.Map (KeyMask, KeySym) (X ())’
with ‘containers-0.5.11.0:Data.Map.Internal.Map
(ButtonMask, KeySym) (X ())’
NB: ‘containers-0.5.11.0:Data.Map.Internal.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.5.11.0’
‘M.Map’
is defined in ‘Data.Map.Internal’ in package
‘containers-0.6.0.1’
Expected type: XConfig Layout
-> containers-0.5.11.0:Data.Map.Internal.Map
(ButtonMask, KeySym) (X ())
Actual type: XConfig Layout -> M.Map (KeyMask, KeySym) (X ())
• In the ‘keys’ field of a record
defaultConfig
{modMask = mod1Mask, keys = myKeys,
manageHook = manageDocks <+> composeAll myManageHook,
startupHook = takeTopFocus >> setWMName "LG3D",
layoutHook = myLayout,
terminal = "rxvt-unicode -e $HOME/etc/tmux/init",
workspaces = ["web", "emacs", "dev", ....],
focusedBorderColor = myActiveBorderColor,
normalBorderColor = myInactiveBorderColor, borderWidth = 3}
myConfig
= defaultConfig
{modMask = mod1Mask, keys = myKeys,
manageHook = manageDocks <+> composeAll myManageHook,
startupHook = takeTopFocus >> setWMName "LG3D",
layoutHook = myLayout,
terminal = "rxvt-unicode -e $HOME/etc/tmux/init",
workspaces = ["web", "emacs", ....],
focusedBorderColor = myActiveBorderColor,
normalBorderColor = myInactiveBorderColor, borderWidth = 3}
|
454 | , keys = myKeys
| ^^^^^^
My knowledge of Haskell is not good enough to figure this out.
My xmonad.hs file is available here: https://pastebin.com/rBNUFf1k
Thank you,
--
There are 10 types of people, those who know binary and those who don't.
_______________________________________________
xmonad mailing list
http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad
--
brandon s allbery kf8nh
Loading...