oignon: uninstall chromium
[julm/julm-nix.git] / home-manager / profiles / xmonad / xmonad.hs
index 1e43ae92e02f9f7e783fef800ba00236ff77f848..c3d7f06760240a158aea341f8cfcaa161e5e0e38 100644 (file)
@@ -45,8 +45,6 @@ import XMonad.Util.Run(spawnPipe)
 import XMonad.Util.SpawnOnce
 import qualified XMonad.StackSet as W
 
-doSink = doF . W.sink =<< ask
-
 myKeys
  conf@XConfig{XMonad.modMask} =
   Map.fromList $
@@ -56,12 +54,12 @@ myKeys
   -- Start a terminal
     ((modMask, xK_Return), spawn $ XMonad.terminal conf)
   -- Launch a program
-  , ((modMask, xK_Menu), spawn "exec gmrun")
+  , ((modMask, xK_Menu), spawn "exec rofi -show run -no-disable-history -run-command \"bash -c 'systemd-run --user --unit=app-org.rofi.\\$(systemd-escape \\\"{cmd}\\\")@\\$RANDOM -p CollectMode=inactive-or-failed {cmd}'\"")
   -- Browse the filesystem
-  , ((modMask, xK_BackSpace), spawn "caja")
+  , ((modMask, xK_BackSpace), spawn "systemd-run --user --unit=app-org.rofi.caja@$RANDOM -p CollectMode=inactive-or-failed caja")
 
   -- Lock the screen
-  , ((0, xK_Pause), spawn "xset s activate dpms force off")
+  , ((0, xK_Pause), spawn "systemctl --user start xss-lock.service; xset s activate dpms force off")
 
   -- Take a full screenshot
   , ((0, xK_Print), spawn "cd ~/img/cap && scrot --quality 42 '%Y-%m-%d_%H-%M-%S.png' && caja ~/img/cap")
@@ -85,6 +83,9 @@ myKeys
   , ((modMask, xK_Escape), kill)
   , ((modMask, xK_q), kill)
 
+  -- Clipboard
+  , ((modMask, xK_c), spawn "clipster --select --primary")
+
   -- Temporarily maximize a window
   , ((modMask, xK_f), sendMessage $ XMonad.Layout.MultiToggle.Toggle FULL)
   -- , ((modMask, xK_f), withFocused (sendMessage . maximizeRestore))
@@ -235,17 +236,12 @@ isWindowSpaceVisible = do
   vs <- gets (map (W.tag . W.workspace) . W.visible . windowset)
   return (\w -> W.tag w `elem` vs)
 
-defaults xmproc _nScreens = ewmh $
+defaults xmproc _nScreens = docks $ ewmhFullscreen $ ewmh $
  azertyConfig
   { borderWidth        = 1
   , focusFollowsMouse  = True
   , focusedBorderColor = "#00b10b"
   , handleEventHook    = handleEventHook def
-                         <+> XMonad.Hooks.EwmhDesktops.fullscreenEventHook
-                         <+> XMonad.Layout.Fullscreen.fullscreenEventHook
-                         <+> docksEventHook
-                             -- causes new docks to appear immediately,
-                             -- instead of waiting for the next focus change.
   , keys               = myKeys
   , layoutHook         = smartBorders $
                          mkToggle (NOBORDERS ?? FULL ?? EOT) $ -- enable temporarily maximizing a window
@@ -282,9 +278,10 @@ defaults xmproc _nScreens = ewmh $
                        <+> spawn "xset b off"
                        <+> spawn "xhost local:root"
                        <+> spawn "setxkbmap -option keypad:pointerkeys"
+                       -- Useful for programs launched by rofi
+                       <+> spawnOnce "exec systemctl --user import-environment GNUPGHOME PASSWORD_STORE_DIR PATH"
                        -- <+> spawnOnce "exec arbtt-capture -r 60"
                        -- <+> spawnOnce "exec parcellite"
-                       -- <+> spawnOnce "exec urxvtd -o -q"
                        -- <+> spawnOnce "exec xautolock"
                        -- <+> spawnOnce "exec redshift-gtk -l -45.7800:1.9700 -t 6500:3700"
                        <+> spawnOnce "exec nm-applet"
@@ -320,7 +317,7 @@ defaults xmproc _nScreens = ewmh $
                     _                      -> s
     , ppOutput  = hPutStrLn xmproc
     , ppSep     = "  "
-    , ppTitle   = xmobarColor "white" "black" . shorten 100
+    , ppTitle   = xmobarColor "white" "black" . shorten 50
     , ppUrgent  = xmobarColor "yellow" "black"
     , ppWsSep   = " "
     }
@@ -335,6 +332,7 @@ defaults xmproc _nScreens = ewmh $
      , inactiveBorderColor = "#7C7C7C"
      , inactiveColor       = "#000000"
      , inactiveTextColor   = "#EEEEEE"
+     , fontName            = "Hack 7"
      }
 
 --