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