Unpack the initramfs synchronously so Plymouth survives early boot
Kernel 7.1 unpacks the initramfs asynchronously, which races /init: the early /proc, /sys, /dev, and /run mounts fail with EPERM while unpacking settles, so plymouthd exits when it can't read /proc/cmdline and encrypted boots fall back to an unthemed text LUKS prompt. Boot still completes only because the kernel passes key=value cmdline params to init as environment variables and devtmpfs is automounted. Force synchronous unpacking via initramfs_async=0 until the race is fixed upstream: in the packaged defaults for fresh installs, and via migration for existing systems. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
b31036f604
commit
3f72553110
@@ -2,6 +2,13 @@ TARGET_OS_NAME="Omarchy"
|
|||||||
|
|
||||||
KERNEL_CMDLINE[default]+=" quiet splash loglevel=0 systemd.show_status=false rd.udev.log_level=0 vt.global_cursor_default=0"
|
KERNEL_CMDLINE[default]+=" quiet splash loglevel=0 systemd.show_status=false rd.udev.log_level=0 vt.global_cursor_default=0"
|
||||||
|
|
||||||
|
# Kernel 7.1 unpacks the initramfs asynchronously, which races /init: the
|
||||||
|
# early /proc, /sys, /dev, and /run mounts fail while unpacking settles, so
|
||||||
|
# plymouthd exits when it can't read /proc/cmdline and encrypted boots fall
|
||||||
|
# back to an unthemed text LUKS prompt. Unpack synchronously until the race
|
||||||
|
# is fixed upstream.
|
||||||
|
KERNEL_CMDLINE[default]+=" initramfs_async=0"
|
||||||
|
|
||||||
CUSTOM_UKI_NAME="omarchy"
|
CUSTOM_UKI_NAME="omarchy"
|
||||||
ENABLE_LIMINE_FALLBACK=yes
|
ENABLE_LIMINE_FALLBACK=yes
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
echo "Unpack the initramfs synchronously so Plymouth survives early boot"
|
||||||
|
|
||||||
|
# Kernel 7.1 unpacks the initramfs asynchronously, which races /init: the
|
||||||
|
# early /proc, /sys, /dev, and /run mounts fail while unpacking settles, so
|
||||||
|
# plymouthd exits when it can't read /proc/cmdline and encrypted boots fall
|
||||||
|
# back to an unthemed text LUKS prompt. Force synchronous unpacking until the
|
||||||
|
# race is fixed upstream. The packaged omarchy-defaults.conf now carries the
|
||||||
|
# same parameter for fresh installs.
|
||||||
|
|
||||||
|
if omarchy-cmd-present limine-mkinitcpio &&
|
||||||
|
[[ -f /etc/limine-entry-tool.d/omarchy-defaults.conf ]] &&
|
||||||
|
! grep -rqs "initramfs_async" /etc/limine-entry-tool.d/ /etc/default/limine; then
|
||||||
|
echo 'KERNEL_CMDLINE[default]+=" initramfs_async=0"' |
|
||||||
|
sudo tee -a /etc/limine-entry-tool.d/omarchy-defaults.conf >/dev/null
|
||||||
|
|
||||||
|
sudo limine-mkinitcpio
|
||||||
|
fi
|
||||||
Reference in New Issue
Block a user