Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 105 lines 1.9 kB view raw
1{ 2 fetchFromGitHub, 3 cinnamon-desktop, 4 cinnamon-settings-daemon, 5 cinnamon-translations, 6 glib, 7 gsettings-desktop-schemas, 8 gtk3, 9 libcanberra, 10 libxslt, 11 meson, 12 ninja, 13 pkg-config, 14 python3, 15 lib, 16 stdenv, 17 systemd, 18 wrapGAppsHook3, 19 xapp, 20 xorg, 21 libexecinfo, 22 pango, 23}: 24 25let 26 pythonEnv = python3.withPackages ( 27 pp: with pp; [ 28 python-xapp 29 pygobject3 30 setproctitle 31 ] 32 ); 33in 34stdenv.mkDerivation rec { 35 pname = "cinnamon-session"; 36 version = "6.4.0"; 37 38 src = fetchFromGitHub { 39 owner = "linuxmint"; 40 repo = "cinnamon-session"; 41 rev = version; 42 hash = "sha256-4uTKcmwfEytoAy4CFiOedYJqmPtBFBHk0P1gEGgm6pU="; 43 }; 44 45 buildInputs = [ 46 # meson.build 47 cinnamon-desktop 48 gtk3 49 glib 50 libcanberra 51 pango 52 xorg.libX11 53 xorg.libXext 54 xapp 55 xorg.libXau 56 xorg.libXcomposite 57 58 systemd 59 60 xorg.libXtst 61 xorg.libXrender 62 xorg.xtrans 63 64 # other (not meson.build) 65 cinnamon-settings-daemon 66 gsettings-desktop-schemas 67 pythonEnv # for cinnamon-session-quit 68 ]; 69 70 nativeBuildInputs = [ 71 meson 72 ninja 73 wrapGAppsHook3 74 libexecinfo 75 python3 76 pkg-config 77 libxslt 78 ]; 79 80 mesonFlags = [ 81 # use locales from cinnamon-translations 82 "--localedir=${cinnamon-translations}/share/locale" 83 ]; 84 85 postPatch = '' 86 # patchShebangs requires executable file 87 chmod +x data/meson_install_schemas.py 88 patchShebangs data/meson_install_schemas.py 89 ''; 90 91 preFixup = '' 92 gappsWrapperArgs+=( 93 --prefix XDG_DATA_DIRS : "${cinnamon-desktop}/share" 94 --prefix XDG_CONFIG_DIRS : "${cinnamon-settings-daemon}/etc/xdg" 95 ) 96 ''; 97 98 meta = with lib; { 99 homepage = "https://github.com/linuxmint/cinnamon-session"; 100 description = "Cinnamon session manager"; 101 license = licenses.gpl2; 102 platforms = platforms.linux; 103 teams = [ teams.cinnamon ]; 104 }; 105}