Do not assume the changelog file is always present for the info file (#280)
The `(..)/raspberrypi-kernel/changelog.Debian.gz` file is not guaranteed to be present in the built `ROOTFS_DIR`, for example when building very minimal images without package documentation. In these cases, the `firmware` variable will be left empty and the subsequent calls to `curl` will return large 404 HTML content from GitHub. Instead, simply check if the changelog file exists before using it.
This commit is contained in:
parent
407663a57f
commit
8acf95f237
1 changed files with 10 additions and 8 deletions
|
@ -50,6 +50,7 @@ cp "$ROOTFS_DIR/etc/rpi-issue" "$INFO_FILE"
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
|
if [ -f "$ROOTFS_DIR/usr/share/doc/raspberrypi-kernel/changelog.Debian.gz" ]; then
|
||||||
firmware=$(zgrep "firmware as of" \
|
firmware=$(zgrep "firmware as of" \
|
||||||
"$ROOTFS_DIR/usr/share/doc/raspberrypi-kernel/changelog.Debian.gz" | \
|
"$ROOTFS_DIR/usr/share/doc/raspberrypi-kernel/changelog.Debian.gz" | \
|
||||||
head -n1 | sed -n 's|.* \([^ ]*\)$|\1|p')
|
head -n1 | sed -n 's|.* \([^ ]*\)$|\1|p')
|
||||||
|
@ -59,8 +60,9 @@ cp "$ROOTFS_DIR/etc/rpi-issue" "$INFO_FILE"
|
||||||
printf "Kernel: https://github.com/raspberrypi/linux/tree/%s\n" "$kernel"
|
printf "Kernel: https://github.com/raspberrypi/linux/tree/%s\n" "$kernel"
|
||||||
|
|
||||||
uname="$(curl -s -L "https://github.com/raspberrypi/firmware/raw/$firmware/extra/uname_string7")"
|
uname="$(curl -s -L "https://github.com/raspberrypi/firmware/raw/$firmware/extra/uname_string7")"
|
||||||
|
|
||||||
printf "Uname string: %s\n" "$uname"
|
printf "Uname string: %s\n" "$uname"
|
||||||
|
fi
|
||||||
|
|
||||||
printf "\nPackages:\n"
|
printf "\nPackages:\n"
|
||||||
dpkg -l --root "$ROOTFS_DIR"
|
dpkg -l --root "$ROOTFS_DIR"
|
||||||
} >> "$INFO_FILE"
|
} >> "$INFO_FILE"
|
||||||
|
|
Loading…
Reference in a new issue