Re: Confused by boot_mute documentation, terminal systems, and goals

From: Emmanuel Vadot <manu_at_bidouilliste.com>
Date: Sat, 22 Mar 2025 07:02:12 UTC
 Hi,

On Fri, 21 Mar 2025 22:13:29 +0000
"Steven Harms (High-Security Mail)" <sgharms@stevengharms.com> wrote:

> Folks,
> 
> I am attempting to figure out what boot_mute wants me to do. I'm trying to make a "laptop guide" and I'm confused. I'm not a C programmer at this scale of sophistication so there's a decent chance I'm foolishly making an error, but current is not doing what I expect.
> 
> - boot_mute doesn't appear in [loader.conf(8)][1]

 Indeed, this sould be fixed :)

> - In the defaults/loader.conf file it [appears][2] and says: that it exists to mute the console. I daresay that it's doing more than that, because activating it puts a logo + beastie orb on the screen. Question: Should the comment be updated?

 It shouldn't put the orb on the top of the screen, this is controlled
by kern.vt.splash_cpu which defaults to 0

> - The only other mention of boot_mute is on the line that specifies that the overlay image can be controlled through configuration of the [splash] value implying that instead of using the encoded array of unsigned char in the kernel at https://github.com/freebsd/freebsd-src/blob/main/sys/dev/vt/logo/logo_beastie.c. Whoa! A nice configurable option? Nice. Looking at the git history on that file it appears to be part of splash(4). And /that/ document says ..."work with syscons(4) only". OK so maybe that comment in defaults also needs updating? Because...

 The splash(4) man pages was updated to reflect this, are you looking
at an older revision of the man page ?

> - My impression is that vt(4) is the way forward at present which means that I was following a bad path and we're /back/ to using the [in-kernel defined image][3] for the splash screen that's triggered by boot_mute? I really don't understand the image packing as chars well enough to reverse how to create a BMP from an array of hex values, but, eh...is this the one that's being shown? Seems like it. There's also quite a bit of logic inside of sys/dev/vt/vt_cpulogos.c[3] that suggests that it's trying to use arrays of chars as overlay.

 No need to create an image embedded in kernel, with vt(4) you can load
a png image.

> OK, so AFAICT, there are two terminal rendering systems, under-/mis-documented loader.conf flags, and two places where images are defined: in the vt device directory and the images/ directory. Question: Can anyone confirm / deny my assessment?

 Looks correct yes.

> After all that I'm still a bit confused as to what the expected/desired behavior is. Can anyone help me figure out what the desired behavior is (and maybe I can update the comments)? My current plan is to turn the array into 0x00 and see what happens, but I'd like to know how I can turn the results of that experiment into a patch.

 What are you trying to do exactly ?

> Best,
> 
> Steven
> 
> [1]: https://github.com/freebsd/freebsd-src/blob/main/stand/defaults/loader.conf.5
> [2]: https://github.com/freebsd/freebsd-src/blob/283be95ea29abd7f867e4084bafe368c47f6c038/stand/defaults/loader.conf#L134
> [splash]: https://github.com/freebsd/freebsd-src/blob/283be95ea29abd7f867e4084bafe368c47f6c038/stand/defaults/loader.conf#L30
> [3]: https://github.com/freebsd/freebsd-src/blob/main/sys/dev/vt/vt_cpulogos.c#L79-L91
> ---
> 
> Public Key: 22BE39E2FA68D8BA8DC4B43A55A16D8CE2B036DE
> 
> Messages from this account are considered the best-secured and most reliable. Send information regarding health, wealth, or requiring higher standards of security to this address.
> 
> Sent with [Proton Mail](https://proton.me/mail/home) secure email.

 Cheers,

-- 
Emmanuel Vadot <manu@bidouilliste.com> <manu@freebsd.org>