summaryrefslogtreecommitdiffhomepage
path: root/Plugins/Monitors
diff options
context:
space:
mode:
Diffstat (limited to 'Plugins/Monitors')
-rw-r--r--Plugins/Monitors/Batt.hs2
-rw-r--r--Plugins/Monitors/Common.hs5
2 files changed, 6 insertions, 1 deletions
diff --git a/Plugins/Monitors/Batt.hs b/Plugins/Monitors/Batt.hs
index af5a48c..78d9eae 100644
--- a/Plugins/Monitors/Batt.hs
+++ b/Plugins/Monitors/Batt.hs
@@ -36,7 +36,7 @@ readFileBatt (i,s) =
return (a,b)
where rf file = do
f <- fileExist file
- if f then B.readFile file else return B.empty
+ if f then catRead file else return B.empty
parseBATT :: [(String, String)] -> IO Batt
parseBATT bfs =
diff --git a/Plugins/Monitors/Common.hs b/Plugins/Monitors/Common.hs
index 779c6f4..caf2e98 100644
--- a/Plugins/Monitors/Common.hs
+++ b/Plugins/Monitors/Common.hs
@@ -43,6 +43,7 @@ module Plugins.Monitors.Common (
-- * Threaded Actions
-- $thread
, doActionTwiceWithDelay
+ , catRead
) where
@@ -56,6 +57,7 @@ import Numeric
import Text.ParserCombinators.Parsec
import System.Console.GetOpt
import Control.Exception (SomeException,handle)
+import System.Process(readProcess)
import Plugins
-- $monitor
@@ -306,3 +308,6 @@ getData action var d =
do threadDelay d
s <- action
modifyMVar_ var (\_ -> return $! s)
+
+catRead :: FilePath -> IO B.ByteString
+catRead file = B.pack `fmap` readProcess "/bin/cat" [file] ""