lib/XMonad/Config/FT/Layouts.hs:19:23:
No instance for (XMonad.Layout.LayoutModifier.LayoutModifier
FullscreenFull a0)
arising from a use of `smartBorders'
Possible fix:
add an instance declaration for
(XMonad.Layout.LayoutModifier.LayoutModifier FullscreenFull a0)
In the expression: smartBorders
In the expression: smartBorders $ fullscreenFull Full
In an equation for `fullScreenNoBorders':
fullScreenNoBorders = smartBorders $ fullscreenFull Full
Why are you using Full there? There's no real point in modifying it to add the ability to switch the layout to Full when a window wants to be fullscreen; it's just a somewhat expensive way to say "smartBorders Full".
(This is not, however, the problem; it should compile, it's just kinda pointless.)
lib/XMonad/Config/FT/Layouts.hs:25:45:
No instance for (XMonad.Core.LayoutClass Circle a0)
arising from a use of `|||'
This looks suspicious to me. Circle *is* an instance of LayoutClass... but it may be an instance of the *wrong* LayoutClass. Which is to say, you may have multiple versions of xmonad and possibly xmonad-contrib registered with ghc, and the instances are being pulled from different versions and don't match up as a result. (Normally you see this when package versions suddenly start showing up as prefixes in type or typeclass names, but there are screw cases where you can't see this... such as when it's only typeclass instances that mismatch.)
Use "ghc-pkg list" to make sure there is exactly one xmonad and exactly one XMonadContrib and that they match each other.
--