summary refs log tree commit diff
diff options
context:
space:
mode:
authorJan Solanti <jhs@psonet.com>2020-03-30 04:05:52 +0300
committerJan Solanti <jhs@psonet.com>2020-03-31 17:24:37 +0300
commit081ed8f0126178a0d2c624fd4bd946704db7fc6a (patch)
treecd67d9314f2987b655bf5cbe1a2d877a9a430d9f
parent35035a543c9ed2e3383ecfdf6b9c610e20c3223c (diff)
downloadnixpkgs-081ed8f0126178a0d2c624fd4bd946704db7fc6a.tar
nixpkgs-081ed8f0126178a0d2c624fd4bd946704db7fc6a.tar.gz
nixpkgs-081ed8f0126178a0d2c624fd4bd946704db7fc6a.tar.bz2
nixpkgs-081ed8f0126178a0d2c624fd4bd946704db7fc6a.tar.lz
nixpkgs-081ed8f0126178a0d2c624fd4bd946704db7fc6a.tar.xz
nixpkgs-081ed8f0126178a0d2c624fd4bd946704db7fc6a.tar.zst
nixpkgs-081ed8f0126178a0d2c624fd4bd946704db7fc6a.zip
xow: 0.2 -> 0.4
-rw-r--r--nixos/modules/hardware/uinput.nix2
-rw-r--r--nixos/modules/services/hardware/xow.nix19
-rw-r--r--pkgs/misc/drivers/xow/default.nix25
3 files changed, 17 insertions, 29 deletions
diff --git a/nixos/modules/hardware/uinput.nix b/nixos/modules/hardware/uinput.nix
index 101c12fe257..55e86bfa6bd 100644
--- a/nixos/modules/hardware/uinput.nix
+++ b/nixos/modules/hardware/uinput.nix
@@ -4,7 +4,7 @@ let
   cfg = config.hardware.uinput;
 in {
   options.hardware.uinput = {
-    enable = lib.mkEnableOption "Whether to enable uinput support";
+    enable = lib.mkEnableOption "uinput support";
   };
 
   config = lib.mkIf cfg.enable {
diff --git a/nixos/modules/services/hardware/xow.nix b/nixos/modules/services/hardware/xow.nix
index a97dd5c870d..a18d60ad83b 100644
--- a/nixos/modules/services/hardware/xow.nix
+++ b/nixos/modules/services/hardware/xow.nix
@@ -4,27 +4,14 @@ let
   cfg = config.services.hardware.xow;
 in {
   options.services.hardware.xow = {
-    enable = lib.mkEnableOption "Whether to enable xow or not.";
+    enable = lib.mkEnableOption "xow as a systemd service";
   };
 
   config = lib.mkIf cfg.enable {
     hardware.uinput.enable = true;
 
-    users.users.xow = {
-      group = "uinput";
-      isSystemUser = true;
-    };
+    systemd.packages = [ pkgs.xow ];
 
-    systemd.services.xow = {
-      wantedBy = [ "multi-user.target" ];
-      description = "Xbox One Wireless Dongle Driver";
-      after = [ "systemd-udev-settle.service" ];
-      serviceConfig = {
-        ExecStart = ''
-          ${pkgs.xow}/bin/xow
-        '';
-        User = "xow";
-      };
-    };
+    services.udev.packages = [ pkgs.xow ];
   };
 }
diff --git a/pkgs/misc/drivers/xow/default.nix b/pkgs/misc/drivers/xow/default.nix
index 5ca3f235fcc..d5afc96c3b4 100644
--- a/pkgs/misc/drivers/xow/default.nix
+++ b/pkgs/misc/drivers/xow/default.nix
@@ -1,32 +1,33 @@
-{ stdenv, fetchFromGitHub, libusb, gitMinimal }:
+{ stdenv, fetchFromGitHub, libusb }:
 
 stdenv.mkDerivation rec {
   pname = "xow";
-  version = "0.2";
+  version = "0.4";
 
   src = fetchFromGitHub {
     owner = "medusalix";
     repo = "xow";
     rev = "v${version}";
-    sha256 = "03ajal91xi52svzy621aa4jcdf0vj4pqd52kljam0wryrlmcpbr3";
+    sha256 = "1xkwcx2gqip9v2h3zjmrn7sgcck3midl5alhsmr3zivgdipamynv";
   };
 
-  makeFlags = [ "BUILD=RELEASE" "VERSION=${version}" ];
+  makeFlags = [
+    "BUILD=RELEASE"
+    "VERSION=${version}"
+    "BINDIR=${placeholder ''out''}/bin"
+    "UDEVDIR=${placeholder ''out''}/lib/udev/rules.d"
+    "MODLDIR=${placeholder ''out''}/lib/modules-load.d"
+    "MODPDIR=${placeholder ''out''}/lib/modprobe.d"
+    "SYSDDIR=${placeholder ''out''}/lib/systemd/system"
+  ];
   enableParallelBuilding = true;
   buildInputs = [ libusb ];
 
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/bin
-    cp xow $out/bin
-    runHook postInstall
-  '';
-
   meta = with stdenv.lib; {
     homepage = "https://github.com/medusalix/xow";
     description = "Linux driver for the Xbox One wireless dongle";
     license = licenses.gpl2Plus;
-    maintainers = [ maintainers.pmiddend ];
+    maintainers = [ maintainers.jansol ];
     platforms = platforms.linux;
   };
 }