diff --git a/bin/xmobar.hs b/bin/xmobar.hs
new file mode 100644
index 0000000..6722a01
--- /dev/null
+++ b/bin/xmobar.hs
@@ -0,0 +1,100 @@
+import Xmobar
+
+fgColor0 = "black"
+fgColor1 = "#888888"
+bgColor0 = "#eeeeee"
+bdColor = "#cccccc"
+
+wrapColor c s = "" ++ s ++ ""
+
+sep = wrapColor fgColor1 " : "
+
+myTemplate = concat
+ [ "%UnsafeStdinReader%"
+ , " }{ "
+ , "%wlp0s20f3wi%"
+ , sep, "%alsa:default:Master%"
+ , sep, "%battery%"
+ , sep, "%bright%"
+ , sep, "%locks%"
+ , sep, "%date% "
+ ]
+
+config = defaultConfig {
+ font = "xft:DejaVu Sans Mono:size=11:bold:antialias=true"
+ , additionalFonts =
+ [ "xft:FontAwesome:pixelsize=13:antialias=true:hinting=true"
+ , "xft:Symbola:size=13:bold:antialias=true"
+ ]
+ , textOffset = 16
+ , textOffsets = [ 16, 17 ]
+ , bgColor = bgColor0
+ , fgColor = fgColor0
+ , position = BottomSize C 100 24
+ , border = NoBorder
+ , borderColor = bdColor
+
+ , sepChar = "%"
+ , alignSep = "}{"
+ , template = myTemplate
+
+ , lowerOnStart = False
+ , hideOnStart = False
+ , allDesktops = True
+ , overrideRedirect = True
+ , pickBroadest = False
+ , persistent = True
+ , iconRoot = "/home/ndwar/.local/share/xmobar/icons"
+
+ , commands =
+ [ Run $ Alsa "default" "Master"
+ [ "-t", "%"
+ , "--"
+ , "-O", "\xf028"
+ , "-o", "\xf026 "
+ , "-c", fgColor0
+ , "-C", fgColor0
+ ]
+
+ , Run $ Battery [ "--template", ""
+ , "--Low", "10"
+ , "--High", "80"
+ , "--low", "red"
+ , "--normal", fgColor0
+ , "--high", fgColor0
+ , "--"
+ , "-P"
+ , "-o" , "\xf0e7"
+ , "-O" , "\xf1e6"
+ , "-i" , "\xf1e6"
+ ] 50
+
+ , Run $ Brightness ["-t", "\xf185%"
+ , "--"
+ , "-D", "intel_backlight"
+ ] 10
+
+ , Run $ Wireless "wlp0s20f3"
+ [ "-t", ""
+ , "--"
+ , "--quality-icon-pattern", ""
+ ] 5
+
+ , Run $ Locks
+ [ "-N", "\x1f13d"
+ , "-n", wrapColor fgColor1 "\x1f13d"
+ , "-C", "\x1f132"
+ , "-c", wrapColor fgColor1 "\x1f132"
+ , "-s", ""
+ , "-S", ""
+ , "-d", " "
+ ]
+
+ , Run $ Date "%Y-%m-%d %H:%M" "date" 10
+
+ , Run UnsafeStdinReader
+ ]
+ }
+
+main :: IO ()
+main = xmobar config
diff --git a/my-xmonad.cabal b/my-xmonad.cabal
index cc6961c..155b766 100644
--- a/my-xmonad.cabal
+++ b/my-xmonad.cabal
@@ -25,6 +25,13 @@ executable xmonad
default-language: Haskell2010
ghc-options: -Wall -Werror -fno-warn-missing-signatures -threaded
+executable xmobar
+ main-is: bin/xmobar.hs
+ build-depends: base
+ , xmobar
+ default-language: Haskell2010
+ ghc-options: -Wall -Werror -fno-warn-missing-signatures -threaded
+
executable xit-event
main-is: bin/xit-event.hs
build-depends: base
diff --git a/stack.yaml b/stack.yaml
index 3ffa4e3..9077650 100644
--- a/stack.yaml
+++ b/stack.yaml
@@ -39,10 +39,28 @@ packages:
# - git: https://github.com/commercialhaskell/stack.git
# commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a
#
-extra-deps: []
+extra-deps:
+- iwlib-0.1.0
+- github: ndwarshuis/xmobar
+ commit: 4d750adcdecf5c1085ff583cf69392fcaf5dfaf7
# Override default flag values for local packages and extra-deps
# flags: {}
+flags:
+ xmobar:
+ with_dbus: true
+ with_threaded: true
+ with_utf8: true
+ with_xft: true
+ with_mpd: false
+ with_mpris: false
+ with_inotify: false
+ with_iwlib: true
+ with_alsa: true
+ with_datezone: true
+ with_xpm: true
+ with_uvmeter: false
+ with_weather: false
# Extra package databases containing global packages
# extra-package-dbs: []