Skip to content

dy-tea/awm

Repository files navigation

awm

A wayland compositor with high protocol support, simple customization and an IPC server.

demo.mp4

Dependencies

  • meson
  • ninja
  • wlroots-git 0.19
  • xkbcommon
  • wayland-server
  • wayland-protocols
  • xwayland (can be disabled in build)

Build

You can build and run using:

# clone
git clone https://github.com/dy-tea/awm.git
cd awm/

# build
meson setup build/
ninja -C build/

# run
./build/awm

Install

sudo meson install -C build/

Xwayland support

Currently xwayland support is very unstable and might even be removed in the future, to remove support do:

meson setup build -DXWAYLAND=false

Tests

You can build and run tests using:

meson setup build/ -Dtests=true
meson test -C build/

Note that tests have additional dependencies.

Custom wlroots

If system wlroots is not found, clone wlroots to subprojects/wlroots and build using that instead of system wlroots. Note that libwlroots-0.19.so won't be installed to /usr/lib so you will have to copy it there if you want to run awm using the drm backend.

Configuration

An example configuration can be found in config-minimal.toml. You can copy this file to ~/.config/awm/config.toml and modify it to your liking. All options are documented in config.toml and many are explained in the wiki.

Supported protocols