From 7010d4a723ddb018e57ee0633a850b1b63711eff Mon Sep 17 00:00:00 2001 From: ndwarshuis Date: Sat, 27 Nov 2021 00:08:24 -0500 Subject: [PATCH] REF move removable module to dbus section --- bin/xmonad.hs | 5 +++-- lib/XMonad/Internal/{Concurrent => DBus}/Removable.hs | 8 ++++---- my-xmonad.cabal | 4 ++-- 3 files changed, 9 insertions(+), 8 deletions(-) rename lib/XMonad/Internal/{Concurrent => DBus}/Removable.hs (90%) diff --git a/bin/xmonad.hs b/bin/xmonad.hs index c9f5d8b..5b5cc62 100644 --- a/bin/xmonad.hs +++ b/bin/xmonad.hs @@ -50,12 +50,12 @@ import XMonad.Internal.Command.Power import XMonad.Internal.Concurrent.ACPIEvent import XMonad.Internal.Concurrent.ClientMessage import XMonad.Internal.Concurrent.DynamicWorkspaces -import XMonad.Internal.Concurrent.Removable import XMonad.Internal.DBus.Brightness.ClevoKeyboard import XMonad.Internal.DBus.Brightness.Common import XMonad.Internal.DBus.Brightness.IntelBacklight import XMonad.Internal.DBus.Control import XMonad.Internal.DBus.Screensaver +import XMonad.Internal.DBus.Removable import XMonad.Internal.Dependency import XMonad.Internal.Process import XMonad.Internal.Shell @@ -79,7 +79,8 @@ main = do sesClient <- startXMonadService sysClient <- getDBusClient True (h, p) <- spawnPipe "xmobar" - mapM_ (executeFeatureWith_ forkIO_) [runPowermon, runRemovableMon sysClient] + executeFeature_ $ runRemovableMon sysClient + executeFeatureWith_ forkIO_ runPowermon forkIO_ $ runWorkspaceMon allDWs let ts = ThreadState { tsSessionClient = sesClient diff --git a/lib/XMonad/Internal/Concurrent/Removable.hs b/lib/XMonad/Internal/DBus/Removable.hs similarity index 90% rename from lib/XMonad/Internal/Concurrent/Removable.hs rename to lib/XMonad/Internal/DBus/Removable.hs index 4789956..04049cf 100644 --- a/lib/XMonad/Internal/Concurrent/Removable.hs +++ b/lib/XMonad/Internal/DBus/Removable.hs @@ -4,7 +4,7 @@ -- Currently, its only purpose is to play Super Mario sounds when a drive is -- inserted or removed. Why? Because I can. -module XMonad.Internal.Concurrent.Removable (runRemovableMon) where +module XMonad.Internal.DBus.Removable (runRemovableMon) where import Control.Monad @@ -74,10 +74,10 @@ playSoundMaybe p b = when b $ playSound p -- enable the udisks2 service at boot; however this is not default behavior. listenDevices :: Client -> IO () listenDevices client = do - void $ addMatch' memAdded driveInsertedSound addedHasDrive - void $ addMatch' memRemoved driveRemovedSound removedHasDrive + addMatch' memAdded driveInsertedSound addedHasDrive + addMatch' memRemoved driveRemovedSound removedHasDrive where - addMatch' m p f = addMatch client ruleUdisks { matchMember = Just m } + addMatch' m p f = void $ addMatch client ruleUdisks { matchMember = Just m } $ playSoundMaybe p . f . signalBody runRemovableMon :: Maybe Client -> FeatureIO diff --git a/my-xmonad.cabal b/my-xmonad.cabal index 4251b95..9fddca9 100644 --- a/my-xmonad.cabal +++ b/my-xmonad.cabal @@ -8,7 +8,6 @@ library exposed-modules: XMonad.Internal.Concurrent.ClientMessage , XMonad.Internal.Concurrent.ACPIEvent , XMonad.Internal.Concurrent.DynamicWorkspaces - , XMonad.Internal.Concurrent.Removable , XMonad.Internal.Theme , XMonad.Internal.Notify , XMonad.Internal.Shell @@ -23,6 +22,7 @@ library , XMonad.Internal.DBus.Brightness.Common , XMonad.Internal.DBus.Control , XMonad.Internal.DBus.Screensaver + , XMonad.Internal.DBus.Removable , XMonad.Internal.Process , Xmobar.Plugins.Common , Xmobar.Plugins.BacklightCommon @@ -78,4 +78,4 @@ executable xmobar , xmonad-contrib >= 0.13 , directory >= 1.3.3.0 default-language: Haskell2010 - ghc-options: -Wall -Werror -fno-warn-missing-signatures -threaded \ No newline at end of file + ghc-options: -Wall -Werror -fno-warn-missing-signatures -threaded