Skip to content

dk949/dwm

Repository files navigation

dwm - dynamic window manager

This is a fork. Original project at suckless.org

Requirements

  • Libraries
    • X11
    • XCB
    • freetype2
    • (optionally) Xinerama
    • (optionally) asound
  • cmake
  • (optionally) ninja
  • slstatus status bar information

Following tools are used by default, but can be changed in config.h

  • dmenu run launcher
  • slock screen lock
  • picom compositor
    • set with the compcmd and comkill variables
  • kitty terminal
    • set with the termcmd variable
  • firefox browser
    • set with the brwscmd variable
  • spotify music player
    • set with the musccmd variable
  • dwm-scripts various helper scripts
    • required for powrcmd, htopcmd, nvimcmd and chatcmd
  • dmenu-scripts more helper scripts
    • required for symdmnu, grkdmnu and scrdmnu

Installation

git clone "https://github.com/Microsoft/vcpkg.git"
./vcpkg/bootstrap-vcpkg.sh -disableMetrics
./vcpkg/vcpkg install
# see CMakePresets.json for other presets
cmake --preset make-release -DCMAKE_INSTALL_PREFIX=/path/to/install/to
cmake --build build-release
cmake --install build-release

Note

If CMAKE_INSTALL_PREFIX is not specified, the default system install directory (most likely /usr/local) will be used.

Warning

DO NOT use --prefix when running --install, the executable needs to have the absolute install path at compile time.

Running dwm

Add the following line to your .xinitrc to start dwm using startx:

exec dwm

In order to connect dwm to a specific display, make sure that the DISPLAY environment variable is set correctly, e.g.:

DISPLAY=foo.bar:1 exec dwm

(This will start dwm on display :1 of the host foo.bar.)

Configuration

The configuration is done by editing src/config.hpp and (re)compiling the source code.

Warning

Patches (most likely) won't work, since the this version has been rewritten in c++.

Debugging

dwm can be built with additional debugging functionality. This build will produce additional debug logs and will use address sanitiser to check for memory errors.

cmake --preset make # see CMakePresets.json for other debug presets
cmake --build build

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published