python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / applications / misc / corectrl / default.nix
blob8cf8ddada5648f02b7650ebfd5552fb1ccf10f32
1 { lib, stdenv
2 , fetchFromGitLab
3 , extra-cmake-modules
4 , botan2
5 , karchive
6 , kauth
7 , libdrm
8 , hwdata
9 , glxinfo
10 , polkit
11 , procps
12 , util-linux
13 , vulkan-tools
14 , qtbase
15 , qtcharts
16 , qtquickcontrols2
17 , qtsvg
18 , qttools
19 , qtxmlpatterns
20 , quazip
21 , wrapQtAppsHook
22 } :
24 stdenv.mkDerivation rec{
25   pname = "corectrl";
26   version = "1.3.1";
28   src = fetchFromGitLab {
29     owner = "corectrl";
30     repo = "corectrl";
31     rev = "v${version}";
32     sha256 = "sha256-mVMyXpNhwljxsAvrKeHPxUSfdF/mfxG157T13Kb8PnE=";
33   };
34   patches = [
35     ./polkit-dir.patch
36   ];
38   nativeBuildInputs = [
39     extra-cmake-modules
40     wrapQtAppsHook
41   ];
42   buildInputs = [
43     botan2
44     karchive
45     kauth
46     libdrm
47     glxinfo
48     polkit
49     procps
50     util-linux
51     vulkan-tools
52     qtbase
53     qtcharts
54     qtquickcontrols2
55     qtsvg
56     qttools
57     qtxmlpatterns
58     quazip
59   ];
61   cmakeFlags = [
62     "-DWITH_PCI_IDS_PATH=${hwdata}/share/hwdata/pci.ids"
63     "-DINSTALL_DBUS_FILES_IN_PREFIX=true"
64     "-DPOLKIT_POLICY_INSTALL_DIR=${placeholder "out"}/share/polkit-1/actions"
65   ];
67   runtimeDeps = [ hwdata glxinfo vulkan-tools util-linux procps ];
68   binPath = lib.makeBinPath runtimeDeps;
70   dontWrapQtApps = true;
72   postInstall = ''
73     wrapQtApp $out/bin/corectrl --prefix PATH ":" ${binPath}
74   '';
76   meta = with lib; {
77     homepage = "https://gitlab.com/corectrl/corectrl/";
78     description = "Control your computer hardware via application profiles";
79     longDescription = ''
80       CoreCtrl is a Free and Open Source GNU/Linux application that allows you
81       to control with ease your computer hardware using application profiles. It
82       aims to be flexible, comfortable and accessible to regular users.
83     '';
84     license = licenses.gpl3Plus;
85     platforms = platforms.linux;
86   };
88 # TODO: report upstream that libdrm is not detected at configure time