diff --git a/modules/xmonad/xmonad.hs b/modules/xmonad/xmonad.hs
index bbd949f..660db50 100644
--- a/modules/xmonad/xmonad.hs
+++ b/modules/xmonad/xmonad.hs
@@ -1,19 +1,23 @@
 -- spell-checker:words xmonad
-import XMonad
+import           XMonad
 
-import System.Exit
-import XMonad.Util.EZConfig
+import           System.Exit
+import           XMonad.Util.EZConfig
 
-import XMonad.Hooks.EwmhDesktops
-import XMonad.Hooks.ManageDocks
-import XMonad.Config.Desktop
+import           XMonad.Config.Desktop
+import           XMonad.Hooks.EwmhDesktops
+import           XMonad.Hooks.ManageDocks
 
-import XMonadLog
-import XMonad.Hooks.DynamicLog
-import qualified DBus.Client as D
+import qualified DBus.Client                as D
+import           XMonad.Hooks.DynamicLog
+import           XMonadLog
 
-import XMonad.Layout.Spacing
-import XMonad.Layout.Gaps
+import           XMonad.Hooks.ManageHelpers (isInProperty, doLower)
+import           XMonad.Layout.Gaps
+import           XMonad.Layout.Spacing
+import Foreign.C
+import Blaze.ByteString.Builder (toByteString)
+import XMonad.Layout.Drawer (propertyToQuery)
 
 terminal = "kitty"      -- Kitty, my beloved <3
 launcher = "pkill rofi; rofi -show combi"
@@ -22,7 +26,7 @@
 
 statusBar = "pkill polybar; polybar"
 compositor = "pkill picom; picom"
-background = "feh --no-fehbg --bg-fill .xmonad/background.png"
+background = "pkill show; show ~/.xmonad/wallpaper.glsl"
 
 shift = shiftMask
 
@@ -30,13 +34,13 @@
   spawn Main.statusBar
   spawn Main.compositor
   spawn background
-  
+
 
 main :: IO ()
 main = XMonadLog.xmonadLog >>= main'
 
 main' :: D.Client -> IO ()
-main' dbus = xmonad $ docks $ ewmh . ewmhFullscreen $ def
+main' dbus = xmonad $ ewmh . ewmhFullscreen $ docks $ def
   { modMask = modifierKey  -- Use Super as our mod key
   , borderWidth = 0
   , XMonad.terminal = Main.terminal
@@ -46,10 +50,16 @@
                         smartSpacing 5 $
                         gaps [(U, 5), (D, 5), (L, 5), (R, 5)] $
                         layoutHook def
+  , XMonad.manageHook = composeAll
+                        [ className =? "Show" --> doIgnore <+> doLower <+> doLower
+                        -- You can't check if "Show" is a desktop window,
+                        -- I believe it's because show doesn't instantly set
+                        -- desktop. Do not try. It is not worth it.
+                        ] <+> manageHook def
   } `additionalKeys`
   [ ((modifierKey, xK_d), spawn launcher)
   , ((modifierKey, xK_n), spawn networkManager)
   , ((modifierKey .|. shift, xK_q), kill)
   , ((modifierKey, xK_q), spawn "xmonad --restart")
-  , ((modifierKey .|. shift, xK_c), io (exitWith ExitSuccess))
+  , ((modifierKey .|. shift, xK_c), io exitSuccess)
   ]
