about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAzat Bahawi <azahi@teknik.io>2019-12-02 18:04:34 +0300
committerAzat Bahawi <azahi@teknik.io>2019-12-02 18:04:34 +0300
commitdaaa4cf16f1561156537abc96317045b5f7e55d9 (patch)
tree82f7a7d16614b9cc9540899f9916807f8851cff9
parentSync (diff)
haddock, stylish-haskell, stylish-cabal
-rw-r--r--Setup.hs12
-rw-r--r--src/Main.hs19
-rw-r--r--src/XMonad/Actions/FloatSnapSpaced.hs15
-rw-r--r--src/XMonad/Actions/PerConditionKeys.hs15
-rw-r--r--src/XMonad/Custom/Bindings.hs37
-rw-r--r--src/XMonad/Custom/Event.hs17
-rw-r--r--src/XMonad/Custom/Layout.hs17
-rw-r--r--src/XMonad/Custom/Log.hs19
-rw-r--r--src/XMonad/Custom/Manage.hs17
-rw-r--r--src/XMonad/Custom/Misc.hs15
-rw-r--r--src/XMonad/Custom/Navigation.hs15
-rw-r--r--src/XMonad/Custom/Projects.hs15
-rw-r--r--src/XMonad/Custom/Prompt.hs15
-rw-r--r--src/XMonad/Custom/Scratchpads.hs15
-rw-r--r--src/XMonad/Custom/Startup.hs17
-rw-r--r--src/XMonad/Custom/Theme.hs17
-rw-r--r--src/XMonad/Custom/Workspaces.hs17
-rw-r--r--xmonad-ng.cabal84
18 files changed, 172 insertions, 206 deletions
diff --git a/Setup.hs b/Setup.hs
new file mode 100644
index 0000000..9b18f13
--- /dev/null
+++ b/Setup.hs
@@ -0,0 +1,12 @@
+-- |
+-- Module      : Setup
+-- Copyright   : (c) 2018-2019 Azat Bahawi
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
+--
+
+import           Distribution.Simple
+
+main = defaultMain
diff --git a/src/Main.hs b/src/Main.hs
index 716e0a1..9cb5e98 100644
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -1,14 +1,11 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  Main
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : Main
+-- Copyright   : (c) 2018-2019 Azat Bahawi
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module Main where
 
