Skip to content

bug(install): preserve explicit regular TUI mode during global installs #763

Description

@dnlrsls

Before submitting

  • I searched open and closed issues and did not find a report of this problem.
  • I reviewed this report and removed credentials, tokens, private paths, hostnames, and other sensitive data.

Problem

Current main includes the install-time settings change introduced by #739. A successful postinstall in a recognized global Pi-managed npm installation writes "tuiMode": "fullscreen" even when the user explicitly selected "regular". The documented behavior also reasserts fullscreen on later recognized postinstall runs.

Pi 0.85.1 still marks fullscreen as experimental. In that mode, an ordinary mouse-wheel event moves one logical row; regular mode delegates scrolling to the terminal's faster native scrollback. The mismatch is tracked upstream in earendil-works/pi#9052.

As a result, installing or updating Gentle Pi can override an explicit user preference and place users back on a known slower scrolling path. The resulting regression is easy to attribute incorrectly to the whole Gentle Pi release.

Steps to reproduce

  1. Use a Gentle Pi build from main after feat(shell): add responsive sidebar and global fullscreen setup #739 in the recognized global Pi-managed npm package location.
  2. Set Pi's global tuiMode to regular, for example through /settings.
  3. Run the successful Gentle Pi postinstall again through a recognized global install or update.
  4. Inspect the global Pi settings and observe that tuiMode is now fullscreen.
  5. Start Pi 0.85.1 in Windows Terminal and scroll through a transcript with the wheel.
  6. Compare with pi --tui-mode regular: fullscreen moves one row per ordinary event unless Alt is held, while regular mode uses the faster native scrollback.

Expected and actual behavior

Expected: A Gentle Pi install or update preserves an explicit tuiMode: regular selection. Fullscreen remains opt-in while the upstream scroll-rate mismatch is unresolved. An explicit tuiMode: fullscreen selection also remains untouched.

Actual: The recognized global postinstall replaces or reasserts tuiMode: fullscreen. A later install can therefore undo the user's switch back to regular and restore the slower wheel behavior.

gentle-pi version

main@4728187c4f64b44fd407c3e83563b0afd1d0fece (behavior introduced by #739; not present in the v2.5.0 tag)

Pi version

0.85.1

Operating system

Windows

Relevant logs or error output (optional)

Gentle Pi change: #739
Upstream scroll tracker: earendil-works/pi#9052
Pi fullscreen default wheel step: 1 logical row per event
Pi fullscreen Alt-wheel multiplier: 5x
Documented installer behavior: a later recognized postinstall can reset regular to fullscreen

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingstatus:needs-reviewAwaiting maintainer review/approvaltype:bugBug fix

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions