forked from mirrors/nixpkgs
2a8f7d71ce
Build was failing because we were depending on tagged versions of the deblobbing scripts. The tags are not updated and thus newer changes required won't be reflected unless the tag is re-created, which might not be reliably the case. So bumping revision and switching to use the branches to access the deblob scripts. For context, in our case the missing change is: --- /nix/store/sfc0rrhj5l44zpqgpsymq5750k5wzg8p-tags-r16790/4.19-gnu/deblob-4.19 1970-01-01 01:00:01.000000000 +0100 +++ ../deblob-4.19 2019-09-14 14:53:44.637404289 +0200 @@ -1879,7 +1879,11 @@ announce BRCMFMAC - "Broadcom IEEE802.11n embedded FullMAC WLAN driver" reject_firmware drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c -reject_firmware drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c +if grep -q firmware_request_nowarn drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c; then + reject_firmware_nowarn drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c +else + reject_firmware drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c +fi clean_blob drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c clean_blob drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.h
42 lines
1.1 KiB
Nix
42 lines
1.1 KiB
Nix
{ stdenv, lib, fetchsvn, linux
|
|
, scripts ? fetchsvn {
|
|
url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
|
|
|
|
# Update this if linux_latest-libre fails to build.
|
|
# $ curl https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/ | grep -Eo 'Revision [0-9]+'
|
|
rev = "16791";
|
|
sha256 = "1lpaka4hs7yrpnrzfybd6radjylwvw2p4aly68pypykqs2srvm7j";
|
|
}
|
|
, ...
|
|
}:
|
|
|
|
let
|
|
majorMinor = lib.versions.majorMinor linux.modDirVersion;
|
|
|
|
major = lib.versions.major linux.modDirVersion;
|
|
minor = lib.versions.minor linux.modDirVersion;
|
|
patch = lib.versions.patch linux.modDirVersion;
|
|
|
|
in linux.override {
|
|
argsOverride = {
|
|
modDirVersion = "${linux.modDirVersion}-gnu";
|
|
|
|
src = stdenv.mkDerivation {
|
|
name = "${linux.name}-libre-src";
|
|
src = linux.src;
|
|
buildPhase = ''
|
|
${scripts}/${majorMinor}/deblob-${majorMinor} \
|
|
${major} ${minor} ${patch}
|
|
'';
|
|
checkPhase = ''
|
|
${scripts}/deblob-check
|
|
'';
|
|
installPhase = ''
|
|
cp -r . "$out"
|
|
'';
|
|
};
|
|
|
|
maintainers = [ lib.maintainers.qyliss ];
|
|
};
|
|
}
|