ubusquash

This commit is contained in:
Marc Beninca 2024-07-30 12:22:02 +02:00
parent 579067d5d6
commit d1d77a3e48
Signed by: marc.beninca
GPG key ID: 9C7613450C80C24F
2 changed files with 45 additions and 0 deletions

View file

@ -9,5 +9,8 @@ menu_split
menuentry 'bash / latest / tui' --id 'lt' { debsquash '/w/boot/bash/latest/tui' } menuentry 'bash / latest / tui' --id 'lt' { debsquash '/w/boot/bash/latest/tui' }
menuentry 'bash / latest / gui' --id 'lg' { debsquash '/w/boot/bash/latest/gui' } menuentry 'bash / latest / gui' --id 'lg' { debsquash '/w/boot/bash/latest/gui' }
menu_split menu_split
menuentry 'ubuntu / stable' { ubusquash '/w/boot/ubuntu/stable' }
menuentry 'ubuntu / latest' { ubusquash '/w/boot/ubuntu/latest' }
menu_split
menuentry 'alma / stable' { almsquash '/w/boot/alma/stable' } menuentry 'alma / stable' { almsquash '/w/boot/alma/stable' }
menuentry 'alma / latest' { almsquash '/w/boot/alma/latest' } menuentry 'alma / latest' { almsquash '/w/boot/alma/latest' }

View file

@ -84,3 +84,45 @@ live-media-uuid="${data_uuid}" \
echo "${initrd_path}" echo "${initrd_path}"
initrd "${initrd_path}" initrd "${initrd_path}"
} }
function ubusquash {
lmp="${1}"
sfs="filesystem.squashfs"
#
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='toram'
if [ "${live_from}" == 'ram' ] ; then
toram="${toram}=${sfs}"
fi
linux \
"${linux_path}" \
boot="live" \
elevator="deadline" \
live-media-path="${lmp}" \
live-media-uuid="${data_uuid}" \
"${toram}"
#
echo
echo 'initrd'
echo "${initrd_path}"
initrd "${initrd_path}"
}