echo "Stop the boot from waiting on a black screen for the console to answer" # systemd asks the console for its size when PID 1 starts and waits for the # reply. With Plymouth holding the screen the reply sometimes never comes, and # about 1 boot in 10 sits on a black screen until a key is pressed. # omarchy-defaults.conf now carries systemd.tty.term.console=dumb, which makes # systemd skip the query. The package has already written that file by the # time this runs; the boot image still holds the old command line until it is # rebuilt. defaults_conf="${OMARCHY_LIMINE_DEFAULTS_CONF:-/etc/limine-entry-tool.d/omarchy-defaults.conf}" running_cmdline="${OMARCHY_RUNNING_CMDLINE:-/proc/cmdline}" rebuild_marker="${OMARCHY_LIMINE_REBUILD_MARKER:-/var/lib/omarchy/migrations/1791581004}" param="systemd.tty.term.console=dumb" omarchy-cmd-present limine-mkinitcpio || exit 0 [[ -f $defaults_conf && -r $running_cmdline ]] || exit 0 # The running kernel keeps its old command line until reboot, so a marker # records the machine-wide rebuild: another user's migration must not repeat # it before then, while a missing marker still retries an interrupted rebuild. [[ ! -e $rebuild_marker ]] || exit 0 # A machine that boots with it already, or whose defaults were edited to leave # it out, has nothing to rebuild. [[ " $(<"$running_cmdline") " != *" $param "* ]] || exit 0 grep -Eq "^KERNEL_CMDLINE\[default\]\+=\".*${param//./\\.}.*\"" "$defaults_conf" || exit 0 echo "The booted kernel is missing $param; rebuilding the boot image" sudo limine-mkinitcpio sudo install -Dm644 /dev/null "$rebuild_marker"