fork
Configure Feed
Select the types of activity you want to include in your feed.
lol
fork
Configure Feed
Select the types of activity you want to include in your feed.
1{
2 coreutils,
3 fetchFromGitHub,
4 kernel,
5 kernelModuleMakeFlags,
6 stdenv,
7 lib,
8 udevCheckHook,
9 util-linux,
10}:
11
12let
13 common = import ../../../development/python-modules/openrazer/common.nix {
14 inherit lib fetchFromGitHub;
15 };
16in
17stdenv.mkDerivation (
18 common
19 // {
20 pname = "openrazer";
21 version = "${common.version}-${kernel.version}";
22
23 nativeBuildInputs = [ udevCheckHook ] ++ kernel.moduleBuildDependencies;
24
25 makeFlags = kernelModuleMakeFlags ++ [
26 "KERNELDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
27 ];
28
29 doInstallCheck = true;
30
31 installPhase = ''
32 runHook preInstall
33
34 binDir="$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/hid"
35 mkdir -p "$binDir"
36 cp -v driver/*.ko "$binDir"
37 RAZER_MOUNT_OUT="$out/bin/razer_mount"
38 RAZER_RULES_OUT="$out/etc/udev/rules.d/99-razer.rules"
39 install -m 644 -v -D install_files/udev/99-razer.rules $RAZER_RULES_OUT
40 install -m 755 -v -D install_files/udev/razer_mount $RAZER_MOUNT_OUT
41 substituteInPlace $RAZER_RULES_OUT \
42 --replace razer_mount $RAZER_MOUNT_OUT \
43 --replace plugdev openrazer
44 substituteInPlace $RAZER_MOUNT_OUT \
45 --replace /usr/bin/logger ${util-linux}/bin/logger \
46 --replace chgrp ${coreutils}/bin/chgrp \
47 --replace "PATH='/sbin:/bin:/usr/sbin:/usr/bin'" "" \
48 --replace plugdev openrazer
49
50 runHook postInstall
51 '';
52
53 enableParallelBuilding = true;
54
55 meta = common.meta // {
56 description = "Entirely open source Linux driver that allows you to manage your Razer peripherals on GNU/Linux";
57 mainProgram = "razer_mount";
58 broken = kernel.kernelOlder "4.19";
59 };
60 }
61)