1{
2 stdenv,
3 copyDesktopItems,
4 autoPatchelfHook,
5 wrapGAppsHook4,
6 makeDesktopItem,
7 libusb1,
8 webkitgtk_4_1,
9 libsoup_3,
10 pname,
11 version,
12 src,
13 meta,
14 ...
15}:
16stdenv.mkDerivation {
17 inherit
18 pname
19 version
20 src
21 meta
22 ;
23
24 nativeBuildInputs = [
25 copyDesktopItems
26 autoPatchelfHook
27 wrapGAppsHook4
28 ];
29
30 buildInputs = [
31 libusb1
32 webkitgtk_4_1
33 libsoup_3
34 ];
35
36 sourceRoot = ".";
37
38 installPhase = ''
39 runHook preInstall
40
41 install -m755 -D keymapp "$out/bin/keymapp"
42 install -Dm644 icon.png "$out/share/pixmaps/keymapp.png"
43
44 runHook postInstall
45 '';
46
47 preFixup = ''
48 gappsWrapperArgs+=(--set-default '__NV_PRIME_RENDER_OFFLOAD' 1)
49 '';
50
51 desktopItems = [
52 (makeDesktopItem {
53 name = "keymapp";
54 icon = "keymapp";
55 desktopName = "Keymapp";
56 categories = [
57 "Settings"
58 "HardwareSettings"
59 ];
60 type = "Application";
61 exec = "keymapp";
62 })
63 ];
64}