57 lines
2.0 KiB
Haskell
Raw Normal View History

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
(_, 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
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
}
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 ]
, endWidgets = [ tray, clock, mem, cpu, mpris ]
, 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: