Introduction to Mutter
        
        
          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).
        
        
          This package is known to build and work properly using an LFS 12.2
          platform.
        
        
          Package Information
        
        
        
          Mutter Dependencies
        
        
          Required
        
        
          gnome-settings-daemon-46.0,
          graphene-1.10.8, libei-1.3.0, libxcvt-0.1.2, libxkbcommon-1.7.0, and pipewire-1.2.3
        
        
          Recommended
        
        
          desktop-file-utils-0.27, GLib-2.80.4 (with GObject Introspection), and
          startup-notification-0.12
        
        
          Recommended (Required to build the Wayland compositor)
        
        
          libinput-1.26.1, Wayland-1.23.0, wayland-protocols-1.36, and Xwayland-24.1.2
        
        
          Recommended (Runtime)
        
        
          blocaled-0.6
        
        
          Optional
        
        
          dbusmock-0.32.1 (required for tests),
          libdisplay-info-0.2.0, Xorg-Server-21.1.13 (for X11 sessions),
          and sysprof
        
       
      
        
          Installation of Mutter
        
        
          Install Mutter by running the
          following commands:
        
        mkdir build &&
cd    build &&
meson setup --prefix=/usr       \
            --buildtype=release \
            -D tests=false      \
            -D profiler=false   \
            ..                  &&
ninja
        
          The test suite requires 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.13 or Xwayland-24.1.2. You should also replace
          -D tests=false in the
          meson command, with
          -D tests=true -D
          clutter_tests=false. 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
        
          If you wish to run the tests, remove the reference to Zenity which is not a part of BLFS from one
          test:
        
        sed 's/zenity --[a-z]*/gtk4-demo/' -i ../src/tests/x11-test.sh
        
          Now run the test suite:
        
        ninja test
        
          The tests require an active X or wayland session. Some tests are
          flaky (especially under a high system load) so if a test fails you
          can try to re-run it alone with the meson test <test
          name> command. A few tests may fail
          depending on some system configuration. Don't make any mouse or
          keyboard input while the test suite is running or some tests may
          fail.
        
       
      
        
          Command Explanations
        
        
          --buildtype=release:
          Specify a buildtype suitable for stable releases of the package, as
          the default may produce unoptimized binaries.
        
        
          -D tests=false: Prevents
          building the tests, and removes a hard requirement on xvfb-run.
        
        
          -D profiler=false: Allows
          building this package without Sysprof. Remove this option if you've
          installed Sysprof and want to
          analyze the rendering performance of Mutter.
        
        
          -D tests=true -D clutter_tests=false:
          This builds all of the tests except for the tests for the shipped
          Clutter library. The Clutter tests are known to fail with
          --buildtype=release.
        
       
      
        
          Starting Mutter
        
        
          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.
        
       
      
        
          Contents
        
        
          
            
              Installed Programs:
              mutter
            
            
              Installed Libraries:
              libmutter-14.so and libmutter-test-14.so
              (optional)
            
            
              Installed Directories:
              /usr/{lib,include,libexec/installed-tests,share/{,installed-tests}}/mutter-14
            
           
         
        
          
            Short Descriptions
          
          
            
              
              
            
            
              
                | 
                    mutter
                   | 
                    is a Clutter based
                    compositing GTK+ Window
                    Manager
                   | 
              
                | 
                    libmutter-14.so | 
                    contains the Mutter API
                    functions
                   | 
              
                | 
                    libmutter-test-14.so | 
                    contains the Mutter test
                    suite API functions; this library is only installed if
                    the test suite of this package is enabled and it is
                    needed by gnome-shell
                    test suite
                   |