parent
84c36adb1f
commit
62edc56a52
|
|
@ -1397,37 +1397,6 @@ class Installer:
|
|||
except SysCallError as err:
|
||||
raise DiskError(f'Failed to install GRUB boot on {boot_partition.dev_path}: {err}')
|
||||
|
||||
# Add custom UKI entries if enabled
|
||||
if uki_enabled and SysInfo.has_uefi() and efi_partition:
|
||||
custom_entries = self.target / 'etc/grub.d/09_custom'
|
||||
entries_content = (
|
||||
'#!/bin/sh\n'
|
||||
'exec tail -n +3 $0\n'
|
||||
'# This file provides UKI (Unified Kernel Image) boot entries.\n'
|
||||
'# Generated by archinstall. Do not modify the exec tail line above.\n'
|
||||
'# Custom entries can be added below.\n\n'
|
||||
)
|
||||
|
||||
uki_entries = []
|
||||
for kernel in self.kernels:
|
||||
entry = textwrap.dedent(
|
||||
f"""
|
||||
menuentry "Arch Linux ({kernel}) UKI" {{
|
||||
uki /EFI/Linux/arch-{kernel}.efi
|
||||
}}
|
||||
"""
|
||||
)
|
||||
uki_entries.append(entry)
|
||||
|
||||
entries_content += '\n'.join(uki_entries)
|
||||
custom_entries.write_text(entries_content)
|
||||
custom_entries.chmod(0o755)
|
||||
|
||||
# Disable 10_linux to prevent broken entries on kernel updates
|
||||
linux_script = self.target / 'etc/grub.d/10_linux'
|
||||
if linux_script.exists():
|
||||
linux_script.chmod(0o644)
|
||||
|
||||
try:
|
||||
self.arch_chroot(
|
||||
f'grub-mkconfig -o {boot_dir}/grub/grub.cfg',
|
||||
|
|
|
|||
Loading…
Reference in New Issue