debian-cd-clone/tools/make-firmware-image

56 lines
1.4 KiB
Plaintext
Raw Normal View History

#!/bin/sh
# Work out which firmware files to include in the image
# Several steps:
#
# 1. Look for firmware packages just like a regular debian-cd build with
# non-free enabled would do (see NONFREE_COMPONENTS variable for details)
# 2. Add them into the firmware temp tree
# 3. Make images (tar.gz, zip) of that tree
set -e
export MIRROR=$1
export CODENAME=$2
TMPDIR=$3
export LC_ALL=C
if [ "$MIRROR"x = ""x ] || \
[ "$CODENAME"x = ""x ] || \
[ "$TMPDIR"x = ""x ] ; then
echo "$0: Need parameters"
exit 1
fi
rm -rf $TMPDIR/firmware
mkdir -p $TMPDIR/firmware
# Debian 12+ official images use main and non-free-firmware, Debian 11
# sticks to the three historical components:
case $CODENAME in
bullseye)
export FIRMWARE_COMPONENTS="main contrib non-free"
;;
*)
# FIXME: drop non-free when we no longer need it
export FIRMWARE_COMPONENTS="main non-free non-free-firmware"
;;
esac
# This tool requires environment variables (exported earlier) and two
# parameters; the second one has a special value for us to use:
FILES=$($BASEDIR/tools/generate_firmware_task '*' --list-filenames)
for FILE in $FILES; do
cp ${MIRROR}/${FILE} $TMPDIR/firmware
done
cd $TMPDIR/firmware
tar czf ../firmware.tar.gz .
2008-06-23 21:57:37 +00:00
zip -9rq ../firmware.zip .
cd ..
find firmware | cpio --quiet -o -H newc | pigz -9nm > firmware.cpio.gz
ls -l $PWD/firmware.cpio.gz $PWD/firmware.tar.gz $PWD/firmware.zip
2015-10-07 14:36:22 +00:00
2015-10-07 15:28:19 +00:00
sha256sum firmware.* > SHA256SUMS
sha512sum firmware.* > SHA512SUMS