diff options
-rw-r--r-- | nixos/modules/hardware/all-firmware.nix | 1 | ||||
-rw-r--r-- | pkgs/os-specific/linux/firmware/xow_dongle-firmware/default.nix | 32 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 | ||||
-rw-r--r-- | pkgs/top-level/linux-kernels.nix | 2 |
4 files changed, 36 insertions, 1 deletions
diff --git a/nixos/modules/hardware/all-firmware.nix b/nixos/modules/hardware/all-firmware.nix index 99bdb11b011..5b60b17312f 100644 --- a/nixos/modules/hardware/all-firmware.nix +++ b/nixos/modules/hardware/all-firmware.nix @@ -83,6 +83,7 @@ in { b43Firmware_5_1_138 b43Firmware_6_30_163_46 b43FirmwareCutter + xow_dongle-firmware ] ++ optional pkgs.stdenv.hostPlatform.isx86 facetimehd-firmware; }) (mkIf cfg.wirelessRegulatoryDatabase { diff --git a/pkgs/os-specific/linux/firmware/xow_dongle-firmware/default.nix b/pkgs/os-specific/linux/firmware/xow_dongle-firmware/default.nix new file mode 100644 index 00000000000..0375eb0eead --- /dev/null +++ b/pkgs/os-specific/linux/firmware/xow_dongle-firmware/default.nix @@ -0,0 +1,32 @@ +{ stdenv, lib, fetchurl, cabextract }: + +stdenv.mkDerivation rec { + pname = "xow_dongle-firmware"; + version = "2017-07"; + + dontUnpack = true; + dontInstall = true; + + src = fetchurl { + url = "http://download.windowsupdate.com/c/msdownload/update/driver/drvs/2017/07/1cd6a87c-623f-4407-a52d-c31be49e925c_e19f60808bdcbfbd3c3df6be3e71ffc52e43261e.cab"; + sha256 = "013g1zngxffavqrk5jy934q3bdhsv6z05ilfixdn8dj0zy26lwv5"; + }; + + nativeBuildInputs = [ cabextract ]; + + buildPhase = '' + cabextract -F FW_ACC_00U.bin ${src} + mkdir -p $out/lib/firmware + cp -a FW_ACC_00U.bin $out/lib/firmware/xow_dongle.bin + ''; + + meta = with lib; { + description = "Xbox One wireless dongle firmware"; + homepage = "https://www.xbox.com/en-NZ/accessories/adapters/wireless-adapter-windows"; + license = licenses.unfree; + maintainers = with lib.maintainers; [ rhysmdnz ]; + platforms = platforms.linux; + }; +} + + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f9be6bb9b42..77c38e8d4ff 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -34115,6 +34115,8 @@ with pkgs; xosview2 = callPackage ../tools/X11/xosview2 { }; + xow_dongle-firmware = callPackage ../os-specific/linux/firmware/xow_dongle-firmware { }; + xpad = callPackage ../applications/misc/xpad { }; xsane = callPackage ../applications/graphics/sane/xsane.nix { diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index 5ce446b5a5e..411358267f3 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -460,7 +460,7 @@ in { xmm7360-pci = callPackage ../os-specific/linux/xmm7360-pci { }; - xone = callPackage ../os-specific/linux/xone { }; + xone = if lib.versionAtLeast kernel.version "5.4" then callPackage ../os-specific/linux/xone { } else null; xpadneo = callPackage ../os-specific/linux/xpadneo { }; |