2016-09-16 14:11:52 -07:00
|
|
|
import System.Taffybar
|
|
|
|
|
2017-01-31 23:19:34 -08:00
|
|
|
import System.Taffybar.MPRIS2
|
|
|
|
import System.Taffybar.Pager
|
|
|
|
import System.Taffybar.SimpleClock
|
2016-09-16 14:11:52 -07:00
|
|
|
import System.Taffybar.Systray
|
|
|
|
import System.Taffybar.TaffyPager
|
|
|
|
|
|
|
|
import System.Taffybar.Widgets.PollingGraph
|
|
|
|
|
|
|
|
import System.Information.Memory
|
|
|
|
import System.Information.CPU
|
|
|
|
|
|
|
|
memCallback = do
|
|
|
|
mi <- parseMeminfo
|
|
|
|
return [memoryUsedRatio mi]
|
|
|
|
|
|
|
|
cpuCallback = do
|
2016-09-19 12:08:59 -07:00
|
|
|
(_, systemLoad, totalLoad) <- cpuLoad
|
2016-09-16 14:11:52 -07:00
|
|
|
return [totalLoad, systemLoad]
|
|
|
|
|
|
|
|
main = do
|
|
|
|
let memCfg = defaultGraphConfig { graphDataColors = [(1, 0, 0, 1)]
|
|
|
|
, graphLabel = Just "mem"
|
|
|
|
}
|
|
|
|
cpuCfg = defaultGraphConfig { graphDataColors = [ (0, 1, 0, 1)
|
|
|
|
, (1, 0, 1, 0.5)
|
|
|
|
]
|
|
|
|
, graphLabel = Just "cpu"
|
|
|
|
}
|
2017-02-01 15:58:13 -08:00
|
|
|
let clock = textClockNew Nothing "%a %b %_d %r" 1
|
2017-01-28 12:38:37 -08:00
|
|
|
pagerConfig = defaultPagerConfig
|
|
|
|
{ useImages = True
|
|
|
|
, emptyWorkspace = id
|
2017-02-01 15:58:13 -08:00
|
|
|
, urgentWorkspace = id
|
2017-01-31 04:14:48 -08:00
|
|
|
, imageCount = 8
|
|
|
|
, workspaceGap = 0
|
2017-01-31 23:19:34 -08:00
|
|
|
, activeWorkspace = escape
|
|
|
|
, visibleWorkspace = escape
|
|
|
|
, workspaceBorder = False
|
2017-01-28 12:38:37 -08:00
|
|
|
}
|
|
|
|
pager = taffyPagerNew pagerConfig
|
2016-09-19 12:08:25 -07:00
|
|
|
mpris = mpris2New
|
2016-09-16 14:11:52 -07:00
|
|
|
mem = pollingGraphNew memCfg 1 memCallback
|
|
|
|
cpu = pollingGraphNew cpuCfg 0.5 cpuCallback
|
|
|
|
tray = systrayNew
|
2016-10-05 02:20:07 -07:00
|
|
|
defaultTaffybar defaultTaffybarConfig { startWidgets = [ pager ]
|
2016-11-14 05:49:29 -06:00
|
|
|
, endWidgets = [ tray, clock, mem, cpu, mpris ]
|
2016-09-19 12:08:59 -07:00
|
|
|
, monitorNumber = 1
|
2016-11-24 13:25:56 -08:00
|
|
|
, barPosition = Top
|
2017-02-07 21:52:28 -08:00
|
|
|
, barHeight = 30
|
2016-09-16 14:11:52 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
-- Local Variables:
|
|
|
|
-- flycheck-ghc-args: ("-Wno-missing-signatures")
|
|
|
|
-- End:
|