Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 111 lines 3.0 kB view raw
1{ 2 stdenv, 3 lib, 4 fetchFromGitHub, 5 linkFarm, 6 cmake, 7 pkg-config, 8 libsForQt5, 9 wrapGAppsHook3, 10 dtkwidget, 11 qt5integration, 12 qt5platform-plugins, 13 deepin-pw-check, 14 gsettings-qt, 15 lightdm_qt, 16 linux-pam, 17 xorg, 18 gtest, 19 xkeyboard_config, 20 dbus, 21 dde-session-shell, 22}: 23 24stdenv.mkDerivation rec { 25 pname = "dde-session-shell"; 26 version = "6.0.21"; 27 28 src = fetchFromGitHub { 29 owner = "linuxdeepin"; 30 # DDE 23 releases has moved to `linuxdeepin/dde-session-shell-snipe` 31 repo = "dde-session-shell-snipe"; 32 rev = version; 33 hash = "sha256-v0+Bz6J77Kgf4YV1iDhCqhmcNn493GFq1IEQbXBAVUU="; 34 }; 35 36 postPatch = '' 37 substituteInPlace scripts/lightdm-deepin-greeter files/wayland/lightdm-deepin-greeter-wayland \ 38 --replace "/usr/lib/deepin-daemon" "/run/current-system/sw/lib/deepin-daemon" 39 40 substituteInPlace src/session-widgets/auth_module.h \ 41 --replace "/usr/lib/dde-control-center" "/run/current-system/sw/lib/dde-control-center" 42 43 substituteInPlace src/global_util/modules_loader.cpp \ 44 --replace "/usr/lib/dde-session-shell/modules" "/run/current-system/sw/lib/dde-session-shell/modules" 45 46 substituteInPlace src/{session-widgets/{lockcontent.cpp,userinfo.cpp},widgets/fullscreenbackground.cpp} \ 47 --replace "/usr/share/backgrounds" "/run/current-system/sw/share/backgrounds" 48 49 substituteInPlace src/global_util/xkbparser.h \ 50 --replace "/usr/share/X11/xkb/rules/base.xml" "${xkeyboard_config}/share/X11/xkb/rules/base.xml" 51 52 substituteInPlace files/{org.deepin.dde.ShutdownFront1.service,org.deepin.dde.LockFront1.service} \ 53 --replace "/usr/bin/dbus-send" "${dbus}/bin/dbus-send" \ 54 --replace "/usr/share" "$out/share" 55 56 substituteInPlace src/global_util/{public_func.cpp,constants.h} scripts/lightdm-deepin-greeter files/{dde-lock.desktop,lightdm-deepin-greeter.desktop,wayland/lightdm-deepin-greeter-wayland.desktop} \ 57 --replace "/usr" "$out" 58 59 patchShebangs files/deepin-greeter 60 ''; 61 62 nativeBuildInputs = [ 63 cmake 64 pkg-config 65 libsForQt5.qttools 66 libsForQt5.wrapQtAppsHook 67 wrapGAppsHook3 68 ]; 69 dontWrapGApps = true; 70 71 buildInputs = [ 72 libsForQt5.qtbase 73 dtkwidget 74 qt5integration 75 qt5platform-plugins 76 deepin-pw-check 77 gsettings-qt 78 lightdm_qt 79 libsForQt5.qtx11extras 80 linux-pam 81 xorg.libXcursor 82 xorg.libXtst 83 xorg.libXrandr 84 xorg.libXdmcp 85 gtest 86 ]; 87 88 outputs = [ 89 "out" 90 "dev" 91 ]; 92 93 preFixup = '' 94 qtWrapperArgs+=("''${gappsWrapperArgs[@]}") 95 ''; 96 97 passthru.xgreeters = linkFarm "deepin-greeter-xgreeters" [ 98 { 99 path = "${dde-session-shell}/share/xgreeters/lightdm-deepin-greeter.desktop"; 100 name = "lightdm-deepin-greeter.desktop"; 101 } 102 ]; 103 104 meta = with lib; { 105 description = "Deepin desktop-environment - session-shell module"; 106 homepage = "https://github.com/linuxdeepin/dde-session-shell"; 107 license = licenses.gpl3Plus; 108 platforms = platforms.linux; 109 teams = [ teams.deepin ]; 110 }; 111}