2021-02-07 03:49:46 +01:00
|
|
|
{stdenv, lib, pkgs, firmwareLinuxNonfree, ...}:
|
2021-02-06 12:55:27 +01:00
|
|
|
let
|
|
|
|
repos = (pkgs.callPackage ../repos.nix {});
|
2021-02-07 01:31:26 +01:00
|
|
|
ath10k = ./ath10k;
|
|
|
|
# ath10k = repos.ath10k-firmware;
|
2021-02-06 12:55:27 +01:00
|
|
|
in
|
|
|
|
firmwareLinuxNonfree.overrideAttrs (old: rec {
|
|
|
|
pname = "microsoft-surface-go-firmware-linux-nonfree";
|
|
|
|
srcs = [
|
|
|
|
firmwareLinuxNonfree.src
|
2021-02-07 01:31:26 +01:00
|
|
|
ath10k
|
2021-02-06 12:55:27 +01:00
|
|
|
];
|
|
|
|
sourceRoot = firmwareLinuxNonfree.src;
|
|
|
|
|
|
|
|
dontMakeSourcesWritable = true;
|
|
|
|
postInstall = ''
|
2021-02-07 01:31:26 +01:00
|
|
|
# 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
|
2021-02-06 12:55:27 +01:00
|
|
|
|
2021-02-07 01:31:26 +01:00
|
|
|
# Install the Surface Go Wifi firmware:
|
|
|
|
cp ${ath10k}/K1535_Debian/board.bin $out/lib/firmware/ath10k/QCA6174/hw2.1/
|
|
|
|
cp ${ath10k}/K1535_Debian/board.bin $out/lib/firmware/ath10k/QCA6174/hw3.0/
|
2021-02-06 12:55:27 +01:00
|
|
|
'';
|
2021-02-07 03:49:02 +01:00
|
|
|
|
|
|
|
outputHash = "1nc56qii96dfvxnv3ad3lxz2rzyqcbldk0h9rbm3l2pgamkvj8dw";
|
2021-02-07 03:49:46 +01:00
|
|
|
|
|
|
|
meta = with lib; {
|
|
|
|
description = "Standard binary firmware collection, adjusted with the Surface Go WiFi firmware";
|
|
|
|
platforms = platforms.linux;
|
|
|
|
priority = 5;
|
|
|
|
};
|
2021-02-06 12:55:27 +01:00
|
|
|
})
|