diff --git a/CHANGELOG.md b/CHANGELOG.md index c7c692f..1a8ffe1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -33,9 +33,12 @@ every run. Merged together with 0.7.0, so v0.8.0 is the release that has both. - `WIZARD_BIOS_DRY_RUN=1` walks through the whole BIOS update (download, checksum, both warnings) but only prints the install and never flashes. - README: the menu loop and the BIOS update step by step. -- **fix: BIOS dry run also walks through the restart choices** +- `45a8757` **fix: BIOS dry run also walks through the restart choices** - A dry run counts as staged, so `[m]`/`[r]` and the restart question on `q` show up; in dry-run mode restarting only prints what it would do. +- **fix: Shorter BIOS labels so the menu fits 80 columns** + - "now F7F0107, newest F7F0108 (own risk)", "F7F0108 waits for a restart", + "F7F0107 is up to date"; shorter dry-run line. ## 0.7.0 - 2026-09-24 diff --git a/README.md b/README.md index aa413e6..87e49f7 100644 --- a/README.md +++ b/README.md @@ -298,7 +298,7 @@ ships (the `.cab` file in its `fremont-hw-support` package, looked up on Valve's SteamOS mirror): ``` - [ ] Update BIOS (at your own risk): now F7F0107, newest F7F0108 (opt-in, runs once) + [ ] Update BIOS: now F7F0107, newest F7F0108 (own risk) (opt-in, runs once) ``` It can only be ticked when Valve has a newer BIOS than yours; when you're up diff --git a/lib/bios.sh b/lib/bios.sh index 64da99b..6889553 100644 --- a/lib/bios.sh +++ b/lib/bios.sh @@ -53,12 +53,19 @@ bios_selectable() { } bios_label() { - # Menu label with the current and the newest version. - local newest="newest unknown (offline?)" - [[ -n "${BIOS_NEWEST:-}" ]] && newest="newest $BIOS_NEWEST" - [[ "${BIOS_NEWEST:-}" == "$(bios_current)" ]] && newest="up to date" - [[ -n "${BIOS_NEEDS_RESTART:-}" ]] && newest="$BIOS_NEWEST staged, restart to install" - echo "Update BIOS (at your own risk): now $(bios_current), $newest" + # Menu label with the current and the newest version; kept short so the + # row (with "(not available)" when greyed out) fits 80 columns. + local current + current="$(bios_current)" + if [[ -n "${BIOS_NEEDS_RESTART:-}" ]]; then + echo "Update BIOS: $BIOS_NEWEST waits for a restart" + elif [[ -z "${BIOS_NEWEST:-}" ]]; then + echo "Update BIOS: now $current, newest unknown (offline?)" + elif [[ "$BIOS_NEWEST" == "$current" ]]; then + echo "Update BIOS: $current is up to date" + else + echo "Update BIOS: now $current, newest $BIOS_NEWEST (own risk)" + fi } BIOS_BOX_WIDTH=68 @@ -173,7 +180,7 @@ bios_enable() { fi if [[ -n "$BIOS_DRY_RUN" ]]; then - ok "Dry run: would now run: sudo fwupdmgr install -y --no-reboot-check $BIOS_CAB" + ok "Dry run: would run: fwupdmgr install -y --no-reboot-check $(basename "$BIOS_CAB")" ok "Dry run finished; nothing was flashed." # Treated as staged, so the restart choices that follow a real # update show up too; restarting only prints (see restart_now). diff --git a/setup-gamescope-boot.sh b/setup-gamescope-boot.sh index 8955d95..5da934b 100755 --- a/setup-gamescope-boot.sh +++ b/setup-gamescope-boot.sh @@ -97,7 +97,7 @@ while true; do echo -e "${c_bold}This will:${c_reset}" for c in "${TO_DISABLE[@]}"; do echo " - turn off: ${LABEL[$c]}"; done for c in "${TO_ENABLE[@]}"; do - if is_action "$c"; then echo " - run: ${LABEL[$c]%%:*} (checks, then asks twice more)" + if is_action "$c"; then echo " - run: ${LABEL[$c]%%:*} at your own risk (checks, then asks twice more)" elif [[ "${CURRENT[$c]}" == 1 ]]; then echo " - re-apply: ${LABEL[$c]}"; else echo " - turn on: ${LABEL[$c]}"; fi done ask_yn "Go ahead?" y || { info "Nothing changed."; continue; }