sanely patched dwm
- Clone the repository and run
make
:
git clone https://github.com/pixxel8/voidwm
cd voidwm
sudo make clean install
- Add the following in your
.xinitrc
file appropriately:
exec dwm
- Make a desktop entry for dwm in
/usr/share/xsessions
directory:
sudo cp voidwm.desktop /usr/share/xsessions
See config.h for various key bindings, layouts supported, and more. See man page for more information.
- Launch anything on startup by editing
~/.config/dwm/autostart.sh
file (see autostart). - Extensive control on bar with barmodules patch (with systray).
- Cycle through layouts with
Mod+(shift+)tab
(see cyclelayouts). - Cycle through non-empty tags with
Alt+(shift+)tab
(see shiftviewclients). - Use Xresources variables to set colors, borderpx, barheight and more (see xresources).
- Make clients go fullscreen or fake fullscreen with
Mod+(shift+)f
(see fullscreen-compilation). - Use layout, nmaster, mfact, gaps (can be toggled with
PERTAG_VANITYGAPS
), & bar on per tag basis (see pertag). - Reorganize and distribute tags with
Mod+(shift+)r
(see reorganizetags). - Extensive mouse support
- Change master area with
Mod+shift+Button1
(see dragmfact). - Change stack area with
Mod+shift+Button3
(see dragcfact). - Change position of clients with
Mod+Button1
(see placemouse). - Resize clients with
Mod+Button3
(see resizepoint). - NOTE: All the above actions can also be done with key bindings. See config.h for the same.
- Change master area with
- Toggle scratchpad terminal with
Mod+p
. - Set/unset any existing window as scratchpad with
Mod+(shift+)n
(see renamedscratchpads). - Make windows sticky with
Mod+s
(see sticky). - Restart dwm with
Mod+shift+q
(see restartsig). - Swallow windows & allow exceptions (see swallow).
- Seamless pywal support: change colors on the fly without restarting or exiting dwm with
Mod+q
(modified xrdb). - Colorful tags (modified rainbowtags).
- To see list of all patches, run:
git log --oneline | grep "patch++" | cut -c17-
voidwm
uses my fork of dwmblocks.- Colorful status bar (status2d); toggleable with
enable_status2d
variable in status2d settings. - Seamless pywal support: match colors of status bar with Xresources variables; toggleable with
enable_Xresources
variable in status2d settings. - NOTE: You need to restart
dwmblocks
after updating Xresources variables.
To get natural scrolling with touchpad, edit /usr/share/X11/xorg.conf.d/40-libinput.conf
file:
Section "InputClass"
Identifier "libinput touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
Option "NaturalScrolling" "True"
EndSection
To enable taping on touchpad, create a file /etc/X11/xorg.conf.d/30-touchpad.conf
:
Section "InputClass"
Identifier "touchpad catchall"
Driver "libinput"
Option "Tapping" "on"
EndSection