diff options
Diffstat (limited to 'src/lib/XMonad/Custom/Config.hs')
-rw-r--r-- | src/lib/XMonad/Custom/Config.hs | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/lib/XMonad/Custom/Config.hs b/src/lib/XMonad/Custom/Config.hs new file mode 100644 index 0000000..84f4069 --- /dev/null +++ b/src/lib/XMonad/Custom/Config.hs @@ -0,0 +1,54 @@ +{-# OPTIONS_GHC -Wno-missing-signatures #-} + +-- | +-- Module : XMonad.Custom.Config +-- Description : Configuration entrypoint to be passed to executable +-- Copyright : (c) Azat Bahawi 2018-2021 +-- SPDX-License-Identifier : GPL-3.0-or-later +-- Maintainer : azahi@teknik.io +-- Stability : experimental +-- Portability : non-portable +-- + +module XMonad.Custom.Config + ( myConfig + ) where + +import Flow +import XMonad +import XMonad.Actions.Navigation2D +import qualified XMonad.Custom.Bindings as C +import qualified XMonad.Custom.Event as C +import qualified XMonad.Custom.Layout as C +import qualified XMonad.Custom.Manage as C +import qualified XMonad.Custom.Misc as C +import qualified XMonad.Custom.Navigation as C +import qualified XMonad.Custom.Theme as C +import qualified XMonad.Custom.Workspaces as C +import XMonad.Hooks.EwmhDesktops +import XMonad.Hooks.ManageDocks +import XMonad.Hooks.UrgencyHook +import XMonad.Layout.IndependentScreens + +myConfig = do + screens <- countScreens + def { borderWidth = C.border + , workspaces = C.myWorkspaces screens + , layoutHook = C.layoutHook + , terminal = C.term C.applications + , normalBorderColor = C.colorN + , focusedBorderColor = C.colorF + , modMask = C.modMask + , keys = C.keys + , mouseBindings = C.mouseBindings + , manageHook = C.manageHook + , handleEventHook = C.handleEventHook + , focusFollowsMouse = False + , clickJustFocuses = False + } + |> withUrgencyHook (borderUrgencyHook C.red1) + |> withNavigation2DConfig C.myNavigation2DConfig + |> ewmh + |> ewmhFullscreen + |> docks + |> (return :: a -> IO a) |