From bc1b2d6defbd9dc7cf8a5a103e9672fdb9a715f0 Mon Sep 17 00:00:00 2001 From: jao Date: Tue, 9 Aug 2022 22:50:48 +0100 Subject: xmobar-exwm -> xmobar-single --- src/Single.hs | 110 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 src/Single.hs (limited to 'src/Single.hs') diff --git a/src/Single.hs b/src/Single.hs new file mode 100644 index 0000000..c8e5115 --- /dev/null +++ b/src/Single.hs @@ -0,0 +1,110 @@ +import Xmobar +import Config +import Monitors +import Music (mpris, gpmd, mpdt) + +memoratio = Memory ["-t","%", "-p", "2", "-W", "3"] 20 + +topProcL p = TopProc (p <~> ["-t" + , memTemp + ++ " · " + , "-w", "12", "-L" , "10", "-H", "80"]) 15 + where memTemp = if pIsLight p + then " " + else " " + +diskIOL p = DiskIO [("/", ""), ("/home", "")] + (diskArgs p) 10 + +diskIOS p = DiskIO [("/", " ")] (diskArgs p) 10 + +mpd a p i = + MPDX [ "-W", "12", "-b", "░", "-f", "▒", "-t", " " + , "--", "-p", p, "-P", fni "\xf144", "-Z", fni i, "-S", fni i] 20 a + +mpdMon = mpd "mpd" "6600" "\xf001" +mopMon = mpd "mopidy" "6669" "\xf1bc" + +cpuFreq' p = CpuFreq (p <~> ["-t" , "" + , "-L", "1", "-H", "2", "-S", "Off" , "-d", "2"]) 50 + +cpus p = MultiCpu (mkArgs p + ["--template" , " %" + , "-L", "50", "-H", "85", "-W", "0", "-w", "3" + , "-f", "0123456789"] + ["--fallback-icon-pattern", ""]) 10 + + +memory' = Memory [ "-t" ," " + , "-p", "2", "-W", "0","-d", "1", "-f", "0123456789" + , "--", "--scale", "1024"] 20 + + +config p = (baseConfig p) { + position = TopSize C 100 (defaultHeight - 2) + , font = "xft:Hack-8" + , textOffset = defaultHeight - 8 + , textOffsets = [defaultHeight - 9, defaultHeight - 9, + defaultHeight - 6, defaultHeight - 8, + defaultHeight - 8, defaultHeight - 8] + , alpha = if pIsLight p then 192 else 230 + , border = FullB + , commands = [ Run (topProcL p) + , Run (load p) + , Run (iconBatt p) + , Run (cpu p) +-- , Run (cpus p) + , Run memory + , Run (diskU p) + , Run (diskIOS p) + , Run brightness + , Run (kbd p) + , Run (coreTemp p) + , Run (wireless p "wlp164s0") + , Run (dynNetwork p) + , Run (vpnMark "wg-mullvad") + , Run tun0 + , Run (masterVol p) + , Run captureVol + , Run laTime + , Run localTime + , Run (cpuFreq' p) + , Run w -- LEGE, LEBL, KCV0 + ] ++ extraCmds + , template = trayT + ++ " |batt0|" ++ sep + -- ++ dimi "\xf26c" ++ sep + ++ "|bright|" ++ sep + ++ "" + ++ " |wg-mullvad||tun0||wlp164s0wi|" + ++ "" + ++ " |dynnetwork| " ++ sep + ++ "" + ++ " |default:Master| " ++ dimi "\xf130" ++ " |default:Capture|" + ++ "" ++ sep + ++ " |EGPH| " ++ sep + ++ eLog p + ++ " {} " + ++ "|kbd|" ++ sep + ++ "|load|" ++ sep + ++ "|cpufreq|" ++ sep + ++ "|multicpu|" ++ sep + ++ "|multicoretemp|" ++ sep + ++ " |top| " ++ sep + ++ " " ++ fni "\xf0c9" ++ " |memory| " + ++ " |diskio| |disku| " ++ sep + ++ " |datetime| " + ++ "|laTime| " + } where dimi = fc (pDim p) . fni + sep = " " + w = weather' " ° " "EGPH" p + isXmonad = pWm p == Just "xmonad" + trayT = if isXmonad then "|tray|" else "" + eLog p = if isXmonad then "|XMonadLog|" else fc (pHigh p) "|elog|" + extraCmds = if isXmonad + then [ Run (NamedXPropertyLog "_XMONAD_TRAYPAD" "tray") + , Run XMonadLog] + else [Run (NamedXPropertyLog "_EMACS_LOG" "elog")] + +main :: IO () +main = palette >>= configFromArgs . config >>= xmobar -- cgit v1.2.3