Update XMonad config

This commit is contained in:
daniele 2024-03-25 22:45:18 +01:00
parent 9dcd101b54
commit f7da68f66e
Signed by: fuxino
GPG Key ID: 981A2B2A3BBF5514
2 changed files with 41 additions and 7 deletions

View File

@ -2,7 +2,7 @@ Config { overrideRedirect = False
, font = "Bitstream Vera Sans Mono Bold 9"
, bgColor = "black"
, fgColor = "#646464"
, position = TopW L 92
, position = TopW L 93
, border = BottomB
, borderColor = "#646464"
, allDesktops = True

View File

@ -1,20 +1,32 @@
-- Import
import XMonad
-- Hooks
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.EwmhDesktops
import XMonad.Hooks.InsertPosition
import XMonad.Hooks.ManageHelpers
import XMonad.Hooks.StatusBar
import XMonad.Hooks.StatusBar.PP
-- Layouts
import XMonad.Layout.Grid
import XMonad.Layout.Spiral
import XMonad.Layout.Tabbed
import XMonad.Layout.ThreeColumns
-- Layout modifiers
import XMonad.Layout.LayoutCombinators
import XMonad.Layout.Magnifier
import XMonad.Layout.Renamed
import XMonad.Layout.Spiral
import XMonad.Layout.ThreeColumns
import XMonad.Layout.ShowWName
-- Util
import XMonad.Util.EZConfig
import XMonad.Util.Loggers
import XMonad.Util.SpawnOnce
-- Main
main :: IO ()
main = xmonad
. ewmhFullscreen
@ -22,12 +34,14 @@ main = xmonad
. withEasySB (xmobar1 <> xmobar2) defToggleStrutsKey
$ myConfig
-- Config
myConfig = def
{ modMask = mod4Mask
, terminal = "kitty"
, workspaces = myWorkspaces
, focusedBorderColor = "#006700"
, normalBorderColor = "#000000"
, layoutHook = myLayout
, layoutHook = showWName myLayout
, startupHook = myStartupHook
, manageHook = myManageHook
}
@ -35,20 +49,33 @@ myConfig = def
[ ("M-S-l" , spawn "xscreensaver-command -lock" )
, ("M-v" , spawn "vivaldi" )
, ("M-<Print>" , unGrab *> spawn "gnome-screenshot -i" )
, ("M-w" , spawn "passmenu -i" )
, ("M-d" , spawn "dmenu_run" )
, ("M-p" , spawn "passmenu -i" )
, ("M-f" , sendMessage $ JumpToLayout "Tabbed" )
]
myLayout = tiled ||| Mirror tiled ||| Full ||| threeCol ||| Grid ||| spiral(0.856)
-- Workspaces
myWorkspaces = [ "1:term", "2:www", "3:games", "4:msg" ] ++ map show [5..9]
-- Layout
myLayout = tiled ||| Mirror tiled ||| myTabbed ||| threeCol ||| Grid ||| spiral(0.856)
where
threeCol
= renamed [Replace "ThreeCol"]
$ magnifiercz' 1.3
$ ThreeColMid nmaster delta ratio
myTabbed
= renamed [Replace "Tabbed"]
$ tabbed shrinkText myTabConfig
myTabConfig = def { activeColor = "#393939"
, inactiveColor = "#191b1c"
}
tiled = Tall nmaster delta ratio
nmaster = 1
ratio = 1/2
delta = 3/100
-- Xmobar
xmobar1 = statusBarProp "xmobar -x 0 ~/.config/xmobar/xmobarrc_laptop" (pure myXmobarPP)
xmobar2 = statusBarProp "xmobar -x 1 ~/.config/xmobar/xmobarrc_hdmi" (pure myXmobarPP)
@ -78,13 +105,14 @@ myXmobarPP = def
red = xmobarColor "#ff5555" ""
lowWhite = xmobarColor "#bbbbbb" ""
-- Autostart
myStartupHook :: X ()
myStartupHook = do
spawnOnce "xsetroot -cursor_name left_ptr"
spawnOnce "mons -e left && ~/.fehbg"
spawnOnce "xscreensaver -no-splash"
spawnOnce "trayer --edge top --align right --SetDockType true \
\--SetPartialStrut true --expand true --width 8 \
\--SetPartialStrut true --expand true --width 7 \
\--transparent true --tint 0x1f2022 --height 18 \
\--monitor 0"
spawnOnce "redshift-gtk"
@ -94,9 +122,15 @@ myStartupHook = do
spawnOnce "arch-audit-gtk"
spawnOnce "xcompmgr"
-- Manage hook
myManageHook :: ManageHook
myManageHook = composeAll
[ insertPosition End Newer
, className =? "kitty" --> doShift "1:term"
, className =? "Vivaldi-stable" --> doShift "2:www"
, className =? "steam" --> doShift "3:games"
, className =? "discord" --> doShift "4:msg"
, className =? "Signal" --> doShift "4:msg"
, className =? "mpv" --> doFullFloat
, className =? "Xviewer" --> doFloat
, className =? "steam_app_109600" --> doFloat