anchor.diff:      "--enable-schemas-compile"
       "--enable-verbose-mode"
       "--enable-sm"
  -    "--enable-startup-notification"
  +    (enFlag "startup-notification" (libstartup_notification != null) null)
       "--disable-installed-tests"
       (enFlag "introspection" (gobject-introspection != null) null)
       "--enable-native-backend"
  -    "--enable-wayland"
  +    (enFlag "wayland" (wayland != null) null)
       "--disable-debug"
       "--enable-compile-warnings"
  -    "--with-libcanberra"
  -    "--with-x"
  +    (wtFlag "libcanberra" (libcanberra != null) null)
  +    (wtFlag "x" (xorg != null) null)
     ];
   
     preFixup =
  
positive.code: , libinput
  , systemd_lib
  , wayland
  , xorg
  , gtk3
  }:
  
  with {
    inherit (stdenv.lib)
      enFlag;
  };
  
  stdenv.mkDerivation rec {
    name = "mutter-${version}";
    versionMajor = "3.18";
    versionMinor = "3";
    version = "${versionMajor}.${versionMinor}";
  
    src = fetchurl {
      url = "mirror://gnome/sources/mutter/${versionMajor}/${name}.tar.xz";
      sha256 = "0ik8aa3k5cglz9f237mfxxdf8pcr0srr5mmfwdx3gc3bb7aqipaq";
    };
  
    nativeBuildInputs = [
  
negative.code:     systemd_lib
      upower
      wayland
      wayland-protocols
      zenity
    ] ++ optionals (xorg != null) [
      xorg.libICE
      xorg.libSM
      xorg.libX11
  