parent
d7bfd04301
commit
7c763118b4
@ -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 ]; |
||||
}; |
||||
} |
Loading…
Reference in new issue