feat: the maintainer's console art in tiers on the usage screen #16

Merged
marcos-mendez merged 1 commit from feat/maintainer-console-art into master 2026-10-02 00:49:35 -03:00
marcos-mendez commented 2026-10-01 22:26:10 -03:00 (Migrated from github.com)

keelbanner.choose() picks the largest tier (wide, full, small, none) the dialog has room for, from the files keel-core installs in /etc/keel; UTF-8 tiers when the locale dialog inherits is UTF-8, ASCII otherwise.

Room is measured as dialog uses it (checked with dialog 1.3 on trixie): screen less backtitle and shadow (4 rows, 4 cols); the usage text wrapped at the box width plus 5 rows of frame, the blank row Console._wrapper adds, and the button. The box widens for the wide mark and grows by the mark's rows, never past the room. Replaces the 24 row floor and the fixed 25 row box.

At 80x24 a dual stack usage text (11 rows) leaves no room for any tier; the small one fits above 7 rows or fewer.

Needs Keel-Linux/keel-core#19, which installs the art.

Test plan

  • pytest, 682 tests; coverage 100 on the measured package
  • confconsole --usage in a trixie LXC at 80x24 and 160x45, UTF-8 and LC_ALL=C; screenshots rendered to PNG
  • rebuild an appliance with keel9 and the new core layer
keelbanner.choose() picks the largest tier (wide, full, small, none) the dialog has room for, from the files keel-core installs in /etc/keel; UTF-8 tiers when the locale dialog inherits is UTF-8, ASCII otherwise. Room is measured as dialog uses it (checked with dialog 1.3 on trixie): screen less backtitle and shadow (4 rows, 4 cols); the usage text wrapped at the box width plus 5 rows of frame, the blank row Console._wrapper adds, and the button. The box widens for the wide mark and grows by the mark's rows, never past the room. Replaces the 24 row floor and the fixed 25 row box. At 80x24 a dual stack usage text (11 rows) leaves no room for any tier; the small one fits above 7 rows or fewer. Needs Keel-Linux/keel-core#19, which installs the art. Test plan - [x] pytest, 682 tests; coverage 100 on the measured package - [x] confconsole --usage in a trixie LXC at 80x24 and 160x45, UTF-8 and LC_ALL=C; screenshots rendered to PNG - [ ] rebuild an appliance with keel9 and the new core layer
Sign in to join this conversation.
No description provided.