mirror of
https://github.com/archlinux/archiso.git
synced 2024-09-19 03:30:20 -06:00
configs/: replace archisodevice boot parameter with archisosearchuuid
`archisosearchuuid=` first searches for a matching UUID. If that fails, then it mounts and looks for a `/boot/${archisosearchuuid}.uuid` file in all detected block devices (in whatever order `blkid` lists them). This implements "file system transposition" without relaying on boot loader specific features and does not tie us to GRUB anymore. Related to https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio-archiso/-/merge_requests/48 Fixes https://gitlab.archlinux.org/archlinux/archiso/-/issues/217
This commit is contained in:
parent
2facc4630c
commit
43e4d9ce36
9 changed files with 12 additions and 28 deletions
|
@ -17,6 +17,8 @@ Changed
|
|||
- Change releng profile's bootstrap tarball compression from gzip to zstd. zstd provides higher and faster compression.
|
||||
- Use mkinitcpio's ``microcode`` hook instead of external microcode images to simplify boot loader configuration.
|
||||
Custom PXE setups will need to update their boot loader configuration.
|
||||
- Replace ``archisodevice`` boot parameter with ``archisosearchuuid`` in all boot loader configuration. This allows to
|
||||
have "file system transposition" without relaying on GRUB-specific features.
|
||||
|
||||
Deprecated
|
||||
----------
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
title Arch Linux (x86_64, UEFI)
|
||||
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
|
||||
initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
|
||||
options archisobasedir=%INSTALL_DIR% archisodevice=UUID=%ARCHISO_UUID%
|
||||
options archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID%
|
||||
|
|
|
@ -27,15 +27,6 @@ if serial --unit=0 --speed=115200; then
|
|||
terminal_output --append serial
|
||||
fi
|
||||
|
||||
# Search for the ISO volume
|
||||
if [ -z "${ARCHISO_UUID}" ]; then
|
||||
if [ -z "${ARCHISO_HINT}" ]; then
|
||||
regexp --set=1:ARCHISO_HINT '^\(([^)]+)\)' "${cmdpath}"
|
||||
fi
|
||||
search --no-floppy --set=root --file '%ARCHISO_SEARCH_FILENAME%' --hint "${ARCHISO_HINT}"
|
||||
probe --set ARCHISO_UUID --fs-uuid "${root}"
|
||||
fi
|
||||
|
||||
# Get a human readable platform identifier
|
||||
if [ "${grub_platform}" == 'efi' ]; then
|
||||
archiso_platform='UEFI'
|
||||
|
@ -62,7 +53,7 @@ timeout_style=menu
|
|||
|
||||
menuentry "Arch Linux (%ARCH%, ${archiso_platform})" --class arch --class gnu-linux --class gnu --class os --id 'archlinux' {
|
||||
set gfxpayload=keep
|
||||
linux /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisodevice=UUID=${ARCHISO_UUID}
|
||||
linux /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID%
|
||||
initrd /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
||||
}
|
||||
|
||||
|
|
|
@ -2,4 +2,4 @@ LABEL arch
|
|||
MENU LABEL Arch Linux (x86_64, BIOS)
|
||||
LINUX /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
|
||||
INITRD /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
||||
APPEND archisobasedir=%INSTALL_DIR% archisodevice=UUID=%ARCHISO_UUID%
|
||||
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID%
|
||||
|
|
|
@ -2,4 +2,4 @@ title Arch Linux install medium (x86_64, UEFI)
|
|||
sort-key 01
|
||||
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
|
||||
initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
|
||||
options archisobasedir=%INSTALL_DIR% archisodevice=UUID=%ARCHISO_UUID%
|
||||
options archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID%
|
||||
|
|
|
@ -2,4 +2,4 @@ title Arch Linux install medium (x86_64, UEFI) with speech
|
|||
sort-key 02
|
||||
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
|
||||
initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
|
||||
options archisobasedir=%INSTALL_DIR% archisodevice=UUID=%ARCHISO_UUID% accessibility=on
|
||||
options archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% accessibility=on
|
||||
|
|
|
@ -27,15 +27,6 @@ if serial --unit=0 --speed=115200; then
|
|||
terminal_output --append serial
|
||||
fi
|
||||
|
||||
# Search for the ISO volume
|
||||
if [ -z "${ARCHISO_UUID}" ]; then
|
||||
if [ -z "${ARCHISO_HINT}" ]; then
|
||||
regexp --set=1:ARCHISO_HINT '^\(([^)]+)\)' "${cmdpath}"
|
||||
fi
|
||||
search --no-floppy --set=root --file '%ARCHISO_SEARCH_FILENAME%' --hint "${ARCHISO_HINT}"
|
||||
probe --set ARCHISO_UUID --fs-uuid "${root}"
|
||||
fi
|
||||
|
||||
# Get a human readable platform identifier
|
||||
if [ "${grub_platform}" == 'efi' ]; then
|
||||
archiso_platform='UEFI'
|
||||
|
@ -62,13 +53,13 @@ timeout_style=menu
|
|||
|
||||
menuentry "Arch Linux install medium (%ARCH%, ${archiso_platform})" --class arch --class gnu-linux --class gnu --class os --id 'archlinux' {
|
||||
set gfxpayload=keep
|
||||
linux /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisodevice=UUID=${ARCHISO_UUID}
|
||||
linux /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID%
|
||||
initrd /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
||||
}
|
||||
|
||||
menuentry "Arch Linux install medium with speakup screen reader (%ARCH%, ${archiso_platform})" --hotkey s --class arch --class gnu-linux --class gnu --class os --id 'archlinux-accessibility' {
|
||||
set gfxpayload=keep
|
||||
linux /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisodevice=UUID=${ARCHISO_UUID} accessibility=on
|
||||
linux /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% accessibility=on
|
||||
initrd /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
||||
}
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ ENDTEXT
|
|||
MENU LABEL Arch Linux install medium (x86_64, NBD)
|
||||
LINUX ::/%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
|
||||
INITRD ::/%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
|
||||
APPEND archisobasedir=%INSTALL_DIR% archisodevice=UUID=%ARCHISO_UUID% archiso_nbd_srv=${pxeserver} cms_verify=y
|
||||
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% archiso_nbd_srv=${pxeserver} cms_verify=y
|
||||
SYSAPPEND 3
|
||||
|
||||
LABEL arch64_nfs
|
||||
|
|
|
@ -6,7 +6,7 @@ ENDTEXT
|
|||
MENU LABEL Arch Linux install medium (x86_64, BIOS)
|
||||
LINUX /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
|
||||
INITRD /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
|
||||
APPEND archisobasedir=%INSTALL_DIR% archisodevice=UUID=%ARCHISO_UUID%
|
||||
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID%
|
||||
|
||||
# Accessibility boot option
|
||||
LABEL arch64speech
|
||||
|
@ -17,4 +17,4 @@ ENDTEXT
|
|||
MENU LABEL Arch Linux install medium (x86_64, BIOS) with ^speech
|
||||
LINUX /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
|
||||
INITRD /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
|
||||
APPEND archisobasedir=%INSTALL_DIR% archisodevice=UUID=%ARCHISO_UUID% accessibility=on
|
||||
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% accessibility=on
|
||||
|
|
Loading…
Reference in a new issue