Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some issues discovered with whiptail output (BMC tested: smaller screen) #1237

Closed
tlaurion opened this issue Nov 8, 2022 · 7 comments · Fixed by #1238
Closed

Some issues discovered with whiptail output (BMC tested: smaller screen) #1237

tlaurion opened this issue Nov 8, 2022 · 7 comments · Fixed by #1238

Comments

@tlaurion
Copy link
Collaborator

tlaurion commented Nov 8, 2022

Some tests conducted on https://github.com/osresearch/heads/tree/1cb0324a12aa4aec01287142c76b5a41ed51a2cb

Whiptail can fixate (optional) the size of its windows with calls of Height x Width.
As of now on master, it's 30 x 90, where 90 is too wide for BMC output. This causes some issues.
Also, some output is considered to be of a static height, causing issues as well.

It is understandable to want to have fixated Height x Width to have consistent UX through menus, but that should not cause bogus output.


Main menu (gui-init's show_main_menu function):

30x90
2022-11-08-133047

30x80
2022-11-08-150634

20x80:
2022-11-08-144920

0x80:
2022-11-08-150908

0x0
2022-11-08-150808


Some menus just don't show properly without proper selections, as seen above, but also can hide option boxes:

Here, tampered with a single kexec_hashes.txt entree and selecting default boot option.
This happens under gui-init's verify_global_hashes:

30x90:
2022-11-08-151802

30x80:
2022-11-08-151445

20x80:
2022-11-08-151940

0x80
2022-11-08-152047

@tlaurion tlaurion changed the title Some issues with discovered with whiptail output (BMC tested: smaller screen) Some issues discovered with whiptail output (BMC tested: smaller screen) Nov 8, 2022
@tlaurion
Copy link
Collaborator Author

tlaurion commented Nov 8, 2022

Attempted to pass vga=795 to kernel, but without change in behavior.
As of now setting 20x80 instead of 30x90 everywhere fixes it.

@tlaurion
Copy link
Collaborator Author

tlaurion commented Nov 8, 2022

Here, tampered with 9 entrees under kexec_hashes.txt entries and selecting default boot option.
This happens under gui-init's verify_global_hashes

30x90:
2022-11-08-164801

20x80
2022-11-08-162752

@tlaurion
Copy link
Collaborator Author

tlaurion commented Nov 8, 2022

But unfortunately, not everything fits under 20x90.

One of those is oem-factory-reset script:
2022-11-08-164927

I'll continue to try to find a way to increase ast2500 console settings.
@JonathonHall-Purism @SergiiDmytruk any idea? passing vga=795 to kernel was actually passed but didn't change a thing.

@tlaurion
Copy link
Collaborator Author

tlaurion commented Nov 8, 2022

But then, if I pass
0x90:
2022-11-08-170859

If I pass 0x0:
2022-11-08-170935

So @JonathonHall-Purism I understand fixating 80 (the width to minimal display size) or maybe configure it under board configs.
But I think the height maybe should be dynamic?

@JonathonHall-Purism
Copy link
Collaborator

Definitely agree with dynamic height. It doesn't make sense to leave those small prompts swimming in empty space, especially for short yes/no where the prompt and selections are separated by a lot of blank lines.

Re: width, just from having looked at the above, I actually like the dynamic width. It looks like all our prompts have hard line breaks anyway to accommodate fbwhiptail, so I think the dynamic width looks best. The main boot menu in particular looks better without a bunch of extra whitespace, IMO. I don't think there is a UX consistency issue (on the contrary, I think it is easier to read at a glance).

But otherwise, I'd say to fix it globally to 80, not make it board-specific. IMO being able to raise the width per board is not that useful right now since the prompts need hard line breaks for fbwhiptail anyway.

@tlaurion
Copy link
Collaborator Author

tlaurion commented Nov 9, 2022

@JonathonHall-Purism there is some place in code that are using busybox's "fold" for long strings, without having to fuss around into manipulating strings to match constant width. From my succing tests, I haven't seen any regression in GUIs setting the width to 80.

Will push PR soon to set width to 80 and height to 0 (dynamic).

@tlaurion
Copy link
Collaborator Author

tlaurion commented Nov 9, 2022

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants