summaryrefslogtreecommitdiffhomepage
path: root/src/Xmobar/Plugins/Monitors/Swap/FreeBSD.hs
diff options
context:
space:
mode:
authorMichal Zielonka <michal.zielonka.8001@gmail.com>2021-10-14 19:59:35 +0200
committerMichal Zielonka <michal.zielonka.8001@gmail.com>2021-10-17 21:13:40 +0200
commitbb3feb7aca468a5542e8686c747dcdc95be3dcde (patch)
tree1204cc9b09ac15ed6a7f44bef6c3b51327888a40 /src/Xmobar/Plugins/Monitors/Swap/FreeBSD.hs
parent8287e45b62d0d310512574850bad4741c4b3a53d (diff)
downloadxmobar-bb3feb7aca468a5542e8686c747dcdc95be3dcde.tar.gz
xmobar-bb3feb7aca468a5542e8686c747dcdc95be3dcde.tar.bz2
start using kvm library from bsd for receiving swapinfo
Using this library allows us to receive swap info which is more similar with result of command swapinfo.
Diffstat (limited to 'src/Xmobar/Plugins/Monitors/Swap/FreeBSD.hs')
-rw-r--r--src/Xmobar/Plugins/Monitors/Swap/FreeBSD.hs41
1 files changed, 0 insertions, 41 deletions
diff --git a/src/Xmobar/Plugins/Monitors/Swap/FreeBSD.hs b/src/Xmobar/Plugins/Monitors/Swap/FreeBSD.hs
deleted file mode 100644
index 0e0c03d..0000000
--- a/src/Xmobar/Plugins/Monitors/Swap/FreeBSD.hs
+++ /dev/null
@@ -1,41 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module : Plugins.Monitors.Swap.FreeBSD
--- Copyright : (c) Andrea Rossato
--- License : BSD-style (see LICENSE)
---
--- Maintainer : Jose A. Ortega Ruiz <jao@gnu.org>
--- Stability : unstable
--- Portability : unportable
---
--- A swap usage monitor for Xmobar
---
------------------------------------------------------------------------------
-
-module Xmobar.Plugins.Monitors.Swap.FreeBSD (parseMEM) where
-
-import System.BSD.Sysctl (sysctlReadUInt, sysctlReadULong)
-
-isEnabled :: IO Bool
-isEnabled = do
- enabled <- sysctlReadUInt "vm.swap_enabled"
- return $ enabled == 1
-
-parseMEM' :: Bool -> IO [Float]
-parseMEM' False = return []
-parseMEM' True = do
- swapIn <- sysctlReadUInt "vm.stats.vm.v_swapin"
- swapTotal <- sysctlReadULong "vm.swap_total"
- let tot = toInteger swapTotal
- free = tot - toInteger swapIn
-
- return $ res (fromInteger tot) (fromInteger free)
- where
- res :: Float -> Float -> [Float]
- res _ 0 = []
- res tot free = [(tot - free) / tot, tot, tot - free, free]
-
-parseMEM :: IO [Float]
-parseMEM = do
- enabled <- isEnabled
- parseMEM' enabled