Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 84 lines 1.8 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchurl, 5 pkg-config, 6 gettext, 7 xtrans, 8 dbus-glib, 9 systemd, 10 libSM, 11 libXtst, 12 glib, 13 gtk3, 14 libepoxy, 15 polkit, 16 hicolor-icon-theme, 17 mate-desktop, 18 mate-screensaver, 19 wrapGAppsHook3, 20 fetchpatch, 21 mateUpdateScript, 22}: 23 24stdenv.mkDerivation rec { 25 pname = "mate-session-manager"; 26 version = "1.28.0"; 27 28 src = fetchurl { 29 url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; 30 sha256 = "0yzkWVuh2mUpB3cgPyvIK9lzshSjoECAoe9caJkKLXs="; 31 }; 32 33 patches = [ 34 # allow turning on debugging from environment variable 35 (fetchpatch { 36 url = "https://github.com/mate-desktop/mate-session-manager/commit/3ab6fbfc811d00100d7a2959f8bbb157b536690d.patch"; 37 sha256 = "0yjaklq0mp44clymyhy240kxlw95z3azmravh4f5pfm9dys33sg0"; 38 }) 39 ]; 40 41 nativeBuildInputs = [ 42 pkg-config 43 gettext 44 xtrans 45 wrapGAppsHook3 46 ]; 47 48 buildInputs = [ 49 dbus-glib 50 systemd 51 libSM 52 libXtst 53 gtk3 54 mate-desktop 55 mate-screensaver # for gsm_manager_init 56 hicolor-icon-theme 57 libepoxy 58 polkit 59 ]; 60 61 enableParallelBuilding = true; 62 63 env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0"; 64 65 postFixup = '' 66 substituteInPlace $out/share/xsessions/mate.desktop \ 67 --replace-fail "Exec=mate-session" "Exec=$out/bin/mate-session" 68 ''; 69 70 passthru.providedSessions = [ "mate" ]; 71 72 passthru.updateScript = mateUpdateScript { inherit pname; }; 73 74 meta = with lib; { 75 description = "MATE Desktop session manager"; 76 homepage = "https://github.com/mate-desktop/mate-session-manager"; 77 license = with licenses; [ 78 gpl2Plus 79 lgpl2Plus 80 ]; 81 platforms = platforms.unix; 82 teams = [ teams.mate ]; 83 }; 84}