From 9fe5870d6660a78177c442e4e7474bdd2e9b019b Mon Sep 17 00:00:00 2001 From: muelli Date: Thu, 31 Aug 2023 14:58:06 +0200 Subject: [PATCH 1/2] Use bash for mkdisk.sh to have pushd and popd On my system, pushd and popd are bash internals, so let's make the script use bash. --- utils/mkdisk.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/mkdisk.sh b/utils/mkdisk.sh index 95d80ac..a7ff998 100755 --- a/utils/mkdisk.sh +++ b/utils/mkdisk.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash IMAGE_SIZE_G=100 BOOTSTRAP_SIZE_G=2 From 5c6e8ffae857bfc7a71ed480913d73af3fafbeaf Mon Sep 17 00:00:00 2001 From: Tobias Mueller Date: Thu, 31 Aug 2023 15:11:41 +0200 Subject: [PATCH 2/2] detect syslinux directory for ubuntu On my machine, the syslinux path did not exist. With this change, the script runs more happily. --- utils/mkdisk.sh | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/utils/mkdisk.sh b/utils/mkdisk.sh index a7ff998..973e279 100755 --- a/utils/mkdisk.sh +++ b/utils/mkdisk.sh @@ -127,8 +127,17 @@ cp "${ROOTFS_DIR}/usr/share/syslinux/mbr.bin" "${FS_DIR}/syslinux/" # TODO can't use these as they might not be compatible with the host's guestfish installing syslinux #cp ./root3/usr/share/syslinux/linux.c32 . #cp ./root3/usr/share/syslinux/libcom32.c32 . -cp /usr/lib/syslinux/bios/linux.c32 "${FS_DIR}/syslinux/" -cp /usr/lib/syslinux/bios/libcom32.c32 "${FS_DIR}/syslinux/" +if test -d /usr/lib/syslinux/modules/bios/; then + SYSLINUXDIR=/usr/lib/syslinux/modules/bios/ +elif test -d /usr/lib/syslinux/bios/; then + SYSLINUXDIR=/usr/lib/syslinux/bios/ +else + echo "WARNING! syslinux dir not detected, assuming /usr/lib/syslinux/bios/" + SYSLINUXDIR=/usr/lib/syslinux/bios/ +fi + +cp "$SYSLINUXDIR/linux.c32" "${FS_DIR}/syslinux/" +cp "$SYSLINUXDIR/libcom32.c32" "${FS_DIR}/syslinux/" cat < "${FS_DIR}/syslinux/syslinux.cfg" DEFAULT linux