fix(ux): auto-select single AMD P-State mode and remove bootloader message
- commit
- bcb6f2304e267e7eed0f4ce7f791599e330bf957
- author
- bnema · · 2025-10-20 16:54 UTC
- committer
- bnema · · 2025-10-20 17:33 UTC
- parent
- 62c7657
- signature
- unsigned
3 files · +4 -6
M CHANGELOG.md +1 -0
| @@ -12,6 +12,7 @@ All notable changes to this project will be documented in this file. | |||
| 12 | 12 | ### Fixed | |
| 13 | 13 | - **Limine bootloader**: Fixed kernel panic with non-default kernels (cachyos, zen, lts) | |
| 14 | 14 | - **AMD P-State selection**: Auto-select when only one mode available | |
| 15 | + | - **Bootloader message**: Removed unnecessary Limine message since no choice exists | |
| 15 | 16 | - **Curl-pipe installation**: Fixed curl-based one-liner installation by auto-detecting piped input, re-executing with TTY for interactive prompts, and running bootstrap before downloads | |
| 16 | 17 | - **Cleanup flag**: Fixed --cleanup flag to run after helper files are downloaded | |
| 17 | 18 | - **Verification script**: Disabled ERR trap during verification to properly show all failures and prompt user, use dynamic kernel name instead of hardcoded linux, made fallback initramfs optional | |
| @@ -12,6 +12,7 @@ All notable changes to this project will be documented in this file. | |||||
| 12 | ### Fixed | 12 | ### Fixed | ||
| 13 | - **Limine bootloader**: Fixed kernel panic with non-default kernels (cachyos, zen, lts) | 13 | - **Limine bootloader**: Fixed kernel panic with non-default kernels (cachyos, zen, lts) | ||
| 14 | - **AMD P-State selection**: Auto-select when only one mode available | 14 | - **AMD P-State selection**: Auto-select when only one mode available | ||
| 15 | + | - **Bootloader message**: Removed unnecessary Limine message since no choice exists | |||
| 15 | - **Curl-pipe installation**: Fixed curl-based one-liner installation by auto-detecting piped input, re-executing with TTY for interactive prompts, and running bootstrap before downloads | 16 | - **Curl-pipe installation**: Fixed curl-based one-liner installation by auto-detecting piped input, re-executing with TTY for interactive prompts, and running bootstrap before downloads | ||
| 16 | - **Cleanup flag**: Fixed --cleanup flag to run after helper files are downloaded | 17 | - **Cleanup flag**: Fixed --cleanup flag to run after helper files are downloaded | ||
| 17 | - **Verification script**: Disabled ERR trap during verification to properly show all failures and prompt user, use dynamic kernel name instead of hardcoded linux, made fallback initramfs optional | 18 | - **Verification script**: Disabled ERR trap during verification to properly show all failures and prompt user, use dynamic kernel name instead of hardcoded linux, made fallback initramfs optional | ||
M install/base/kernel.sh +3 -3
| @@ -78,8 +78,8 @@ if [ "$CPU_TYPE" = "AMD" ]; then | |||
| 78 | 78 | fi | |
| 79 | 79 | fi | |
| 80 | 80 | ||
| 81 | - | # Remove duplicates and sort | |
| 82 | - | mapfile -t AVAILABLE_MODES < <(printf '%s\n' "${AVAILABLE_MODES[@]}" | sort -u) | |
| 81 | + | # Remove duplicates and sort, filter out empty strings | |
| 82 | + | mapfile -t AVAILABLE_MODES < <(printf '%s\n' "${AVAILABLE_MODES[@]}" | grep -v '^$' | sort -u) | |
| 83 | 83 | ||
| 84 | 84 | # Display detected modes | |
| 85 | 85 | if [ ${#AVAILABLE_MODES[@]} -gt 0 ]; then | |
| @@ -90,7 +90,7 @@ if [ "$CPU_TYPE" = "AMD" ]; then | |||
| 90 | 90 | fi | |
| 91 | 91 | ||
| 92 | 92 | # Auto-select if only one mode available, otherwise prompt user | |
| 93 | - | if [ ${#AVAILABLE_MODES[@]} -eq 1 ]; then | |
| 93 | + | if [[ ${#AVAILABLE_MODES[@]} -eq 1 ]]; then | |
| 94 | 94 | AMD_PSTATE="${AVAILABLE_MODES[0]}" | |
| 95 | 95 | gum style --foreground 2 --padding "1 0 0 $PADDING_LEFT" "[OK] Auto-selected: $AMD_PSTATE (only available mode)" | |
| 96 | 96 | else | |
| @@ -78,8 +78,8 @@ if [ "$CPU_TYPE" = "AMD" ]; then | |||||
| 78 | fi | 78 | fi | ||
| 79 | fi | 79 | fi | ||
| 80 | 80 | ||||
| 81 | - | # Remove duplicates and sort | 81 | + | # Remove duplicates and sort, filter out empty strings |
| 82 | - | mapfile -t AVAILABLE_MODES < <(printf '%s\n' "${AVAILABLE_MODES[@]}" | sort -u) | 82 | + | mapfile -t AVAILABLE_MODES < <(printf '%s\n' "${AVAILABLE_MODES[@]}" | grep -v '^$' | sort -u) |
| 83 | 83 | ||||
| 84 | # Display detected modes | 84 | # Display detected modes | ||
| 85 | if [ ${#AVAILABLE_MODES[@]} -gt 0 ]; then | 85 | if [ ${#AVAILABLE_MODES[@]} -gt 0 ]; then | ||
| @@ -90,7 +90,7 @@ if [ "$CPU_TYPE" = "AMD" ]; then | |||||
| 90 | fi | 90 | fi | ||
| 91 | 91 | ||||
| 92 | # Auto-select if only one mode available, otherwise prompt user | 92 | # Auto-select if only one mode available, otherwise prompt user | ||
| 93 | - | if [ ${#AVAILABLE_MODES[@]} -eq 1 ]; then | 93 | + | if [[ ${#AVAILABLE_MODES[@]} -eq 1 ]]; then |
| 94 | AMD_PSTATE="${AVAILABLE_MODES[0]}" | 94 | AMD_PSTATE="${AVAILABLE_MODES[0]}" | ||
| 95 | gum style --foreground 2 --padding "1 0 0 $PADDING_LEFT" "[OK] Auto-selected: $AMD_PSTATE (only available mode)" | 95 | gum style --foreground 2 --padding "1 0 0 $PADDING_LEFT" "[OK] Auto-selected: $AMD_PSTATE (only available mode)" | ||
| 96 | else | 96 | else | ||
M install/preflight/begin.sh +0 -3
| @@ -15,9 +15,6 @@ if ! gum confirm "Ready to begin installation?" --padding "0 0 1 $PADDING_LEFT"; | |||
| 15 | 15 | fi | |
| 16 | 16 | ||
| 17 | 17 | # ArchUp uses Limine bootloader exclusively | |
| 18 | - | gum style --foreground 6 --padding "1 0 0 $PADDING_LEFT" "Bootloader: Limine" | |
| 19 | - | gum style --padding "0 0 1 $PADDING_LEFT" "ArchUp uses Limine for superior btrfs and snapshot support" | |
| 20 | - | ||
| 21 | 18 | export ARCHUP_BOOTLOADER="limine" | |
| 22 | 19 | config_set "ARCHUP_BOOTLOADER" "limine" | |
| 23 | 20 | echo "Bootloader: limine" >> "$ARCHUP_INSTALL_LOG_FILE" | |
| @@ -15,9 +15,6 @@ if ! gum confirm "Ready to begin installation?" --padding "0 0 1 $PADDING_LEFT"; | |||||
| 15 | fi | 15 | fi | ||
| 16 | 16 | ||||
| 17 | # ArchUp uses Limine bootloader exclusively | 17 | # ArchUp uses Limine bootloader exclusively | ||
| 18 | - | gum style --foreground 6 --padding "1 0 0 $PADDING_LEFT" "Bootloader: Limine" | |||
| 19 | - | gum style --padding "0 0 1 $PADDING_LEFT" "ArchUp uses Limine for superior btrfs and snapshot support" | |||
| 20 | - | ||||
| 21 | export ARCHUP_BOOTLOADER="limine" | 18 | export ARCHUP_BOOTLOADER="limine" | ||
| 22 | config_set "ARCHUP_BOOTLOADER" "limine" | 19 | config_set "ARCHUP_BOOTLOADER" "limine" | ||
| 23 | echo "Bootloader: limine" >> "$ARCHUP_INSTALL_LOG_FILE" | 20 | echo "Bootloader: limine" >> "$ARCHUP_INSTALL_LOG_FILE" | ||