#!/bin/sh # To get the possibility of reproducible builds we pin to a specific commit # of the linux-firmware repository COMMIT="aa95e90b2c638f1ca6647d12b2d1b18284428f9c" echo "I: Retrieving Linux Firmware - commit ${COMMIT}" ret=$(curl -w "%{http_code}" -o /tmp/linux-firmware-${COMMIT}.tar.gz \ https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/snapshot/linux-firmware-${COMMIT}.tar.gz) if [ "${ret}" != "200" ]; then echo E: Received HTTP error code \"${ret}\" when downloading Linux Firmware ... exit 1 fi tar xf /tmp/linux-firmware-${COMMIT}.tar.gz -C /tmp mkdir -p /lib/firmware mv /tmp/linux-firmware-${COMMIT}/* /lib/firmware rm -rf /tmp/linux-firmware-${COMMIT}* # We do not need all firmware blobs .. cleanup RM_FIRMWARE=" \ v4l-cx* \ s5p-mfc* \ nvidia \ amdgpu \ i915 \ radeon \ matrox \ mediatek \ sb16 \ ti-connectivity \ ueagle-atm \ dvb-* \ v4l-* \ i915 \ qcom \ ctfw-* \ ct2fw-* \ " for dir in ${RM_FIRMWARE} do rm -rf /lib/firmware/${dir} done