Unverified Commit b7d3d47f authored by Weijia Wang's avatar Weijia Wang Committed by GitHub
Browse files

xone{,-dongle-firmware}: various fixes and updates (#472163)

parents aa4844a7 cc4da1b7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -91,7 +91,7 @@ in
          broadcom-bt-firmware
          b43Firmware_5_1_138
          b43Firmware_6_30_163_46
          xow_dongle-firmware
          xone-dongle-firmware
        ]
        ++ lib.optionals pkgs.stdenv.hostPlatform.isx86 [
          facetimehd-calibration
+1 −1
Original line number Diff line number Diff line
@@ -20,7 +20,7 @@ in
      ];
      extraModulePackages = with config.boot.kernelPackages; [ xone ];
    };
    hardware.firmware = [ pkgs.xow_dongle-firmware ];
    hardware.firmware = [ pkgs.xone-dongle-firmware ];
    hardware.xpad-noone.enable = lib.mkDefault true;
  };

+64 −0
Original line number Diff line number Diff line
@@ -5,52 +5,60 @@
  cabextract,
}:
stdenvNoCC.mkDerivation {
  pname = "xow_dongle-firmware";
  version = "0-unstable-2025-04-22";
  pname = "xone-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 ''${srcs[0]}
    mv FW_ACC_00U.bin xone_dongle_02e6.bin

    cabextract -F FW_ACC_00U.bin ''${srcs[1]}
    mv FW_ACC_00U.bin xone_dongle_02fe.bin

    cabextract -F FW_ACC_00U.bin ''${sources[0]}
    mv FW_ACC_00U.bin xow_dongle.bin
    cabextract -F FW_ACC_CL.bin ''${srcs[2]}
    mv FW_ACC_CL.bin xone_dongle_02f9.bin

    cabextract -F FW_ACC_00U.bin ''${sources[1]}
    mv FW_ACC_00U.bin xow_dongle_045e_02e6.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 ];
  };
}
+2 −2
Original line number Diff line number Diff line
@@ -7,13 +7,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
  pname = "xone";
  version = "0.5.0";
  version = "0.5.4";

  src = fetchFromGitHub {
    owner = "dlundqvist";
    repo = "xone";
    tag = "v${finalAttrs.version}";
    hash = "sha256-Ca7JsyFGsi6iiNusbEgIGc3jHeNLBwKKYzqcm3O6GxU=";
    hash = "sha256-d70H/uuW3YINS6utBdjMDVLyS6wZoyN92xJ/YA7wMRo=";
  };

  setSourceRoot = ''
+1 −0
Original line number Diff line number Diff line
@@ -1952,6 +1952,7 @@ mapAliases {
  xorg-autoconf = util-macros; # Added 2025-08-18
  xorgdocs = xorg-docs; # Added 2026-01-19
  xorgsgmldoctools = xorg-sgml-doctools; # Added 2026-01-19
  xow_dongle-firmware = throw "'xow_dongle-firmware' has been renamed to/replaced by 'xone-dongle-firmware'"; # Added 2025-12-30
  xsw = throw "'xsw' has been removed due to lack of upstream maintenance"; # Added 2025-08-22
  xsynth-dssi = throw "'xsynth-dssi' was removed due to lack of upstream maintenance and relying on gtk2"; # Added 2025-12-02
  xtrap = throw "XTrap was a proposed X11 extension that hasn't been in Xorg since X11R6 in 1994, it is deprecated and archived upstream."; # added 2025-12-13
Loading