@@ -38,8 +35,8 @@ main = xmonad
        $ withNavigation2DConfig C.navigation
        $ dynamicProjects C.projects
        $ def { borderWidth        = C.border
-             , workspaces         = C.workspaces -- TODO save WS state
-             , layoutHook         = C.layoutHook -- TODO save layout state and floating W position
+             , workspaces         = C.workspaces
+             , layoutHook         = C.layoutHook
              , terminal           = C.term C.applications
              , normalBorderColor  = C.colorN
              , focusedBorderColor = C.colorF
diff --git a/src/XMonad/Actions/FloatSnapSpaced.hs b/src/XMonad/Actions/FloatSnapSpaced.hs
index fb836e1..f43558a 100644
--- a/src/XMonad/Actions/FloatSnapSpaced.hs
+++ b/src/XMonad/Actions/FloatSnapSpaced.hs
@@ -1,14 +1,11 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Actions.FloatSnapSpaced
--- Copyright   :  (c) 2009 Anders Engstrom <ankaan@gmail.com>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Actions.FloatSnapSpaced
+-- Copyright   : (c) 2009 Anders Engstrom <ankaan@gmail.com>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Actions.FloatSnapSpaced
     ( snapSpacedMagicMove
diff --git a/src/XMonad/Actions/PerConditionKeys.hs b/src/XMonad/Actions/PerConditionKeys.hs
index 188fe96..2099e1d 100644
--- a/src/XMonad/Actions/PerConditionKeys.hs
+++ b/src/XMonad/Actions/PerConditionKeys.hs
@@ -1,14 +1,11 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Actions.PerConditionKeys
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Actions.PerConditionKeys
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Actions.PerConditionKeys
     ( XCond(..)
diff --git a/src/XMonad/Custom/Bindings.hs b/src/XMonad/Custom/Bindings.hs
index ab653dd..f48416a 100644
--- a/src/XMonad/Custom/Bindings.hs
+++ b/src/XMonad/Custom/Bindings.hs
@@ -1,16 +1,13 @@
 {-# LANGUAGE LambdaCase #-}
 
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Bindings
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Bindings
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Bindings
     ( keys
@@ -21,8 +18,8 @@ module XMonad.Custom.Bindings
 
 import qualified Data.Map                            as M
 import           System.Exit
-import           XMonad                              hiding (keys, modMask,
-                                                      mouseBindings)
+import           XMonad                              hiding ( keys, modMask,
+                                                       mouseBindings )
 import           XMonad.Actions.CopyWindow
 import           XMonad.Actions.CycleWS
 import           XMonad.Actions.DynamicProjects
@@ -174,7 +171,7 @@ keysSpawnables _ =
     , ("M-v"        , namedScratchpadAction scratchpads "volume")
     ]
 
-keysWindows :: XConfig Layout -> [(String, X())]
+keysWindows :: XConfig Layout -> [(String, X ())]
 keysWindows _ =
     [ ("M-d"   , kill)
     , ("M-S-d" , confirmPrompt hotPromptTheme "Kill all" killAll)
@@ -202,7 +199,7 @@ keysWindows _ =
     ++ zipKeys' "M-S-" arrowKeys directions windowToScreen True
     ++ zipKeys' "M-C-" arrowKeys directions screenSwap     True
 
-keysLayout :: XConfig Layout -> [(String, X())]
+keysLayout :: XConfig Layout -> [(String, X ())]
 keysLayout c =
     [ ("M-<Tab>"   , sendMessage NextLayout)
     , ("M-C-<Tab>" , toSubl NextLayout)
@@ -219,7 +216,7 @@ keysLayout c =
     , ("M-C-g"     , sendMessage $ Toggle GAPS) -- FIXME Breaks merged tabbed layout
     ]
 
-keysResize :: XConfig Layout -> [(String, X())]
+keysResize :: XConfig Layout -> [(String, X ())]
 keysResize _ =
     [ ("M-["     , tryMessageR_ (ExpandTowards L) Shrink)
     , ("M-]"     , tryMessageR_ (ExpandTowards R) Expand)
@@ -235,14 +232,10 @@ mouseBindings :: XConfig Layout -> M.Map (KeyMask, Button) (Window -> X ())
 mouseBindings XConfig {} = M.fromList
     [ ((modMask, button1), \w -> focus w
                                  >> F.mouseWindow F.position w
-                                 >> ifClick (snapSpacedMagicMove gapFull
-                                                (Just 50) (Just 50) w)
-                                 >> windows S.shiftMaster
-      )
+                                 >> ifClick (snapSpacedMagicMove gapFull (Just 50) (Just 50) w)
+                                 >> windows S.shiftMaster)
     , ((modMask, button3), \w -> focus w
                                  >> F.mouseWindow F.linear w
-                                 >> ifClick (snapMagicResize [L, R, U, D]
-                                                (Just 50) (Just 50) w)
-                                 >> windows S.shiftMaster
-      )
+                                 >> ifClick (snapMagicResize [L, R, U, D] (Just 50) (Just 50) w)
+                                 >> windows S.shiftMaster)
     ]
diff --git a/src/XMonad/Custom/Event.hs b/src/XMonad/Custom/Event.hs
index fa82bdf..fe24309 100644
--- a/src/XMonad/Custom/Event.hs
+++ b/src/XMonad/Custom/Event.hs
@@ -1,21 +1,18 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Event
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Event
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Event
     ( handleEventHook
     ) where
 
 import           Data.Monoid
-import           XMonad                              hiding (handleEventHook)
+import           XMonad                              hiding ( handleEventHook )
 import           XMonad.Custom.Scratchpads
 import           XMonad.Hooks.EwmhDesktops
 import           XMonad.Hooks.ManageDocks
diff --git a/src/XMonad/Custom/Layout.hs b/src/XMonad/Custom/Layout.hs
index 5da2cf6..738beeb 100644
--- a/src/XMonad/Custom/Layout.hs
+++ b/src/XMonad/Custom/Layout.hs
@@ -3,24 +3,21 @@
 {-# LANGUAGE TypeSynonymInstances  #-}
 {-# OPTIONS_GHC -Wno-missing-signatures #-}
 
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Layout
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Layout
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Layout
     ( layoutHook
     , CustomTransformers (..)
     ) where
 
-import           XMonad                              hiding (layoutHook)
+import           XMonad                              hiding ( layoutHook )
 import           XMonad.Custom.Theme
 import           XMonad.Hooks.ManageDocks
 import           XMonad.Layout.Accordion
diff --git a/src/XMonad/Custom/Log.hs b/src/XMonad/Custom/Log.hs
index ed4edc4..5a918c9 100644
--- a/src/XMonad/Custom/Log.hs
+++ b/src/XMonad/Custom/Log.hs
@@ -1,23 +1,18 @@
-{-# LANGUAGE LambdaCase #-}
-
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Log
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
---
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
+-- Module      : XMonad.Custom.Log
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
------------------------------------------------------------------------------
 
 module XMonad.Custom.Log
     ( logHook
     ) where
 
 import           System.IO
-import           XMonad                             hiding (logHook)
+import           XMonad                             hiding ( logHook )
 import           XMonad.Actions.CopyWindow
 import           XMonad.Custom.Theme
 import           XMonad.Hooks.CurrentWorkspaceOnTop
diff --git a/src/XMonad/Custom/Manage.hs b/src/XMonad/Custom/Manage.hs
index bbae103..d6c539f 100644
--- a/src/XMonad/Custom/Manage.hs
+++ b/src/XMonad/Custom/Manage.hs
@@ -1,20 +1,17 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Manage
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Manage
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Manage
     ( manageHook
     ) where
 
-import           XMonad                      hiding (manageHook)
+import           XMonad                      hiding ( manageHook )
 import           XMonad.Custom.Scratchpads
 import           XMonad.Hooks.InsertPosition
 import           XMonad.Hooks.ManageDocks
diff --git a/src/XMonad/Custom/Misc.hs b/src/XMonad/Custom/Misc.hs
index d4b162e..5e3e566 100644
--- a/src/XMonad/Custom/Misc.hs
+++ b/src/XMonad/Custom/Misc.hs
@@ -1,16 +1,13 @@
 {-# OPTIONS_GHC -funbox-strict-fields #-}
 
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Misc
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Misc
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Misc
     ( Applications (..)
diff --git a/src/XMonad/Custom/Navigation.hs b/src/XMonad/Custom/Navigation.hs
index 4057e8b..20a8769 100644
--- a/src/XMonad/Custom/Navigation.hs
+++ b/src/XMonad/Custom/Navigation.hs
@@ -1,14 +1,11 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Navigation
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Navigation
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Navigation
     ( navigation
diff --git a/src/XMonad/Custom/Projects.hs b/src/XMonad/Custom/Projects.hs
index 5382cb2..a8a7504 100644
--- a/src/XMonad/Custom/Projects.hs
+++ b/src/XMonad/Custom/Projects.hs
@@ -1,14 +1,11 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Projects
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Projects
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Projects
     ( projects
diff --git a/src/XMonad/Custom/Prompt.hs b/src/XMonad/Custom/Prompt.hs
index 9e046c6..4ae6d24 100644
--- a/src/XMonad/Custom/Prompt.hs
+++ b/src/XMonad/Custom/Prompt.hs
@@ -1,14 +1,11 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Prompt
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Prompt
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Prompt
     ( listCompFunc
diff --git a/src/XMonad/Custom/Scratchpads.hs b/src/XMonad/Custom/Scratchpads.hs
index 4ccce47..3d57f4b 100644
--- a/src/XMonad/Custom/Scratchpads.hs
+++ b/src/XMonad/Custom/Scratchpads.hs
@@ -1,14 +1,11 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Scratchpads
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Scratchpads
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Scratchpads
     ( scratchpads
diff --git a/src/XMonad/Custom/Startup.hs b/src/XMonad/Custom/Startup.hs
index eef4c4c..546bc32 100644
--- a/src/XMonad/Custom/Startup.hs
+++ b/src/XMonad/Custom/Startup.hs
@@ -1,14 +1,11 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Startup
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Startup
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Startup
     ( startupHook
@@ -16,7 +13,7 @@ module XMonad.Custom.Startup
 
 import           Control.Monad
 import           Data.Maybe
-import           XMonad                     hiding (startupHook)
+import           XMonad                     hiding ( startupHook )
 import           XMonad.Hooks.ManageDocks
 import           XMonad.Hooks.SetWMName
 import           XMonad.Util.Cursor
diff --git a/src/XMonad/Custom/Theme.hs b/src/XMonad/Custom/Theme.hs
index 3855fd9..8b32b50 100644
--- a/src/XMonad/Custom/Theme.hs
+++ b/src/XMonad/Custom/Theme.hs
@@ -1,14 +1,11 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Theme
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Theme
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Theme
     ( font
@@ -41,10 +38,10 @@ module XMonad.Custom.Theme
 import           Data.Char
 import           Data.Function
 import           Data.List
+import           Data.Ratio
 import           Graphics.X11.Xlib.Types
 import           XMonad.Layout.Decoration
 import qualified XMonad.Prompt            as P
-import Data.Ratio
 
 font :: String
 font = "xft:tewi:style=Regular:size=8" -- TODO CJKのフォールバックフォントを追加する
diff --git a/src/XMonad/Custom/Workspaces.hs b/src/XMonad/Custom/Workspaces.hs
index 5832c6e..efc0704 100644
--- a/src/XMonad/Custom/Workspaces.hs
+++ b/src/XMonad/Custom/Workspaces.hs
@@ -1,21 +1,18 @@
------------------------------------------------------------------------------
 -- |
--- Module      :  XMonad.Custom.Workspaces
--- Copyright   :  (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
--- License     :  BSD3-style (see LICENSE)
+-- Module      : XMonad.Custom.Workspaces
+-- Copyright   : (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+-- License     : BSD3-style (see LICENSE)
+-- Maintainer  : Azat Bahawi <azahi@teknik.io>
+-- Stability   : unstable
+-- Portability : unportable
 --
--- Maintainer  :  Azat Bahawi <azahi@teknik.io>
--- Stability   :  unstable
--- Portability :  unportable
---
------------------------------------------------------------------------------
 
 module XMonad.Custom.Workspaces
     ( workspaces
     ) where
 
 import           XMonad.Actions.DynamicProjects
-import           XMonad.Core                    hiding (workspaces)
+import           XMonad.Core                    hiding ( workspaces )
 
 workspaces :: [WorkspaceId]
 workspaces = map show [1..9 :: Int]
diff --git a/xmonad-ng.cabal b/xmonad-ng.cabal
index 9f91a14..242805e 100644
--- a/xmonad-ng.cabal
+++ b/xmonad-ng.cabal
@@ -1,53 +1,61 @@
 name:          xmonad-ng
-version:       0.15.5
+version:       0.15.6
 synopsis:      XMonad configuration
-description:   XMonad configuration hacked together using stolen code and bad Haskell
+description:
+    This package is a window manager built on top of xmonad and xmonad-contrib
+    libraries targeted for a single-display GNU\/Linux machine running Xorg.
+    .
+    Made with efficiency in mind this window manager enables controlling windows
+    using only keyboard and allows using multiple workspaces, scratchpads,
+    window layouts and etc.
 license:       BSD3
 license-file:  LICENSE
-copyright:     Copyright (c) 2018-2019 Azat Bahawi <azahi@teknik.io>
+copyright:     (c) 2018-2019 Azat Bahawi
 author:        Azat Bahawi <azahi@teknik.io>
 maintainer:    Azat Bahawi <azahi@teknik.io>
 stability:     experimental
+tested-with:   GHC == 8.6.5
 category:      System
 homepage:      https://github.com/azahi/xmonad-config
+bug-reports:   https://github.com/azahi/xmonad-config/issues
 build-type:    Simple
 cabal-version: >= 2.0
 
 source-repository head
-  type:     git
-  location: https://github.com/azahi/xmonad-config
+    type:     git
+    location: https://github.com/azahi/xmonad-config
 
 executable xmonad-ng
-  main-is:          Main.hs
-  other-modules:    XMonad.Actions.FloatSnapSpaced
-                    XMonad.Actions.PerConditionKeys
-                    XMonad.Custom.Bindings
-                    XMonad.Custom.Event
-                    XMonad.Custom.Layout
-                    XMonad.Custom.Log
-                    XMonad.Custom.Manage
-                    XMonad.Custom.Misc
-                    XMonad.Custom.Navigation
-                    XMonad.Custom.Projects
-                    XMonad.Custom.Scratchpads
-                    XMonad.Custom.Startup
-                    XMonad.Custom.Theme
-                    XMonad.Custom.Workspaces
-  hs-source-dirs:   src
-  build-depends:    X11            >= 1.9 && < 1.10
-                  , base           >= 4.12 && < 4.13
-                  , containers     >= 0.6 && < 0.7
-                  , directory      >= 1.3 && < 1.4
-                  , filepath       >= 1.4 && < 1.5
-                  , mtl            >= 2.2 && < 2.3
-                  , text           >= 1.2 && < 1.3
-                  , time           >= 1.8 && < 1.9
-                  , xmonad         >= 0.15 && < 0.16
-                  , xmonad-contrib >= 0.16 && < 0.17
-  default-language: Haskell2010
-  other-extensions: MultiParamTypeClasses
-                    CPP
-                    TypeSynonymInstances
-                    DeriveDataTypeable
-                    LambdaCase
-  ghc-options:      -Wall
+    main-is:          Main.hs
+    other-modules:    XMonad.Actions.FloatSnapSpaced
+                      XMonad.Actions.PerConditionKeys
+                      XMonad.Custom.Bindings
+                      XMonad.Custom.Event
+                      XMonad.Custom.Layout
+                      XMonad.Custom.Log
+                      XMonad.Custom.Manage
+                      XMonad.Custom.Misc
+                      XMonad.Custom.Navigation
+                      XMonad.Custom.Projects
+                      XMonad.Custom.Scratchpads
+                      XMonad.Custom.Startup
+                      XMonad.Custom.Theme
+                      XMonad.Custom.Workspaces
+    hs-source-dirs:   src
+    build-depends:    base           >= 4.9 && < 5
+                    , X11            >= 1.6 && < 1.10
+                    , containers     >= 0.6 && < 0.7
+                    , directory      >= 1.3 && < 1.4
+                    , filepath       >= 1.4 && < 1.5
+                    , mtl            >= 1 && < 3
+                    , text           >= 1.2 && < 1.3
+                    , time           >= 1.8 && < 1.9
+                    , xmonad         >= 0.15 && < 0.16
+                    , xmonad-contrib >= 0.16 && < 0.17
+    default-language: Haskell2010
+    other-extensions: MultiParamTypeClasses
+                      CPP
+                      TypeSynonymInstances
+                      DeriveDataTypeable
+                      LambdaCase
+    ghc-options:      -Wall

Consider giving Nix/NixOS a try! <3