Skip to content

Building

Dependencies

From source

# First, clone the repo:
git clone https://github.com/miracle-window-manager/miracle-wm.git
cd miracle-wm

# The, build a debug build...
cmake -B build -DCMAKE_BUILD_TYPE=Debug
cmake --build build

# ... or a max-performance release build:
cmake -B build -DCMAKE_BUILD_TYPE=Release -DENABLE_LTO=ON
cmake --build build

# Then run with:
WAYLAND_DISPLAY=wayland-98 ./build/miracle-wm

CMake Options

The following options are available at build time:

  • -DSNAP_BUILD: Informs cmake that this is being built for a snap since some parameters need to be tweaked for that use case.
  • -DSYSTEMD_INTEGRATION: If enabled, miracle will build with full systemd integration, including establishing a user session and importing the proper environment variables in to systemd.
  • -DEND_TO_END_TESTS: If enabled, miracle's end-to-end tests will be compiled as part of the test suite.

Snap

cd miracle-wm
snapcraft
sudo snap install --dangerous --classic miracle-wm_*.snap