Mutter is the window manager for GNOME. It is not invoked directly, but from GNOME Session (on a machine with a hardware accelerated video driver).
Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.
Download (HTTP): https://download.gnome.org/sources/mutter/43/mutter-43.2.tar.xz
Download (FTP): ftp://ftp.acc.umu.se/pub/gnome/sources/mutter/43/mutter-43.2.tar.xz
Download MD5 sum: 2aa9fae86f51490b419e747885069e96
Download size: 2.7 MB
Estimated disk space required: 150 MB (without tests)
Estimated build time: 0.6 SBU (Using parallelism=4)
gnome-settings-daemon-43.0, graphene-1.10.8, libxcvt-0.1.2, libxkbcommon-1.5.0, and pipewire-0.3.65
desktop-file-utils-0.26, gobject-introspection-1.74.0, startup-notification-0.12, and sysprof-3.46.0
libinput-1.22.1, Wayland-1.21.0, wayland-protocols-1.31, and Xwayland-22.1.8. Additionally, GTK+-3.24.36 needs to be built with Wayland support.
dbusmock-0.28.7 (required for tests) and Xorg-Server-21.1.7 (for X11 sessions)
User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/mutter
Install Mutter by running the following commands:
mkdir build && cd build && meson --prefix=/usr --buildtype=debugoptimized -Dtests=false .. && ninja
The test suite requires debug functions to be enabled in the build,
and an external program called xvfb-run. If you wish to run the
tests, you should download and install it before running
meson. You can obtain
it from xvfb-run,
and install it with executable permissions in /usr/bin
. xvfb-run needs Xvfb at runtime, and Xvfb can be installed from either
Xorg-Server-21.1.7 or Xwayland-22.1.8. You should also replace
-Dtests=false
in the
meson command, with
-Dtests=true
. The test
suite requires the mutter schema to be installed on the system, so
it is better to run the tests after installing the package.
You can also test basic functions of Mutter following the section called “Starting Mutter”, after installing it.
Now, as the root
user:
ninja install
The tests can now be run: issue ninja
test. The tests require an active X or wayland
session. The native-unit
test is
known to fail. A lot of tests will fail if the opengl rendering is
not done in hardware.
--buildtype=debugoptimized
:
Override the default buildtype (“debug”),
which would produce unoptimized binaries. It's used instead of
--buildtype=release
to work around an
issue causing gnome-shell to crash.
-Dtests=false
: Prevents
building the tests, and removes a hard requirement on xvfb-run.
-Dprofiler=false
: Use this option if
Sysprof is not installed, and you
don't want meson to download Sysprof source code.
Mutter is normally used as a component of gnome-shell, but it can be used as a standalone Wayland compositor too. To run Mutter as a Wayland compositor, in a virtual console, issue:
mutter --wayland -- vte-2.91
Replace vte-2.91 with the command line for the first application you want in the Wayland session. Note that once this application exits, the Wayland session will be terminated.
Mutter can also function as a nested compositor in another Wayland session. In a terminal emulator, issue:
MUTTER_DEBUG_DUMMY_MODE_SPECS=1920x1080 mutter --wayland --nested -- vte-2.91
Replace 1920x1080
with
the size you want for the nested Wayland session.