import XMonad import XMonad.Util.EZConfig (additionalKeysP) import XMonad.Hooks.DynamicLog import XMonad.Hooks.StatusBar import XMonad.Hooks.StatusBar.PP import XMonad.Hooks.EwmhDesktops import XMonad.Util.SpawnOnce (spawnOnce) main = do xmonad . ewmhFullscreen . ewmh . xmobarProp $ def { terminal = myTerminal , modMask = myModMask , borderWidth = myBorderWidth , focusedBorderColor = myFocusedBorderColor , normalBorderColor = myNormalBorderColor , startupHook = myStartupHook } `additionalKeysP` myKeybindings myTerminal = "alacritty" myModMask = mod4Mask myBorderWidth = 5 myEmacs = "emacsclient -c -a 'emacs' " myBrowser = "firefox" myFocusedBorderColor = "#749F82" myNormalBorderColor = "#425F57" myWallpaper = "/home/reo/Videos/wp-hs.png" myStartupHook :: X () myStartupHook = do spawnOnce "/usr/bin/xmobar" spawn $ "feh --bg-scale " ++ myWallpaper myKeybindings :: [(String, X())] myKeybindings = [ ("M-e", spawn myEmacs) , ("M-f", spawn myBrowser) , ("", spawn "brightnessctl s +4%") , ("", spawn "brightnessctl s 4%-") , ("", spawn "amixer -q sset Master 3%+") , ("", spawn "amixer -q sset Master 3%-") , ("M-", spawn myTerminal) ]