Monorepo for Aesthetic.Computer aesthetic.computer
4
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix: remove nomodeset from built-in cmdline — restore Yoga 11e boot

sunlit-butte (last working Yoga 11e build) did not have nomodeset or
efi=noruntime in the kernel cmdline. These were added later for Mac
support but break modesetting on the Yoga 11e (garbled display).

Move nomodeset+efi=noruntime to systemd-boot config (Mac-only path).
Also add BOOTIA32.EFI for 32-bit UEFI firmware support, and enhanced
boot diagnostics (dmesg dump to USB).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

+15 -2
+6
fedac/native/initramfs/init
··· 122 122 ls -la /dev/fb* >> $LOG 2>&1 123 123 echo "block devs:" >> $LOG 124 124 ls /dev/sd* /dev/nvme* >> $LOG 2>&1 125 + echo "=== DMESG ===" >> $LOG 126 + dmesg >> $LOG 2>&1 127 + echo "=== CPUINFO ===" >> $LOG 128 + head -30 /proc/cpuinfo >> $LOG 2>&1 129 + echo "=== CMDLINE ===" >> $LOG 130 + cat /proc/cmdline >> $LOG 2>&1 125 131 sync 126 132 echo "[init] GPU: $(ls /dev/dri/ 2>/dev/null || echo NONE) USB=$USB_MOUNTED" > /dev/tty0 2>/dev/null 127 133
+1 -1
fedac/native/kernel/config-minimal
··· 424 424 CONFIG_LEGACY_VSYSCALL_XONLY=y 425 425 # CONFIG_LEGACY_VSYSCALL_NONE is not set 426 426 CONFIG_CMDLINE_BOOL=y 427 - CONFIG_CMDLINE="console=tty0 quiet loglevel=3 vt.global_cursor_default=0 init=/init mitigations=off snd_intel_dspcfg.dsp_driver=0 snd_hda_intel.power_save=0 nmi_watchdog=0 tsc=reliable no_timer_check acpi_backlight=native thinkpad_acpi.brightness_enable=1 i8042.reset i8042.nomux nomodeset efi=noruntime" 427 + CONFIG_CMDLINE="console=tty0 quiet loglevel=3 vt.global_cursor_default=0 init=/init mitigations=off snd_intel_dspcfg.dsp_driver=0 snd_hda_intel.power_save=0 nmi_watchdog=0 tsc=reliable no_timer_check acpi_backlight=native thinkpad_acpi.brightness_enable=1 i8042.reset i8042.nomux" 428 428 # CONFIG_CMDLINE_OVERRIDE is not set 429 429 CONFIG_MODIFY_LDT_SYSCALL=y 430 430 # CONFIG_STRICT_SIGALTSTACK_SIZE is not set
+1 -1
fedac/native/scripts/flash-helper-runner.sh
··· 112 112 title AC Native OS 113 113 linux /EFI/BOOT/KERNEL.EFI 114 114 initrd /${initrd_file} 115 - options console=tty0 quiet loglevel=3 vt.global_cursor_default=0 init=/init efi=noruntime 115 + options console=tty0 quiet loglevel=3 vt.global_cursor_default=0 init=/init nomodeset efi=noruntime 116 116 SDBOOT_EOF 117 117 ;; 118 118 *)
+7
fedac/native/scripts/media-layout.sh
··· 115 115 116 116 cp "${bootloader_path}" "${stage_root}/EFI/BOOT/BOOTX64.EFI" 117 117 cp "${kernel_path}" "${stage_root}/EFI/BOOT/KERNEL.EFI" 118 + # 32-bit UEFI fallback: kernel's EFI stub with EFI_MIXED=y can boot 119 + # directly from 32-bit firmware (handles 32→64 mode switch internally). 120 + cp "${kernel_path}" "${stage_root}/EFI/BOOT/BOOTIA32.EFI" 118 121 cp "${config_path}" "${stage_root}/config.json" 119 122 120 123 # Stage slim kernel + initramfs for universal boot (systemd-boot mode) ··· 158 161 fi 159 162 mcopy -o -i "${image_path}" "${stage_root}/EFI/BOOT/BOOTX64.EFI" ::EFI/BOOT/BOOTX64.EFI 160 163 mcopy -o -i "${image_path}" "${stage_root}/EFI/BOOT/KERNEL.EFI" ::EFI/BOOT/KERNEL.EFI 164 + # 32-bit UEFI fallback (kernel with EFI_MIXED=y) 165 + if [ -f "${stage_root}/EFI/BOOT/BOOTIA32.EFI" ]; then 166 + mcopy -o -i "${image_path}" "${stage_root}/EFI/BOOT/BOOTIA32.EFI" ::EFI/BOOT/BOOTIA32.EFI 167 + fi 161 168 } 162 169 163 170 ac_create_fat_boot_image() {