Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornl6720 <nl6720@gmail.com>2023-01-22 13:32:54 +0200
committernl6720 <nl6720@gmail.com>2023-02-02 11:49:16 +0200
commit5587e031f34d7cd1828012596453bc9b2c8be26b (patch)
tree91986f8f04a879f219ee700a24d7caf89c6b2d7c
parent3f95d391eff6145e0546b8c0b69bd2851fc3c400 (diff)
Preload GRUB's NTFS, exFAT and UDF modules
There are claims that some UEFI allegedly natively support NTFS. Preload the required GRUB modules to support booting from NTFS on such systems. Additionally preload the exFAT and UEF modules, because, why not?
-rw-r--r--CHANGELOG.rst2
-rwxr-xr-xarchiso/mkarchiso16
-rw-r--r--configs/baseline/grub/grub.cfg4
-rw-r--r--configs/releng/grub/grub.cfg4
4 files changed, 18 insertions, 8 deletions
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index f6a6f25..e2dfa9e 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -11,6 +11,8 @@ Added
- Support *file system transposition* to simplify boot medium preparation for UEFI boot via extracting the ISO image
contents to a drive. ``grub.cfg`` does not hardcode the ISO volume label anymore, instead GRUB will search for volume
with a ``/.disk/%UUID_SEARCH_FILENAME%.uuid`` file on it.
+- Preload GRUB's NTFS modules for UEFI that allegedly have native NTFS support. GRUB's exFAT and UDF modules are also
+ preloaded in case someone finds them useful.
Changed
-------
diff --git a/archiso/mkarchiso b/archiso/mkarchiso
index f8a3df1..c1a8c22 100755
--- a/archiso/mkarchiso
+++ b/archiso/mkarchiso
@@ -612,11 +612,11 @@ _make_bootmode_uefi-ia32.grub.esp() {
# Create EFI binary
# Module list from https://bugs.archlinux.org/task/71382#comment202911
- grubmodules=(all_video at_keyboard boot btrfs cat chain configfile echo efifwsetup efinet ext2 f2fs fat font \
+ grubmodules=(all_video at_keyboard boot btrfs cat chain configfile echo efifwsetup efinet exfat ext2 f2fs fat font \
gfxmenu gfxterm gzio halt hfsplus iso9660 jpeg keylayouts linux loadenv loopback lsefi lsefimmap \
- minicmd normal part_apple part_gpt part_msdos png read reboot regexp search search_fs_file \
- search_fs_uuid search_label serial sleep tpm usb usbserial_common usbserial_ftdi usbserial_pl2303 \
- usbserial_usbdebug video xfs zstd)
+ minicmd normal ntfs ntfscomp part_apple part_gpt part_msdos png read reboot regexp search \
+ search_fs_file search_fs_uuid search_label serial sleep tpm udf usb usbserial_common usbserial_ftdi \
+ usbserial_pl2303 usbserial_usbdebug video xfs zstd)
grub-mkstandalone -O i386-efi \
--modules="${grubmodules[*]}" \
--locales="en@quot" \
@@ -689,11 +689,11 @@ _make_bootmode_uefi-x64.grub.esp() {
# Create EFI binary
# Module list from https://bugs.archlinux.org/task/71382#comment202911
- grubmodules=(all_video at_keyboard boot btrfs cat chain configfile echo efifwsetup efinet ext2 f2fs fat font \
+ grubmodules=(all_video at_keyboard boot btrfs cat chain configfile echo efifwsetup efinet exfat ext2 f2fs fat font \
gfxmenu gfxterm gzio halt hfsplus iso9660 jpeg keylayouts linux loadenv loopback lsefi lsefimmap \
- minicmd normal part_apple part_gpt part_msdos png read reboot regexp search search_fs_file \
- search_fs_uuid search_label serial sleep tpm usb usbserial_common usbserial_ftdi usbserial_pl2303 \
- usbserial_usbdebug video xfs zstd)
+ minicmd normal ntfs ntfscomp part_apple part_gpt part_msdos png read reboot regexp search \
+ search_fs_file search_fs_uuid search_label serial sleep tpm udf usb usbserial_common usbserial_ftdi \
+ usbserial_pl2303 usbserial_usbdebug video xfs zstd)
grub-mkstandalone -O x86_64-efi \
--modules="${grubmodules[*]}" \
--locales="en@quot" \
diff --git a/configs/baseline/grub/grub.cfg b/configs/baseline/grub/grub.cfg
index 7d73fe6..d606b10 100644
--- a/configs/baseline/grub/grub.cfg
+++ b/configs/baseline/grub/grub.cfg
@@ -3,6 +3,10 @@ insmod part_gpt
insmod part_msdos
insmod fat
insmod iso9660
+insmod ntfs
+insmod ntfscomp
+insmod exfat
+insmod udf
# Use graphics-mode output
insmod all_video
diff --git a/configs/releng/grub/grub.cfg b/configs/releng/grub/grub.cfg
index ddd8af2..ddf71e7 100644
--- a/configs/releng/grub/grub.cfg
+++ b/configs/releng/grub/grub.cfg
@@ -3,6 +3,10 @@ insmod part_gpt
insmod part_msdos
insmod fat
insmod iso9660
+insmod ntfs
+insmod ntfscomp
+insmod exfat
+insmod udf
# Use graphics-mode output
insmod all_video