diff --git a/live/source/boot.sh b/live/source/boot.sh index aef777b..db1e8cf 100644 --- a/live/source/boot.sh +++ b/live/source/boot.sh @@ -1,3 +1,46 @@ +function almsquash { + lmp="${1}" + sfs='squashfs.img' + # + if [ "${check_squashfs}" == 'enforce' ] ; then + chk="(${data})${lmp}/${sfs}" + echo 'verify_detached' + echo "${chk}" + if ! verify_detached "${chk}" "${chk}.sig" ; then + grub_pause + return 1 + fi + fi + if [ -f "(${data})${lmp}/vmlinuz" ] ; then + linux_path="(${data})${lmp}/vmlinuz" + initrd_path="(${data})${lmp}/initrd.img" + else + linux_path="(squash)/vmlinuz" + initrd_path="(squash)/initrd.img" + loopback "squash" "${lmp}/${sfs}" + fi + # + echo + echo 'linux' + echo "${linux_path}" + toram='' + if [ "${live_from}" == 'ram' ] ; then + toram='rd.live.ram=1' + fi + linux \ +"${linux_path}" \ +elevator='deadline' \ +ip='frommedia' \ +rd.live.dir="${lmp}" \ +rd.live.squashimg="${sfs}" \ +"${toram}" + # + echo + echo 'initrd' + echo "${initrd_path}" + initrd "${initrd_path}" +} + function debsquash { lmp="${1}" sfs="filesystem.squashfs"