dotfiles/nix/home-manager/modules/xmonad/xmobarrc
2021-02-28 18:14:01 +01:00

112 lines
5 KiB
Haskell

-- -*- mode: haskell; var: value; … -*-
Config {
-- appearance
font = "xft:DejaVu Sans Mono:size=9:bold:antialias=true:hinting=true"
, additionalFonts =
[ "xft:DejaVu Sans Mono for Powerline:size=9:antialias=true:hinting=true" ]
, bgColor = "#222222"
, fgColor = "#eaeaea"
, position = Top
, border = BottomB
, borderColor = "#646464"
-- layout
, sepChar = "%" -- delineator between plugin names and straight text
, alignSep = "}{" -- separator between left-right alignment
, template = "%StdinReader% | %battery% | %multicpu% | %multicoretemp% | %memory% | %dynnetwork% }{ %date% || %kbd% "
-- general behavior
, lowerOnStart = True -- send to bottom of window stack on start
, hideOnStart = False -- start with window unmapped (hidden)
, allDesktops = True -- show on all desktops
, overrideRedirect = True -- set the Override Redirect flag (Xlib)
, pickBroadest = False -- choose widest display (multi-monitor)
, persistent = True -- enable/disable hiding (True = disabled)
-- plugins
-- Numbers can be automatically colored according to their value. xmobar
-- decides color based on a three-tier/two-cutoff system, controlled by
-- command options:
-- --Low sets the low cutoff
-- --High sets the high cutoff
--
-- --low sets the color below --Low cutoff
-- --normal sets the color between --Low and --High cutoffs
-- --High sets the color above --High cutoff
--
-- The --template option controls how the plugin is displayed. Text
-- color can be set by enclosing in <fc></fc> tags. For more details
-- see http://projects.haskell.org/xmobar/#system-monitor-plugins.
, commands =
-- weather monitor
[ Run Weather "RJTT" [ "--template", "<skyCondition> | <fc=#4682B4><tempC></fc>°C | <fc=#4682B4><rh></fc>% | <fc=#4682B4><pressure></fc>hPa"
] 36000
-- network activity monitor (dynamic interface resolution)
, Run DynNetwork [ "--template" , "<dev>: <tx>kB/s|<rx>kB/s"
, "--Low" , "1000" -- units: B/s
, "--High" , "5000" -- units: B/s
, "--low" , "green"
, "--normal" , "orange"
, "--high" , "red"
] 10
-- cpu activity monitor
, Run MultiCpu [ "--template" , "Cpu: <autototal>" -- <fn=1></fn>
, "--Low" , "25" -- units: %
, "--High" , "75" -- units: %
, "--low" , "green"
, "--normal" , "orange"
, "--high" , "red"
] 10
-- cpu core temperature monitor
, Run MultiCoreTemp [ "--template" , "Temp: <avgpc>"
, "--Low" , "70" -- units: °C
, "--High" , "80" -- units: °C
, "--low" , "green"
, "--normal" , "orange"
, "--high" , "red"
] 50
-- memory usage monitor
, Run Memory [ "--template" ,"Mem: <usedratio>%"
, "--Low" , "20" -- units: %
, "--High" , "90" -- units: %
, "--low" , "green"
, "--normal" , "orange"
, "--high" , "red"
] 10
-- battery monitor
, Run Battery [ "--template" , "Batt: <acstatus>"
, "--Low" , "10" -- units: %
, "--High" , "80" -- units: %
, "--low" , "red"
, "--normal" , "orange"
, "--high" , "green"
, "--" -- battery specific options
-- discharging status
, "-o" , "<left>% (<timeleft>)"
-- AC "on" status
, "-O" , "<left>% <fc=#dAA520>Charging</fc>"
-- charged status
, "-i" , "<left>% <fc=#00e200>Charged</fc>"
] 50
-- time and date indicator
-- (%F = y-m-d date, %a = day of week, %T = h:m:s time)
, Run Date "<fc=#eaeaea>%F (%a) %T</fc>" "date" 10
-- keyboard layout indicator
, Run Kbd [ ("sk(qwerty)" , "sk_SK")
, ("us" , "en_US")
]
, Run StdinReader
]
}