nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 stdenv,
3 fetchFromGitHub,
4 lib,
5 meson,
6 ninja,
7 pkg-config,
8 qtbase,
9 qttools,
10 wrapQtAppsHook,
11 cmake,
12}:
13
14let
15 libopenrazer = stdenv.mkDerivation (finalAttrs: {
16 pname = "libopenrazer";
17 version = "0.3.0";
18
19 src = fetchFromGitHub {
20 owner = "z3ntu";
21 repo = "libopenrazer";
22 tag = "v${finalAttrs.version}";
23 hash = "sha256-bU8Zsm/hM4HbPcoD191zwxU3x7f0i51evtVeD4jqw0U=";
24 };
25
26 nativeBuildInputs = [
27 pkg-config
28 meson
29 ninja
30 ];
31
32 buildInputs = [
33 qtbase
34 qttools
35 ];
36
37 dontWrapQtApps = true;
38
39 meta = {
40 homepage = "https://github.com/z3ntu/libopenrazer";
41 description = "Qt wrapper around the D-Bus API from OpenRazer";
42 license = lib.licenses.gpl3Plus;
43 platforms = lib.platforms.linux;
44 };
45 });
46in
47stdenv.mkDerivation (finalAttrs: {
48 pname = "razergenie";
49 version = "1.2.0";
50
51 src = fetchFromGitHub {
52 owner = "z3ntu";
53 repo = "RazerGenie";
54 tag = "v${finalAttrs.version}";
55 hash = "sha256-kw7/Qf6L63PBuyq3TfgU2iGAKX0qLGiq6JgLnN+3tu4=";
56 };
57
58 postUnpack = ''ln -s ${libopenrazer} libopenrazer'';
59
60 nativeBuildInputs = [
61 pkg-config
62 meson
63 ninja
64 cmake
65 wrapQtAppsHook
66 ];
67
68 buildInputs = [
69 qtbase
70 qttools
71 libopenrazer
72 ];
73
74 meta = {
75 homepage = "https://github.com/z3ntu/RazerGenie";
76 description = "Qt application for configuring your Razer devices under GNU/Linux";
77 mainProgram = "razergenie";
78 license = lib.licenses.gpl3;
79 maintainers = with lib.maintainers; [
80 f4814n
81 Mogria
82 ];
83 platforms = lib.platforms.linux;
84 };
85})