From 0a3c3ddf146a74c08e8fd3821e53e2c7d7ac2de2 Mon Sep 17 00:00:00 2001 From: Artur Manuel Date: Tue, 4 Feb 2025 20:07:16 +0000 Subject: [PATCH] feat(info): display WM and locale --- app/Main.hs | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/app/Main.hs b/app/Main.hs index e050b6c..8f8a809 100644 --- a/app/Main.hs +++ b/app/Main.hs @@ -45,6 +45,10 @@ getMemory meminfo memTotal = show (parseKBFromMeminfo (head $ lines meminfo) `div` 1000) ++ "MB" memAvail = show (parseKBFromMeminfo (head . tail . tail $ lines meminfo) `div` 1000) ++ "MB" +getWM :: Maybe String -> Maybe String -> String +getWM (Just desktop) (Just session) = desktop ++ " (" ++ session ++ ")" +getWM _ _ = "Unknown" + main :: IO () main = do uptime <- readFile' "/proc/uptime" @@ -53,13 +57,18 @@ main = do hostname <- readFile' "/proc/sys/kernel/hostname" meminfo <- readFile' "/proc/meminfo" username <- lookupEnv "USER" + currentDesktop <- lookupEnv "XDG_CURRENT_DESKTOP" + sessionType <- lookupEnv "XDG_SESSION_TYPE" + locale <- lookupEnv "LANG" putStr ( unlines - [ "\x1b[1;35m █ \x1b[1;34m" ++ fromMaybe "username" username ++ "@" ++ init hostname - , "\x1b[1;35m █ \x1b[1;34m" - , "\x1b[1;35m █ \x1b[1;34m" ++ "up\t" ++ (getUptime . readUptime) uptime - , "\x1b[1;35m ███ \x1b[1;34m" ++ "krl\t" ++ getKVer version - , "\x1b[1;35m █ ██ \x1b[1;34m" ++ "os\t" ++ (findPrettyName . lines) osRelease - , "\x1b[1;35m █ ██ \x1b[1;34m" ++ "mem\t" ++ getMemory meminfo + [ "\x1b[1;35m █ \x1b[1;34m" ++ fromMaybe "username" username ++ "@" ++ init hostname + , "\x1b[1;35m █ \x1b[1;34m" + , "\x1b[1;35m █ \x1b[1;34m" ++ "up\t" ++ (getUptime . readUptime) uptime + , "\x1b[1;35m █ \x1b[1;34m" ++ "wm\t" ++ getWM currentDesktop sessionType + , "\x1b[1;35m ███ \x1b[1;34m" ++ "krl\t" ++ getKVer version + , "\x1b[1;35m █ ██ \x1b[1;34m" ++ "os\t" ++ (findPrettyName . lines) osRelease + , "\x1b[1;35m █ ██ \x1b[1;34m" ++ "lcl\t" ++ fromMaybe "??_??" locale + , "\x1b[1;35m █ ██ \x1b[1;34m" ++ "mem\t" ++ getMemory meminfo ] )