Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 95 lines 1.9 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 cmake, 6 extra-cmake-modules, 7 pkg-config, 8 fcitx5, 9 fcitx5-qt, 10 qtbase, 11 qtsvg, 12 qtwayland, 13 qtdeclarative, 14 qtx11extras ? null, 15 kitemviews, 16 kwidgetsaddons, 17 qtquickcontrols2 ? null, 18 kcoreaddons, 19 kdeclarative, 20 kirigami ? null, 21 kirigami2 ? null, 22 isocodes, 23 xkeyboardconfig, 24 libxkbfile, 25 libplasma ? null, 26 plasma-framework ? null, 27 wrapQtAppsHook, 28 kcmSupport ? true, 29}: 30 31stdenv.mkDerivation rec { 32 pname = "fcitx5-configtool"; 33 version = "5.1.9"; 34 35 src = fetchFromGitHub { 36 owner = "fcitx"; 37 repo = pname; 38 rev = version; 39 hash = "sha256-x4DhPxiwPR16xQpBFnJ1DiU435BHOOs6pFj+zJQXFUI="; 40 }; 41 42 cmakeFlags = [ 43 (lib.cmakeBool "KDE_INSTALL_USE_QT_SYS_PATHS" true) 44 (lib.cmakeBool "ENABLE_KCM" kcmSupport) 45 (lib.cmakeBool "USE_QT6" (lib.versions.major qtbase.version == "6")) 46 ]; 47 48 nativeBuildInputs = [ 49 cmake 50 extra-cmake-modules 51 pkg-config 52 wrapQtAppsHook 53 ]; 54 55 buildInputs = [ 56 fcitx5 57 fcitx5-qt 58 qtbase 59 qtsvg 60 qtwayland 61 kitemviews 62 kwidgetsaddons 63 isocodes 64 xkeyboardconfig 65 libxkbfile 66 ] 67 ++ lib.optionals (lib.versions.major qtbase.version == "5") [ 68 qtx11extras 69 ] 70 ++ lib.optionals kcmSupport ( 71 [ 72 qtdeclarative 73 kcoreaddons 74 kdeclarative 75 ] 76 ++ lib.optionals (lib.versions.major qtbase.version == "5") [ 77 qtquickcontrols2 78 plasma-framework 79 kirigami2 80 ] 81 ++ lib.optionals (lib.versions.major qtbase.version == "6") [ 82 libplasma 83 kirigami 84 ] 85 ); 86 87 meta = with lib; { 88 description = "Configuration Tool for Fcitx5"; 89 homepage = "https://github.com/fcitx/fcitx5-configtool"; 90 license = licenses.gpl2Plus; 91 maintainers = with maintainers; [ poscat ]; 92 platforms = platforms.linux; 93 mainProgram = "fcitx5-config-qt"; 94 }; 95}