diff --git a/pkgs/desktops/deepin/deepin-mutter/default.nix b/pkgs/desktops/deepin/deepin-mutter/default.nix new file mode 100644 index 00000000000..e397ab53576 --- /dev/null +++ b/pkgs/desktops/deepin/deepin-mutter/default.nix @@ -0,0 +1,61 @@ +{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, xorg, + libcanberra-gtk3, upower, xkeyboard_config, libxkbcommon, + libstartup_notification, libinput, cogl, clutter, systemd +}: + +stdenv.mkDerivation rec { + name = "${pname}-${version}"; + pname = "deepin-mutter"; + version = "3.20.34"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "0s427fmj806ljpdg6jdvpfislk5m1xvxpnnyrq3l8b7pkhjvp8wd"; + }; + + nativeBuildInputs = [ + pkgconfig + intltool + libtool + gnome3.gnome-common + ]; + + buildInputs = [ + gnome3.gtk + gnome3.gnome-desktop + gnome3.gsettings-desktop-schemas + gnome3.libgudev + gnome3.zenity + upower + xorg.libxkbfile + libxkbcommon + libcanberra-gtk3 + libstartup_notification + libinput + xkeyboard_config + cogl + clutter + systemd + ]; + + enableParallelBuilding = true; + + configureFlags = [ + "--enable-native-backend" + "--enable-compile-warnings=minimum" + ]; + + preConfigure = '' + NOCONFIGURE=1 ./autogen.sh + ''; + + meta = with stdenv.lib; { + description = "Base window manager for deepin, fork of gnome mutter"; + homepage = https://github.com/linuxdeepin/deepin-mutter; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = with maintainers; [ romildo ]; + }; +} diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index d8fc63e4f91..c1438012ef5 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -8,6 +8,7 @@ let deepin-gtk-theme = callPackage ./deepin-gtk-theme { }; deepin-icon-theme = callPackage ./deepin-icon-theme { }; deepin-menu = callPackage ./deepin-menu { }; + deepin-mutter = callPackage ./deepin-mutter { }; deepin-shortcut-viewer = callPackage ./deepin-shortcut-viewer { }; deepin-terminal = callPackage ./deepin-terminal { inherit (pkgs.gnome3) libgee vte; diff --git a/pkgs/development/libraries/clutter/default.nix b/pkgs/development/libraries/clutter/default.nix index 705aa7252d1..d8150fd1150 100644 --- a/pkgs/development/libraries/clutter/default.nix +++ b/pkgs/development/libraries/clutter/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, pkgconfig, libGLU_combined, libX11, libXext, libXfixes -, libXdamage, libXcomposite, libXi, libxcb, cogl, pango, atk, json-glib, -gobjectIntrospection, gtk3, gnome3 +, libXdamage, libXcomposite, libXi, libxcb, cogl, pango, atk, json-glib +, gobjectIntrospection, gtk3, gnome3, libinput, libgudev, libxkbcommon }: let @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ]; propagatedBuildInputs = [ libX11 libGLU_combined libXext libXfixes libXdamage libXcomposite libXi cogl pango - atk json-glib gobjectIntrospection libxcb + atk json-glib gobjectIntrospection libxcb libinput libgudev libxkbcommon ]; configureFlags = [ "--enable-introspection" ]; # needed by muffin AFAIK diff --git a/pkgs/development/libraries/cogl/default.nix b/pkgs/development/libraries/cogl/default.nix index e06c71c15db..c624f9537fb 100644 --- a/pkgs/development/libraries/cogl/default.nix +++ b/pkgs/development/libraries/cogl/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, libGL, glib, gdk_pixbuf, xorg, libintl +{ stdenv, fetchurl, fetchpatch, pkgconfig, libGL, glib, gdk_pixbuf, xorg, libintl , pangoSupport ? true, pango, cairo, gobjectIntrospection, wayland, gnome3 , mesa_noglu , gstreamerSupport ? true, gst_all_1 }: @@ -14,6 +14,23 @@ in stdenv.mkDerivation rec { sha256 = "03f0ha3qk7ca0nnkkcr1garrm1n1vvfqhkz9lwjm592fnv6ii9rr"; }; + patches = [ + # Some deepin packages need the following patches. They have been + # submitted by Fedora on the GNOME Bugzilla + # (https://bugzilla.gnome.org/787443). Upstream thinks the patch + # could be merged, but dev can not make a new release. + + (fetchpatch { + url = https://bug787443.bugzilla-attachments.gnome.org/attachment.cgi?id=359589; + sha256 = "0f0d9iddg8zwy853phh7swikg4yzhxxv71fcag36f8gis0j5p998"; + }) + + (fetchpatch { + url = https://bug787443.bugzilla-attachments.gnome.org/attachment.cgi?id=361056; + sha256 = "09fyrdci4727fg6qm5aaapsbv71sf4wgfaqz8jqlyy61dibgg490"; + }) + ]; + nativeBuildInputs = [ pkgconfig libintl ]; configureFlags = [