Please read the contribution guide Please read the developer docs
Check the man page markdown for relevant info
- libX11
- Xinerama
- XCursor
- CC
- Make
sudo apt update
sudo apt install libx11-dev libxcursor-dev libxinerama-dev build-essential
Arch Linux / Manjaro
sudo pacman -Syy
sudo pacman -S libx11 libxinerama gcc make
Gentoo
sudo emerge --ask x11-libs/libX11 x11-libs/libXinerama sys-devel/gcc sys-devel/make
sudo emaint -a sync
Void Linux
sudo xbps-install -S
sudo xbps-install libX11-devel libXinerama-devel libXcursor-devel gcc make
Fedora / RHEL / AlmaLinux / Rocky
sudo dnf update
sudo dnf install libX11-devel libXcursor-devel libXinerama-devel gcc make
OpenSUSE (Leap / Tumbleweed)
sudo zypper refresh
sudo zypper install libX11-devel libXinerama-devel gcc make
Alpine Linux
doas apk update
doas apk add libx11-dev libxinerama-dev libxcursor-dev gcc make musl-dev linux-headers
NixOS
buildInputs = [
pkgs.xorg.libX11
pkgs.xorg.libXinerama
pkgs.libgcc
pkgs.gnumake
];
sudo nixos-rebuild switch
Slackware
slackpkg update
slackpkg install gcc make libX11 libXinerama
OpenBSD
You will also need the X sets (xbase, xfonts, xserv and xshare) installed.
When you make the code, use gmake instead of make (which will be BSD make). Use the following command to build: gmake CFLAGS="-I/usr/X11R6/include -Wall -Wextra -O3 -Isrc" LDFLAGS="-L/usr/X11R6/lib -lX11 -lXinerama -lXcursor"
FreeBSD
# If you use doas or su instead of sudo, modify the following commands accordingly.
sudo pkg update
sudo pkg install gcc gmake libX11 libXinerama
Termux
pkg install x11-repo
pkg update
pkg install clang make xcb-util-keysyms xorgproto libxcursor libx11 libxinerama libandroid-wordexp
# add `LDFLAGS="${LDFLAGS} -landroid-wordexp"` in the make command
Note
I don't maintain any packages. Use with caution!
yay -S sxwm
yay -S sxwm-git
### Void Linux
```sh
sudo xbps-install -S sxwm
git clone --depth=1 https://github.com/uint23/sxwm.git
cd sxwm/
make
sudo/doas make clean install
Add to your ~/.xinitrc:
Or use the sxwm.desktop file
| make / make all | Build the sxwm binary |
| make clean | Remove build artifacts |
| make install | Install sxwm to $(PREFIX)/bin (default /usr/local) |
| make uninstall | Remove installed binary |
| make clean install | Clean then install |
Override install directory with PREFIX:
make install PREFIX=$HOME/.local
- dwm - Tiling & source code
- i3 - Easy configuration
- sowm - README inspiration
- tinywm - Minimal X11 WM
uint [2025]
.png)


