diff --git a/src/QBar/BlockHelper.hs b/src/QBar/BlockHelper.hs
index 685092175d9394500188635a71cc6429836cafec..7a7ab195d49d151048be8727d1c9a220f123e525 100644
--- a/src/QBar/BlockHelper.hs
+++ b/src/QBar/BlockHelper.hs
@@ -43,11 +43,11 @@ yieldEmptyBlockUpdate = void . respond $ Nothing
 
 runSignalBlock :: forall a. Maybe Interval -> Maybe ((a -> IO ()) -> BarIO ()) -> SignalBlock a -> Block
 runSignalBlock maybeInterval maybeSignalSourceThread signalBlock' = runSignalBlockConfiguration $ SignalBlockConfiguration {
-  initialize = const $ return (),
+  aquire = const $ return (),
+  release = return,
   signalThread = const <$> maybeSignalSourceThread,
   signalBlock = const signalBlock',
-  interval = maybeInterval,
-  finalize = return
+  interval = maybeInterval
 }
 
 
@@ -64,11 +64,11 @@ runSignalBlockFn maybeInterval signalSourceThread renderFn = runSignalBlock mayb
 
 runSignalBlockFn' :: Maybe Interval -> (Maybe BlockEvent -> BarIO (Maybe BlockOutput)) -> Block
 runSignalBlockFn' maybeInterval renderFn = runSignalBlockConfiguration $ SignalBlockConfiguration {
-  initialize = const $ return (),
+  aquire = const $ return (),
+  release = return,
   signalThread = Nothing,
   signalBlock = const eventBlock,
-  interval = maybeInterval,
-  finalize = return
+  interval = maybeInterval
 }
   where
     eventBlock :: SignalBlock a
@@ -78,15 +78,15 @@ runSignalBlockFn' maybeInterval renderFn = runSignalBlockConfiguration $ SignalB
 
 
 data SignalBlockConfiguration c p = SignalBlockConfiguration {
-  initialize :: (p -> IO ()) -> BarIO c,
+  aquire :: (p -> IO ()) -> BarIO c,
+  release :: c -> BarIO (),
   signalThread :: Maybe (c -> (p -> IO ()) -> BarIO ()),
   signalBlock :: c -> SignalBlock p,
-  interval :: Maybe Interval,
-  finalize :: c -> BarIO ()
+  interval :: Maybe Interval
 }
 
 runSignalBlockConfiguration :: forall c p. SignalBlockConfiguration c p -> Block
-runSignalBlockConfiguration SignalBlockConfiguration{initialize, signalThread, signalBlock, interval, finalize} = do
+runSignalBlockConfiguration SignalBlockConfiguration{aquire, release, signalThread, signalBlock, interval} = do
   -- Initialize
   signalChan <- liftIO newTChanIO
   signalEvent <- liftIO Event.new
@@ -95,7 +95,7 @@ runSignalBlockConfiguration SignalBlockConfiguration{initialize, signalThread, s
   where
     runSignalBlockWithThreadInternal :: TChan (Signal p) -> Event.Event -> Block
     runSignalBlockWithThreadInternal signalChan signalEvent = do
-      context <- lift $ initialize userSignalAction
+      context <- lift $ aquire userSignalAction
       -- Start signalSource thread
       userTask <- liftBarIO $ barAsync $
         case signalThread of
@@ -112,7 +112,7 @@ runSignalBlockConfiguration SignalBlockConfiguration{initialize, signalThread, s
         cancel userTask
         cancel intervalTask
 
-      liftBarIO $ finalize context
+      liftBarIO $ release context
 
       exitBlock
 
diff --git a/src/QBar/Blocks/NetworkManager.hs b/src/QBar/Blocks/NetworkManager.hs
index fd9bc043c25e32c85ba6b96e2fb1de2016d16906..b33e54f09b6a66f5c562dc840d36554efd568bb4 100644
--- a/src/QBar/Blocks/NetworkManager.hs
+++ b/src/QBar/Blocks/NetworkManager.hs
@@ -53,15 +53,15 @@ getConnectionInfo client connectionObjectPath = do
 
 networkManagerBlock :: Block
 networkManagerBlock = runSignalBlockConfiguration $ SignalBlockConfiguration {
-  initialize = initialize',
-  finalize = finalize',
+  aquire,
+  release,
   signalThread = Nothing,
   signalBlock = networkManagerBlock',
   interval = Just defaultInterval
 }
   where
-    initialize' :: (() -> IO ()) -> BarIO DBus.Client
-    initialize' trigger = liftIO $ do
+    aquire :: (() -> IO ()) -> BarIO DBus.Client
+    aquire trigger = liftIO $ do
       client <- DBus.connectSystem
       let matchRule = DBus.matchAny {
         DBus.matchPath = Just "/org/freedesktop/NetworkManager",
@@ -69,8 +69,8 @@ networkManagerBlock = runSignalBlockConfiguration $ SignalBlockConfiguration {
       }
       void . DBus.addMatch client matchRule $ dbusSignalHandler trigger
       return client
-    finalize' :: DBus.Client -> BarIO ()
-    finalize' = liftIO . DBus.disconnect
+    release :: DBus.Client -> BarIO ()
+    release = liftIO . DBus.disconnect
     networkManagerBlock' :: DBus.Client -> SignalBlock ()
     networkManagerBlock' client = (liftBarIO . networkManagerBlock'' client) >=> respondBlockUpdate >=> networkManagerBlock' client
     networkManagerBlock'' :: DBus.Client -> Signal () -> BarIO BlockOutput