Refactor ath10k-replace to no longer need an outputHash

The outputHash would change and frequently cause this to not work. This
gets around the issue by using the built version firmwareLinuxNonfree as
a source instead of trying to patch it directly.
This commit is contained in:
Mason Mackaman 2022-02-20 12:23:14 -05:00
parent 1ccfe243aa
commit b633d393e2
1 changed files with 10 additions and 17 deletions

View File

@ -3,30 +3,23 @@ let
repos = (pkgs.callPackage ../../../repos.nix {});
killernetworking_firmware = repos.surface-go-ath10k-firmware_backup + "/K1535_Debian";
in
firmwareLinuxNonfree.overrideAttrs (old: rec {
stdenv.mkDerivation {
pname = "microsoft-surface-go-firmware-linux-nonfree";
srcs = [
firmwareLinuxNonfree.src
killernetworking_firmware
];
sourceRoot = firmwareLinuxNonfree.src;
dontMakeSourcesWritable = true;
postInstall = ''
# Delete the non-working firmware:
rm -v $out/lib/firmware/ath10k/QCA6174/{hw2.1,hw3.0}/board.bin
rm -v $out/lib/firmware/ath10k/QCA6174/{hw2.1,hw3.0}/board-2.bin
inherit (firmwareLinuxNonfree) version;
src = firmwareLinuxNonfree;
phases = [ "unpackPhase" "installPhase" ];
installPhase = ''
# Install the Surface Go Wifi firmware:
cp ${killernetworking_firmware}/board.bin $out/lib/firmware/ath10k/QCA6174/hw2.1/
cp ${killernetworking_firmware}/board.bin $out/lib/firmware/ath10k/QCA6174/hw3.0/
'';
cp ${killernetworking_firmware}/board.bin lib/firmware/ath10k/QCA6174/hw2.1/
cp ${killernetworking_firmware}/board.bin lib/firmware/ath10k/QCA6174/hw3.0/
outputHash = "176cf5b9f370x2a532h2afjfkrxy13gqdygc11bam0sg8dlnrv21";
mkdir $out; cp -r ./. $out
'';
meta = with lib; {
description = "Standard binary firmware collection, adjusted with the Surface Go WiFi firmware";
platforms = platforms.linux;
priority = 5;
};
})
}