diff options
author | Andrea Rossato <andrea.rossato@ing.unitn.it> | 2007-06-22 12:51:28 +0200 |
---|---|---|
committer | Andrea Rossato <andrea.rossato@ing.unitn.it> | 2007-06-22 12:51:28 +0200 |
commit | 85a1674a870395bb71f6510952565a3fdfa402d2 (patch) | |
tree | 67fe8360deaa8aadcd1edf29372e38c66fc774cb /monitor.hs | |
parent | fbc623386b7ff8d93ee654aade906debae79873d (diff) | |
download | xmobar-85a1674a870395bb71f6510952565a3fdfa402d2.tar.gz xmobar-85a1674a870395bb71f6510952565a3fdfa402d2.tar.bz2 |
removed monitor.hs (useless now)
darcs-hash:20070622105128-d6583-053972c4d23c7b88907cb1008d219c9d09551f6f.gz
Diffstat (limited to 'monitor.hs')
-rwxr-xr-x | monitor.hs | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/monitor.hs b/monitor.hs deleted file mode 100755 index 7705bc6..0000000 --- a/monitor.hs +++ /dev/null @@ -1,70 +0,0 @@ -#! /usr/bin/env runhaskell - - -import Data.Time (getZonedTime) -import Text.Printf (printf) -import System.Process (runInteractiveCommand) -import Data.List -import System.IO (hGetContents) - - -getOutput :: String -> IO String -getOutput cmd = do - (_, out, _, _) <- runInteractiveCommand cmd - hGetContents out - -memParse :: String -> String -memParse file = - let content = map words $ take 4 $ lines file - [total, free, buffer, cache] = map (\line -> (read $ line !! 1 :: Float) / 1024) content - rest = free + buffer + cache - used = total - rest - usedratio = used * 100 / total - realused = if usedratio > 50 then "^#FF0000"++show used++"^#FFFFFF" - else "^#FF00FF"++show used++"^#FFFFFF" - in - printf "MEM: %sM %.1f%% used %.0fM rest" realused usedratio rest - - -mem :: IO String -mem = do - file <- readFile "/proc/meminfo" - return $ memParse file - - -time :: IO String -time = do - now <- getZonedTime - return $ take 16 $ show now - - -temp :: IO String -temp = do - file <- readFile "/proc/acpi/thermal_zone/THRM/temperature" - let t = (words file) !! 1 - f t | read t > 60 = "^#FF0000"++t++"^#FFFFFF" - | otherwise = "^#00FF00"++t++"^#FFFFFF" - return $ "TEMP: " ++ (f t) ++ "C" - - -takeTail :: Int -> [a] -> [a] -takeTail n xs = - let len = length xs in - drop (len-n) xs - - -load :: IO String -load = do - content <- getOutput "uptime" - let l = map (delete ',') $ takeTail 3 $ words content - return $ unwords $ "LOAD:" : l - - -sep :: IO String -sep = return " " - - -main = do - putStr "" - mapM_ (>>=putStr) $ intersperse sep [load, temp, mem, time] - putChar '\n'
\ No newline at end of file |