wok-current diff syslinux/stuff/iso2exe/iso2exe.sh @ rev 24011

mosh: create /usr/share/terminfo/x/xterm-256color link
author Pascal Bellard <pascal.bellard@slitaz.org>
date Fri Feb 05 17:16:12 2021 +0000 (2021-02-05)
parents 67987cd1245b
children 61df94a0fa43
line diff
     1.1 --- a/syslinux/stuff/iso2exe/iso2exe.sh	Thu Jan 14 12:34:16 2021 +0000
     1.2 +++ b/syslinux/stuff/iso2exe/iso2exe.sh	Fri Feb 05 17:16:12 2021 +0000
     1.3 @@ -41,13 +41,17 @@
     1.4  add_rootfs()
     1.5  {
     1.6  	TMP=/tmp/iso2exe$$
     1.7 -	mkdir -p $TMP
     1.8 -	$0 --get rootfs.gz > $TMP/rootfs.gz
     1.9 -	SIZE=$(wc -c < $TMP/rootfs.gz)
    1.10 -	store 24 $SIZE $1
    1.11 -	OFS=$(( 0x7FF0 - $SIZE ))
    1.12 -	printf "Adding rootfs.gz file at %04X (%d bytes) ...\n" $OFS $SIZE
    1.13 -	ddn if=$TMP/rootfs.gz of=$1 bs=1 seek=$OFS
    1.14 +	mkdir -p $TMP/mnt
    1.15 +	mount -o loop,ro $1 $TMP/mnt
    1.16 +	if grep -qs rootfs $TMP/mnt/boot/isolinux/isolinux.cfg ; then
    1.17 +		$0 --get rootfs.gz > $TMP/rootfs.gz
    1.18 +		SIZE=$(wc -c < $TMP/rootfs.gz)
    1.19 +		store 24 $SIZE $1
    1.20 +		OFS=$(( 0x7FF0 - $SIZE ))
    1.21 +		printf "Adding rootfs.gz file at %04X (%d bytes) ...\n" $OFS $SIZE
    1.22 +		ddn if=$TMP/rootfs.gz of=$1 bs=1 seek=$OFS
    1.23 +	fi
    1.24 +	umount $TMP/mnt
    1.25  	rm -rf $TMP
    1.26  }
    1.27  
    1.28 @@ -109,8 +113,11 @@
    1.29  		store $(($i-2)) $(stat -c %s /tmp/mnt$$/boot/linld.com) $1
    1.30  		r="$(sed '/rootfs[0-9]/!d;s|.* initrd=||;s|/boot/||g;s| .*||' \
    1.31  			/tmp/mnt$$/boot/isolinux/isolinux.cfg | tail -n1)"
    1.32 -		echo -n "image=/boot/bzImage initrd=${r:-rootfs.gz},! autologin rdinit=/init.exe" | \
    1.33 -		ddn bs=1 of=$1 conv=notrunc seek=$(($i-134))
    1.34 +		if grep -qs rootfs /tmp/mnt$$/boot/isolinux/isolinux.cfg ; then
    1.35 +			echo -n "image=/boot/bzImage initrd=${r:-rootfs.gz},! autologin rdinit=/init.exe"
    1.36 +		else
    1.37 +			echo -n "$(sed '/KERNEL/!d;s|.*KERNEL *|image=|;q' /tmp/mnt$$/boot/isolinux/isolinux.cfg)"
    1.38 +		fi | ddn bs=1 of=$1 conv=notrunc seek=$(($i-134))
    1.39  	fi
    1.40  	umount /tmp/mnt$$	
    1.41  	rmdir /tmp/mnt$$