diff options
author | Ben Wolsieffer <benwolsieffer@gmail.com> | 2018-05-24 23:03:42 -0400 |
---|---|---|
committer | Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> | 2018-07-12 17:02:32 +0300 |
commit | 7c763118b4ff79fe74085309a0ae0c6b53fb7c93 (patch) | |
tree | 034395c5ee52ff6cc1436c979f5a82147c72928e /pkgs/os-specific/linux/firmware/raspberrypi-wireless | |
parent | d7bfd04301de8fb893c4ee85bcd9b0ece46836a4 (diff) | |
download | nixpkgs-7c763118b4ff79fe74085309a0ae0c6b53fb7c93.tar nixpkgs-7c763118b4ff79fe74085309a0ae0c6b53fb7c93.tar.gz nixpkgs-7c763118b4ff79fe74085309a0ae0c6b53fb7c93.tar.bz2 nixpkgs-7c763118b4ff79fe74085309a0ae0c6b53fb7c93.tar.lz nixpkgs-7c763118b4ff79fe74085309a0ae0c6b53fb7c93.tar.xz nixpkgs-7c763118b4ff79fe74085309a0ae0c6b53fb7c93.tar.zst nixpkgs-7c763118b4ff79fe74085309a0ae0c6b53fb7c93.zip |
raspberrypiWirelessFirmware: init
Diffstat (limited to 'pkgs/os-specific/linux/firmware/raspberrypi-wireless')
-rw-r--r-- | pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix new file mode 100644 index 00000000000..0918279cc9a --- /dev/null +++ b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix @@ -0,0 +1,49 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "raspberrypi-wireless-firmware-${version}"; + version = "2018-05-30"; + + srcs = [ + (fetchurl { + url = "https://archive.raspberrypi.org/debian/pool/main/b/bluez-firmware/bluez-firmware_1.2-3+rpt5.debian.tar.xz"; + sha256 = "06zpyrz6frkgjy26hr3998klnhjdqxwashgjgvj9rgbcqy70nkxg"; + }) + (fetchurl { + url = "https://archive.raspberrypi.org/debian/pool/main/f/firmware-nonfree/firmware-brcm80211_20161130-3+rpt3_all.deb"; + sha256 = "10l74ac28baprnsiylf2vy4pkxgb3crixid90ngs6si9smm7rn6z"; + }) + ]; + + sourceRoot = "."; + dontBuild = true; + # Firmware blobs do not need fixing and should not be modified + dontFixup = true; + + # Unpack the debian package + unpackCmd = '' + if ! [[ "$curSrc" =~ \.deb$ ]]; then return 1; fi + ar -xf "$curSrc" + tar -xf data.tar.xz + ''; + + installPhase = '' + mkdir -p "$out/lib/firmware/brcm" + + # Wifi firmware + for filename in lib/firmware/brcm/brcmfmac434??-sdio.*; do + cp "$filename" "$out/lib/firmware/brcm" + done + + # Bluetooth firmware + cp broadcom/*.hcd "$out/lib/firmware/brcm" + ''; + + meta = with stdenv.lib; { + description = "Firmware for builtin Wifi/Bluetooth devices in the Raspberry Pi 3 and Zero W"; + homepage = https://archive.raspberrypi.org/debian/pool/main/f/firmware-nonfree/; + license = licenses.unfreeRedistributableFirmware; + platforms = platforms.linux; + maintainers = with maintainers; [ lopsided98 ]; + }; +} |