Tested combinations.
[rrq/tiniest.git] / packiso.sh
index 0111fa582aa2d34c3d43253143dbc0c499d1a05a..0f1ed4535e4db5d1e2cc267a35e232776255d39b 100755 (executable)
@@ -17,9 +17,16 @@ if [ ! -d $ISOTREE ] ; then
     # Determine start and size of first parition
     X=( $(sfdisk -l -ostart,sectors bootimage.raw | tail -n 2) )
     dd if=bootimage.raw of=$P1 skip=${X[0]} count=${X[1]}
-    echo "# Add isolinux boot loader"
-    mcopy -i $P1 kernel/usr/lib/ISOLINUX/isolinux.bin ::/
-    mcopy -i $P1 kernel/usr/lib/ISOLINUX/isohdppx.bin ::/
+    echo "# Set up the isolinux boot loader"
+    mkdir -p $ISOTREE/boot/syslinux/bios
+    cp kernel/usr/lib/syslinux/modules/bios/* $ISOTREE/boot/syslinux/bios
+    mv $ISOTREE/boot/syslinux/bios/ldlinux.c32 $ISOTREE/
+    cp kernel/usr/lib/ISOLINUX/isolinux.bin $ISOTREE/
+    mcopy -i $P1 ::/syslinux.cfg $ISOTREE/
+    mcopy -i $P1 ::/bootmenu.cfg $ISOTREE/
+    mcopy -i $P1 ::/splash.png $ISOTREE/
+    mcopy -i $P1 ::/vmlinuz $ISOTREE/
+    mcopy -i $P1 ::/initrd.gz $ISOTREE/
 fi
 
 [ ! -r $ISO ] || rm $ISO
@@ -34,7 +41,7 @@ XORRISO=(
     -volset_id "$(date +"Tiniest %Y-%m-%d %H:%M:%S")"
     -publisher "Ralph (rrq) Ronnquist"
     -application_id "Hybrid Multi Mode Disk Image"
-    -system_id "Tiniest Linux HMMDI"
+    -system_id "Tiniest Linux"
     #-copyright_file copyright.txt
     #-abstract_file abstract.txt
     #-biblio_file biblio.txt
@@ -42,19 +49,16 @@ XORRISO=(
     #-application_use path
     #-out_charset "UTF8" ??
     -uid 0 -gid 0
-)
 
-BOOT1=(
-    -boot_image any cat_path=/catalog
     -append_partition 2 0xef ${P1}
+    -boot_image next cat_path=/catalog
+    -boot_image any system_area=kernel/usr/lib/ISOLINUX/isohdppx.bin
+    -boot_image any bin_path=/isolinux.bin
+    -boot_image any boot_info_table=on
+    -boot_image any next
     -boot_image any
     efi_path=--interval:appended_partition_2:all::/EFI/BOOT/bootx64.efi
-    #-boot_image isolinux system_area=kernel/usr/lib/ISOLINUX/isohdppx.bin
-    -boot_image and part_like_isohybrid=on
-    #    -boot_image any
-#    bin_path=--interval:appended_partition_2:all::/isolinux.bin
+    -boot_image any next
 )
 
-XORRISO=( "${XORRISO[@]}" "${BOOT1[@]}" )
-#for A in "${XORRISO[@]}" ; do echo "$A" ; done
 xorriso "${XORRISO[@]}"