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.4
          platform.
        
        
          Package Information
        
        
        
          Mutter Dependencies
        
        
          Required
        
        
          docutils-0.21.2, gnome-settings-daemon-48.1,
          graphene-1.10.8, libei-1.4.1, libxcvt-0.1.3, libxkbcommon-1.11.0, and pipewire-1.4.7
        
        
          Recommended
        
        
          desktop-file-utils-0.28, GLib-2.84.4 (with GObject Introspection),
          libdisplay-info-0.3.0, and startup-notification-0.12
        
        
          Recommended (Required to build the Wayland compositor)
        
        
          libinput-1.29.0, Wayland-1.24.0, wayland-protocols-1.45, and Xwayland-24.1.8
        
        
          Optional
        
        
          dbusmock-0.36.0 (required for tests),
          Xorg-Server-21.1.18 (for X11 sessions),
          bash-completion,
          sysprof, Xvfb (from Xorg-Server-21.1.18 or Xwayland-24.1.8), xvfb-run,
          and zenity (the X11 tests
          would only run with all of the last three)
        
       
      
        
          Installation of Mutter
        
        
          Fix an issue with the tests that would otherwise require the
          package to be built with debugging information:
        
        sed "/tests_c_args =/s/$/ + ['-U', 'G_DISABLE_ASSERT']/" -i src/tests/meson.build &&
sed "/c_args:/a '-U', 'G_DISABLE_ASSERT'," -i src/tests/cogl/unit/meson.build
        
          Install Mutter by running the
          following commands:
        
        mkdir build &&
cd    build &&
meson setup --prefix=/usr            \
            --buildtype=release      \
            -D tests=disabled        \
            -D profiler=false        \
            -D bash_completion=false \
            ..                       &&
ninja
        
          If you want to run the test suite, ensure dbusmock-0.36.0 is installed and issue:
        
        meson configure -D tests=enabled &&
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. You can also test basic functions of Mutter following the section
          called “Starting Mutter,” after installing it.
        
        
          Now, as the root user:
        
        ninja install
       
      
        
          Command Explanations
        
        
          --buildtype=release:
          Specify a buildtype suitable for stable releases of the package, as
          the default may produce unoptimized binaries.
        
        
          -D bash_completion=false:
          Allows building the package without the bash-completion
          package installed.
        
        
          -D tests=disabled: Allow
          building the package without dbusmock-0.36.0 installed. It'll be
          overridden with meson
          configure if running the test suite.
        
        
          -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.
        
       
      
        
          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:
              gdctl and mutter
            
            
              Installed Libraries:
              libmutter-16.so and libmutter-test-16.so
              (optional)
            
            
              Installed Directories:
              /usr/{lib,include,libexec/installed-tests,share/{,installed-tests}}/mutter-16
            
           
         
        
          
            Short Descriptions
          
          
            
              
              
            
            
              
                | 
                    gdctl
                   | 
                    controls the current monitor configuration on sessions
                    that use Mutter as a window manager
                   | 
              
                | 
                    mutter
                   | 
                    is a Clutter based
                    compositing GTK+ Window
                    Manager
                   | 
              
                | 
                    libmutter-16.so | 
                    contains the Mutter API
                    functions
                   | 
              
                | 
                    libmutter-test-16.so | 
                    contains the Mutter test
                    suite API functions; this library is only installed if
                    the test suite of this package is run and it is needed by
                    the gnome-shell test
                    suite
                   |