xmonad-vanessa-0.1.0.0: src/XMonad/Util/Brightness.hs
-- | Module to control screen brightness within the `X` Monad.
module XMonad.Util.Brightness (brighten) where
import XMonad
-- | Brighten screen
-- also consider splitting off once this has been generalized
brighten :: Int -> X ()
brighten n = liftIO $ do
currentBacklight <- readFile "/sys/class/backlight/intel_backlight/brightness"
length currentBacklight `seq` (writeFile "/sys/class/backlight/intel_backlight/brightness" (show . guard $ (read currentBacklight :: Int) + n))
-- | Don't let the brightness be obnoxious
guard :: Int -> Int
guard = (gu 2000) . (gl 0)
where gu m n = if n > m then m else n
gl m n = if n < m then m else n