xow_dongle-firmware: install all expected fw blobs

This commit is contained in:
Fazzi
2026-02-02 00:39:51 +01:00
committed by Weijia Wang
parent 6a94faead0
commit 055fa14634
+27 -19
View File
@@ -5,52 +5,60 @@
cabextract,
}:
stdenvNoCC.mkDerivation {
pname = "xow_dongle-firmware";
version = "0-unstable-2025-04-22";
pname = "xow-dongle-firmware";
version = "0-unstable-2025-12-18";
srcs = [
(fetchurl {
name = "xow_dongle.cab";
url = "https://catalog.s.download.windowsupdate.com/d/msdownload/update/driver/drvs/2017/03/2ea9591b-f751-442c-80ce-8f4692cdc67b_6b555a3a288153cf04aec6e03cba360afe2fce34.cab";
hash = "sha256-2Jpy6NwQt8TxbVyIf+f1TDTCIAWsHzYHBNXZRiJY7zI=";
})
(fetchurl {
url = "https://catalog.s.download.windowsupdate.com/c/msdownload/update/driver/drvs/2017/07/1cd6a87c-623f-4407-a52d-c31be49e925c_e19f60808bdcbfbd3c3df6be3e71ffc52e43261e.cab";
hash = "sha256-ZXNqhP9ANmRbj47GAr7ZGrY1MBnJyzIz3sq5/uwPbwQ=";
})
(fetchurl {
name = "xow_dongle_045e_02e6.cab";
url = "https://catalog.s.download.windowsupdate.com/d/msdownload/update/driver/drvs/2015/12/20810869_8ce2975a7fbaa06bcfb0d8762a6275a1cf7c1dd3.cab";
hash = "sha256-5jiKJ6dXVpIN5zryRo461V16/vWavDoLUICU4JHRnwg=";
url = "https://catalog.s.download.windowsupdate.com/c/msdownload/update/driver/drvs/2017/06/1dbd7cb4-53bc-4857-a5b0-5955c8acaf71_9081931e7d664429a93ffda0db41b7545b7ac257.cab";
hash = "sha256-kN2R+2dGDTh0B/2BCcDn0PGPS2Wb4PYtuFihhJ6tLuA=";
})
(fetchurl {
url = "https://catalog.s.download.windowsupdate.com/d/msdownload/update/driver/drvs/2017/08/aeff215c-3bc4-4d36-a3ea-e14bfa8fa9d2_e58550c4f74a27e51e5cb6868b10ff633fa77164.cab";
hash = "sha256-Wo+62VIeWMxpeoc0cgykl2cwmAItYdkaiL5DMALM2PI=";
})
];
sourceRoot = ".";
dontConfigure = true;
dontBuild = true;
nativeBuildInputs = [ cabextract ];
unpackPhase = ''
sources=($srcs)
srcs=($srcs)
cabextract -F FW_ACC_00U.bin ''${sources[0]}
mv FW_ACC_00U.bin xow_dongle.bin
cabextract -F FW_ACC_00U.bin ''${srcs[0]}
mv FW_ACC_00U.bin xone_dongle_02e6.bin
cabextract -F FW_ACC_00U.bin ''${sources[1]}
mv FW_ACC_00U.bin xow_dongle_045e_02e6.bin
cabextract -F FW_ACC_00U.bin ''${srcs[1]}
mv FW_ACC_00U.bin xone_dongle_02fe.bin
cabextract -F FW_ACC_CL.bin ''${srcs[2]}
mv FW_ACC_CL.bin xone_dongle_02f9.bin
cabextract -F FW_ACC_BR.bin ''${srcs[3]}
mv FW_ACC_BR.bin xone_dongle_091e.bin
'';
installPhase = ''
install -Dm644 xow_dongle.bin $out/lib/firmware/xow_dongle.bin
install -Dm644 xow_dongle_045e_02e6.bin $out/lib/firmware/xow_dongle_045e_02e6.bin
mkdir -p $out/lib/firmware/
cp xone_dongle_*.bin $out/lib/firmware/
'';
meta = {
description = "Xbox One wireless dongle firmware";
homepage = "https://www.xbox.com/en-NZ/accessories/adapters/wireless-adapter-windows";
homepage = "https://www.microsoft.com/en-us/d/xbox-wireless-adapter-for-windows/91dqrb97l130";
license = lib.licenses.unfree;
maintainers = with lib.maintainers; [
rhysmdnz
fazzi
];
platforms = lib.platforms.linux;
sourceProvenance = [ lib.sourceTypes.binaryFirmware ];
};
}