Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 buildPythonPackage, 4 daemonize, 5 dbus-python, 6 fetchFromGitHub, 7 gobject-introspection, 8 gtk3, 9 pygobject3, 10 pyudev, 11 setproctitle, 12 setuptools, 13 wrapGAppsNoGuiHook, 14 notify2, 15 glib 16}: 17 18let 19 common = import ./common.nix { inherit lib fetchFromGitHub; }; 20in 21buildPythonPackage (common // { 22 pname = "openrazer-daemon"; 23 24 outputs = [ 25 "out" 26 "man" 27 ]; 28 29 sourceRoot = "${common.src.name}/daemon"; 30 31 postPatch = '' 32 substituteInPlace openrazer_daemon/daemon.py \ 33 --replace-fail "plugdev" "openrazer" 34 ''; 35 36 nativeBuildInputs = [ setuptools wrapGAppsNoGuiHook gobject-introspection ]; 37 38 buildInputs = [ 39 glib 40 gtk3 41 ]; 42 43 propagatedBuildInputs = [ 44 daemonize 45 dbus-python 46 pygobject3 47 pyudev 48 setproctitle 49 notify2 50 ]; 51 52 postInstall = '' 53 DESTDIR="$out" PREFIX="" make manpages install-resources install-systemd 54 ''; 55 56 # no tests run 57 doCheck = false; 58 59 dontWrapGApps = true; 60 61 preFixup = '' 62 makeWrapperArgs+=("''${gappsWrapperArgs[@]}") 63 ''; 64 65 meta = common.meta // { 66 description = "Entirely open source user-space daemon that allows you to manage your Razer peripherals on GNU/Linux"; 67 mainProgram = "openrazer-daemon"; 68 }; 69})