1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
import XMonad
import XMonad.Config
import XMonad.Hooks.EwmhDesktops (ewmh)
import XMonad.Hooks.ManageDocks
import XMonad.Layout.Spiral
import XMonad.Util.CustomKeys (customKeys)
delKeys conf@(XConfig {modMask = modMask}) = [(modMask, xK_p)]
insKeys :: XConfig l -> [((KeyMask, KeySym), X ())]
insKeys conf@(XConfig {modMask = modMask}) =
[ ((0, xK_F5), spawn "xbacklight -dec 1")
, ((0, xK_F6), spawn "xbacklight -inc 1")
, ((modMask, xK_o), spawn "dmenu_run")
, ((modMask, xK_p), spawn "${SHELL:-\"/bin/sh\"} -c passmenu &")
, ((modMask, xK_y), spawn "passmenu &")
]
myLayout = spiral (6 / 7)
myWorkspaces = ["1:mail", "2:org", "3:web"] ++ map show [4 .. 9] ++ ["0"]
myConf =
def
{ modMask = mod4Mask -- ^ super instead of alt
, normalBorderColor = "#eee8d4" -- ^ solarized base3
, focusedBorderColor = "#2aa198" -- ^ solarized cyan
, manageHook = manageDocks <+> manageHook defaultConfig
, layoutHook = avoidStruts $ myLayout ||| layoutHook defaultConfig
, terminal = "/home/ben/.nix-profile/bin/xterm"
, keys = customKeys delKeys insKeys
, workspaces = myWorkspaces
}
main = xmonad $ ewmh $ docks $ myConf
|