diff options
Diffstat (limited to 'pkgs/os-specific/linux/firmware/linux-firmware/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/firmware/linux-firmware/default.nix | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/firmware/linux-firmware/default.nix b/pkgs/os-specific/linux/firmware/linux-firmware/default.nix new file mode 100644 index 00000000000..283e04b4754 --- /dev/null +++ b/pkgs/os-specific/linux/firmware/linux-firmware/default.nix @@ -0,0 +1,47 @@ +let + source = import ./source.nix; +in { + stdenvNoCC, + fetchzip, + lib, + rdfind, + which, +}: + +stdenvNoCC.mkDerivation rec { + pname = "linux-firmware"; + version = source.version; + + src = fetchzip { + url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/snapshot/linux-firmware-${source.revision}.tar.gz"; + hash = source.sourceHash; + }; + + nativeBuildInputs = [ + rdfind + which + ]; + + installFlags = [ "DESTDIR=$(out)" ]; + + # Firmware blobs do not need fixing and should not be modified + dontFixup = true; + + outputHashMode = "recursive"; + outputHashAlgo = "sha256"; + outputHash = source.outputHash; + + meta = with lib; { + description = "Binary firmware collection packaged by kernel.org"; + homepage = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git"; + license = licenses.unfreeRedistributableFirmware; + platforms = platforms.linux; + maintainers = with maintainers; [ fpletz ]; + priority = 6; # give precedence to kernel firmware + }; + + passthru = { + inherit version; + updateScript = ./update.sh; + }; +} |