Description: Base window manager component for Deepin.
Mutter is a window manager for the X Window System, and is in the process of becoming a Wayland compositor; it became the default window manager in GNOME 3, replacing Metacity which uses GTK+ for rendering, while Mutter uses a graphics library called Clutter, and through it also supports OpenGL.
Mutter is extensible with plugins and supports numerous visual effects. For example, deepin-wm is written as a plugin to Mutter.
This project is a fork of Mutter to avoid DDE depending on GNOME with
some special hacking work, include applying some patches, using the
gsettings under com.deepin.wrap.gnome instead of org.gnome,
etc. And Deepin Mutter just could coexists with Mutter to make the
porting work easier.
- debhelper (>= 9)
- intltool (>= 0.41)
- gtk-doc-tools (>= 1.15)
- gobject-introspection (>= 1.41.3)
- gsettings-desktop-schemas (>= 3.15.92)
- cairo (>= 1.10.0)
- clutter-1.0 (>= 1.21.3)
- clutter-wayland-1.0
- clutter-wayland-compositor-1.0
- cogl-1.0 (>= 1.17.1)
- deepin-desktop-schemas
- gbm (>= 10.3)
- glib2.0 (>= 2.35.1)
- gnome-desktop-3.0 (>= 3.10)
- gnome-themes-standard
- gobject-introspection-1.0 (>= 0.9.12)
- gtk+-3.0 (>= 3.9.11)
- gudev-1.0
- ice
- json-glib-1.0 (>= 0.13.2)
- libcanberra-gtk3
- libinput
- libstartup-notification-1.0 (>= 0.7)
- libsystemd (>= 212)
- pango (>= 1.2.0)
- sm
- upower-glib (>= 0.99.0)
- wayland-server (>= 1.6.90)
- x11
- x11-xcb
- xcb-randr
- xcomposite (>= 1:0.2)
- xcursor
- xdamage
- xext
- xfixes
- xi (>= 2:1.6.0)
- xinerama
- xkbcommon (>= 0.4.3)
- xkbcommon-x11
- xkbfile
- xrandr
- xrender
- xt
- zenity
Install prerequisites
$ sudo apt-get install \
cdbs \
debhelper \
gnome-pkg-tools \
dh-autoreconf \
intltool \
gtk-doc-tools \
gobject-introspection \
gsettings-desktop-schemas-dev \
deepin-desktop-schemas \
deepin-desktop-schemas \
gnome-themes-standard \
libcairo2-dev \
libcanberra-gtk3-dev \
libclutter-1.0-dev \
libcogl-dev \
libgbm-dev \
libgirepository1.0-dev \
libglib2.0-dev \
libgnome-desktop-3-dev \
libgtk-3-dev \
libgudev-1.0-dev \
libice-dev \
libinput-dev \
libjson-glib-dev \
libpam0g-dev \
libpango1.0-dev \
libsm-dev \
libstartup-notification0-dev \
libsystemd-dev \
libupower-glib-dev \
libwayland-dev \
libx11-dev \
libx11-xcb-dev \
libxcb-randr0-dev \
libxcomposite-dev \
libxcursor-dev \
libxdamage-dev \
libxext-dev \
libxfixes-dev \
libxi-dev \
libxinerama-dev \
libxkbcommon-dev \
libxkbcommon-x11-dev \
libxkbfile-dev \
libxrandr-dev \
libxrender-dev \
libxt-dev \
xkb-data \
zenity
Build
$ ./autogen.sh --prefix=/usr \
--libexecdir=/usr/lib/deepin-mutter \
--sysconfdir=/etc \
--enable-gtk-doc \
--disable-schemas-compile \
--enable-wayland \
--enable-native-backend \
--enable-compile-warnings=minimum
$ make
If you have isolated testing build environment (say a docker container), you can install it directly
$ sudo make install
Or, generate package files and install Deepin Mutter with it
$ debuild -uc -us ...
$ sudo dpkg -i ../deepin-mutter-*deb
Run Deepin Mutter to replace current window manager with the command below
$ deepin-mutter --replace &
Any usage issues can ask for help via
We encourage you to report issues and contribute changes
Deepin Mutter is licensed under GPLv3.