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.1
          platform.
        
        
          Package Information
        
        
        
          Mutter Dependencies
        
        
          Required
        
        
          gnome-settings-daemon-45.1,
          graphene-1.10.8, libei-1.2.1, libxcvt-0.1.2, libxkbcommon-1.6.0, and pipewire-1.0.3
        
        
          Recommended
        
        
          desktop-file-utils-0.27, gobject-introspection-1.78.1,
          and startup-notification-0.12
        
        
          Recommended (Required to build the Wayland compositor)
        
        
          libinput-1.25.0, Wayland-1.22.0, wayland-protocols-1.33, and Xwayland-23.2.4
        
        
          Optional
        
        
          dbusmock-0.30.2 (required for tests),
          Xorg-Server-21.1.11 (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        \
            -Dtests=false              \
            -Dprofiler=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.11 or Xwayland-23.2.4. You should also replace
          -Dtests=false in the
          meson command, with
          -Dtests=true
          -Dclutter_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. One test named
          input-capture is known to fail. A few
          other tests may fail depending on the 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.
        
        
          -Dtests=false: Prevents
          building the tests, and removes a hard requirement on xvfb-run.
        
        
          -Dprofiler=false: Allow
          building this package without Sysprof. Remove this option if you've
          installed Sysprof and want to
          analysis the rendering performance of Mutter.
        
        
          -Dtests=true -Dclutter_tests=false:
          Building all the tests but 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-13.so and libmutter-test-13.so
              (optional)
            
            
              Installed Directories:
              /usr/{lib,include,libexec/installed-tests,share/{,installed-tests}}/mutter-13
            
           
         
        
          
            Short Descriptions
          
          
            
              
              
            
            
              
                | 
                   
                    mutter
                   
                 | 
                
                   
                    is a Clutter based
                    compositing GTK+ Window
                    Manager
                   
                 | 
              
              
                | 
                   
                    libmutter-13.so
                   
                 | 
                
                   
                    contains the Mutter API
                    functions
                   
                 | 
              
              
                | 
                   
                    libmutter-test-13.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
                   
                 |