parent
1992768157
commit
35035a543c
@ -0,0 +1,19 @@ |
||||
{ config, pkgs, lib, ... }: |
||||
|
||||
let |
||||
cfg = config.hardware.uinput; |
||||
in { |
||||
options.hardware.uinput = { |
||||
enable = lib.mkEnableOption "Whether to enable uinput support"; |
||||
}; |
||||
|
||||
config = lib.mkIf cfg.enable { |
||||
boot.kernelModules = [ "uinput" ]; |
||||
|
||||
users.groups.uinput = {}; |
||||
|
||||
services.udev.extraRules = '' |
||||
SUBSYSTEM=="misc", KERNEL=="uinput", MODE="0660", GROUP="uinput", OPTIONS+="static_node=uinput" |
||||
''; |
||||
}; |
||||
} |
@ -0,0 +1,30 @@ |
||||
{ config, pkgs, lib, ... }: |
||||
|
||||
let |
||||
cfg = config.services.hardware.xow; |
||||
in { |
||||
options.services.hardware.xow = { |
||||
enable = lib.mkEnableOption "Whether to enable xow or not."; |
||||
}; |
||||
|
||||
config = lib.mkIf cfg.enable { |
||||
hardware.uinput.enable = true; |
||||
|
||||
users.users.xow = { |
||||
group = "uinput"; |
||||
isSystemUser = true; |
||||
}; |
||||
|
||||
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"; |
||||
}; |
||||
}; |
||||
}; |
||||
} |
@ -0,0 +1,32 @@ |
||||
{ stdenv, fetchFromGitHub, libusb, gitMinimal }: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
pname = "xow"; |
||||
version = "0.2"; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "medusalix"; |
||||
repo = "xow"; |
||||
rev = "v${version}"; |
||||
sha256 = "03ajal91xi52svzy621aa4jcdf0vj4pqd52kljam0wryrlmcpbr3"; |
||||
}; |
||||
|
||||
makeFlags = [ "BUILD=RELEASE" "VERSION=${version}" ]; |
||||
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 ]; |
||||
platforms = platforms.linux; |
||||
}; |
||||
} |
Loading…
Reference in new issue