An idea for improving init and rc seamlessly, without causing any conflicts or tedium for anyone

Do you think these READABLE? I don't think so.

An example how colorized log is seen using misc/lv.
screenshot_2026-07-14_colorized_log_in_misc_lv.png


And in editors/leafpad.
screenshot_2026-07-14_colorized_log_in_editors_leafpad.png
 
Do you think these READABLE? I don't think so.

An example how colorized log is seen using misc/lv.
View attachment 26747

And in editors/leafpad.
View attachment 26748
I don't see a particular problem there. If you really don't like it, there's no reason why you can't just use sed to add line breaks where you want them. Again, if you're trying to read that, then you probably have a reason for doing so that would dictate what parts to pay attention to. I'm not being obstinate here, but the sort of people that would be scared off by a lot of text aren't going to be reading that in the first place.
 
You're playing a bit fast and loose with people's willingness to be "imaginative" here. The best code in the world is code that does not exist. Why? Because it does not break, nor does it get hacked or need maintenance. My Prime Directive reads like this: you never interfere with a system that meets its requirements.

Sure you're welcome to debate the requirements themselves up to high heaven and back. That's fine. That's the kind of debate where change is supposed to originate. Please don't try to discuss implementation details before you have the newly adjusted set requirements in front of you crystal clear, and the debate on those is fully settled. What problem are you really trying to solve, and what would the system look like exactly in a world where your problem doesn't exist anymore?
Dude! I'm getting a serious bro-crush on you for your description of the problem and solution above. Thank you! You come across as someone who hasn't been broken by the "agile philosophy" yet. Requirements? who needs those?
 
Maybe all those ^[[0;34 etc. may be considered less legible by some?
ESC sequences hurts the position of the error positiom marker "^".
This is quite annoying.

Also squares in the second screenshot don't relay exactly useful information, even considering T-Aoki writes (AFAIK) from Japan, so our idea what shape can communicate information and what not may differ significantly :)
The square means character code "001B" in hex, that is ESC code ("^[" in the first example).
 
Maybe all those ^[[0;34 etc. may be considered less legible by some?

Also squares in the second screenshot don't relay exactly useful information, even considering T-Aoki writes (AFAIK) from Japan, so our idea what shape can communicate information and what not may differ significantly :)
I don't personally have any trouble reading that. I see that somebody was pressing buttons while the output was going and I see some missing fonts that really should be installed on the system.

Output like that is readable to the people that need to read it. Without looking up the source code it's hard to make much sense of it, and reformatting things isn't likely to do much about that. However, if you really want to, you can always redirect the output and use sed to split the lines to make it easier to read. I don't see any real point in doing so, but it can be done without having to throw the baby out with the bathwater.

That's not to say that I'm personally opposed to changes being made, I just don't see any pressing need to do so, and I'm not personally convinced that doing so would really do much other than create more work. And it likely would be more work.
 
This certainly doesn't belong in the base system. That has to be as lean as possible to keep it compact. Its job is to provide basic functionality, not bells or whistles.

As a port to be added for those wanting it, fine if someone is prepared to devote the considerable effort needed to write the code and maintain it, but not at the expense of more important things like security upgrades which matter far more.

While FreeBSD can be installed on a desktop/laptop and has the necessary ports to implement that, it's not really its core purpose. None of my FreeBSD machines, real or virtual, has a GUI. I use it for headless servers. I use PCLinuxOS on my desktop and 64-bit laptops, and Devuan Linux on my 32-bit laptops, apart from one minimal system used as a music player, which uses TinyCore.

I could run FreeBSD on my desktop, but Linux generally has better hardware support and is close enough to Unix (with the distros I use) to be good enough for my daily needs.

The problem the OP has is his/her belief that this big idea is an obvious improvement rather than a distraction from a good workhorse server system which would suck huge amounts of limited developer time into tinsel rather than solid structure. He/she assumes FreeBSD wants to be aesthetically pleasing to people with his/her tastes and that would make it look more professional rather than less which, for me, it would. I don't want slick presentation. I want a good solid dependable system I can rely on to serve my sites and deliver my mail. It doesn't need to be pretty. It needs to be dependable, and that's where I want the effort to go.

If the OP thinks developing the idea would be an improvement and a worthwhile use of time, well then, use your time to produce it, but don't expect to use other people's time to implement your idea. If we thought it worthwhile, someone would already have done it.

On my desktop I use KDE Plasma because it's pretty and has functionality that aids my workflow, but I'd never trust a KDE application with my data because they can change and obsolete formats on a whim without warning and I've lost information too many times through upgrades in the past when my old mails or records have been rendered unreadable. That's where the OP's approach goes, where fashion becomes more important than function. I can back up my data as much as I like, but that's useless if the software suddenly can't read it any more.

As for those minimalist icons the OP hates so much, somebody else thought they looked better. That's the problem with aesthetics. One person's beautiful is someone else's ugly.
 
This certainly doesn't belong in the base system. That has to be as lean as possible to keep it compact. Its job is to provide basic functionality, not bells or whistles.

As a port to be added for those wanting it, fine if someone is prepared to devote the considerable effort needed to write the code and maintain it, but not at the expense of more important things like security upgrades which matter far more.

While FreeBSD can be installed on a desktop/laptop and has the necessary ports to implement that, it's not really its core purpose. None of my FreeBSD machines, real or virtual, has a GUI. I use it for headless servers. I use PCLinuxOS on my desktop and 64-bit laptops, and Devuan Linux on my 32-bit laptops, apart from one minimal system used as a music player, which uses TinyCore.

I could run FreeBSD on my desktop, but Linux generally has better hardware support and is close enough to Unix (with the distros I use) to be good enough for my daily needs.

The problem the OP has is his/her belief that this big idea is an obvious improvement rather than a distraction from a good workhorse server system which would suck huge amounts of limited developer time into tinsel rather than solid structure. He/she assumes FreeBSD wants to be aesthetically pleasing to people with his/her tastes and that would make it look more professional rather than less which, for me, it would. I don't want slick presentation. I want a good solid dependable system I can rely on to serve my sites and deliver my mail. It doesn't need to be pretty. It needs to be dependable, and that's where I want the effort to go.

If the OP thinks developing the idea would be an improvement and a worthwhile use of time, well then, use your time to produce it, but don't expect to use other people's time to implement your idea. If we thought it worthwhile, someone would already have done it.

On my desktop I use KDE Plasma because it's pretty and has functionality that aids my workflow, but I'd never trust a KDE application with my data because they can change and obsolete formats on a whim without warning and I've lost information too many times through upgrades in the past when my old mails or records have been rendered unreadable. That's where the OP's approach goes, where fashion becomes more important than function. I can back up my data as much as I like, but that's useless if the software suddenly can't read it any more.

As for those minimalist icons the OP hates so much, somebody else thought they looked better. That's the problem with aesthetics. One person's beautiful is someone else's ugly.
Unfortunately, what OP wants wouldn't be able to implement as ports, as modifying rc* and rc.d/* in /etc by ports is basically NOT allowed.

So implementing in base and disabled by default would be the way to go if someone (not me, as I myself don't want the feature) intend to do.

Of course, anyone who want the feature should need building base from source. Or some downstream project like GhostBSD could want to enable by default "on THEIR builds".
 
Honestly, I dont find any valid argument valid more than an aesthetic matter for the OP
Have to admit that I miss colored ls output..etc..etc
but put an alias and done..in userland level,after login I have in ~/.bashrc

Code:
alias ls='ls -G'
alias grep='grep --color=auto'

Tmux dont read .bashrc , so , in ~/.tmux.conf add:

Code:
set -g default-command "${SHELL}"

in a kernel boot level,assume that you can modify the kernel source to show nice colors...not my taste but...
and in the init scripts is more easy, not my taste too but if you want it,you can make it
 
Colorization of console output is a volatile topic. The younger crowd seem to be enamored with bling, while us ole-timers just want B&W text (ie content being more important than presentation). IMHO, there are more good reasons to leave it alone than to suggest change. Of course that in itself is a generational difference. "If it aint broken then don't fix it" seems to be a foreign concept with the younger gen who are seemingly looking for ways to distinguish themselves, often by creating "solutions in search of a problem". I've explained my case against console colorization in the past so I won't rehash.
 
The younger crowd seem to be enamored with bling, while us ole-timers just want B&W text (ie content being more important than presentation)
Well said. As a lot of us ole-timers have pointed out, post processing to colorize and "make pretty" is fine, but leave the boot messages alone.
And this:
and more aesthetically pleasing.

Well "beauty is in the eye of the beholder" and "pleasing" is subjective, not objective.
 
Well "beauty is in the eye of the beholder" and "pleasing" is subjective, not objective.
If "beauty" doesn't harm performance in any aspect, no reason to deny it.

But for boot time messages and build messages, it hurts readabilities of logs in text editors as I've alrady said.

And for boot time messages, colorizing would hurts boot "time" if serial consoles are somehow in use.

Anyway, adding "optional on build" beautifying / colorizing features could be welcomed IF SOMEONE NEW POPPS IN AND DO IT WITH SANE AND EASY-TO-REVIEW CODES, BY THE RESPONSIBILITY AND UNDER BSD COMPATIBULLY LICENCING BY NATURAL HUMAN.
 
  • Like
Reactions: mer
Agreed, but I'm an old school silver halide black and white photograph type of person, so my idea of beauty is Ansel Adams not William Eggleston:)
Me, too. 😅

Another aspect to consider if beautifying harms people with impaired vision or not.

If ALL screenreaders are assured (forced) to have functionality to speak, for example, 0x1b[31merror:0x1b[0m as "Red error alert" or "Error colon in red" or "turn charactor color to red, error colon, color restored", the person would hear "Escape code left large brace thirtyone merror colon escape code left large blace zero em". It shall NOT happen at all!

And for red-green color-vision impared person, it would be hard to determine red and green character as different. Yes, need special care!

By the way, if I recall correctly, Linux (Yggdrasil or Vine, but maybe more) showed sanely recognized device in green and failed ones in red.
Is this behavior fixed as of accessibility concern above?

On bsddialog, the default color was cyan character over yellow background (or in reverse) and hard to read for my senile cataract eyes and switched to current default, which is uncomparably better readable, as per my request.
This kind of considerations are always wanted.
 
Another aspect to consider if beautifying harms people with impaired vision or not.
That is an aspect I did not consider. But it is a very important one.
I think of "text to speech" stuff on smartphones: my wife sends an emoji in response to a text, me driving, phone paired to car, I get "text message" so I go to play it, but since the text is just a thumbs up my end can't "play it".
Impaired vision really just needs text, no escape sequences or colors.
 
You're playing a bit fast and loose with people's willingness to be "imaginative" here. The best code in the world is code that does not exist.

Neither of the above sentences is true.

(1) First impressions of an OS (or practically any software for that matter) will inevitably be heavily influenced by how the it is presented, with extra weight to anything that occurs early in the process of trying it, and taking a stance that is dismissive of the value or cost of accounting for all that (proactively vs neglectfully) seems like a very clear example of a lapse in imagination regarding the long-term consequences of such choices. Typically anything that decreases user adoption rates will also decrease future support for all other aspects of a software package. Plus, the fact that reformatting and colorization are among the most inert changes one could make and among the least likely to introduce harmful ripple effects, yet these things are being treated as a serious liability here remains an alarming "canary in the coal mine" for the project's chances of being able to see from an outsider's perspective to thereby sustain and enhance long-term momentum. Indeed, even if it were hard to implement in the existing codebase (and that seems overstated) then that would seem indicative of poor architectural structure in that respect and may be worth of refactoring.

(2) Code that doesn't exist can't do anything and thus can't provide any meaningful benefit to any human. Yet, the whole point of software is to be useful and/or interesting and/or entertaining. Less is not more, just as war is not peace. As popular as such sayings are, they are fundamentally and transparently fallacious and are in fact ungrounded rhetorical contortions of reality. Strangely though, the past decade or two in software been blighted by a highly destructive and logically fallacious trend of largely embracing blind minimalism with respect to the design of user interfaces, both functionally and aesthetically, thus reducing both utility and freedom, perhaps encouraged by the likes of Apple/Mac and by largely unjustified trends and assumptions in Silicon Valley, which has created a kind of "Orwellian minimalism" that has harmfully held software back for the past decade and seems responsible for much of why this once much more aesthetically and functionally diverse world of software design has in recent years become so bland and so routine and so devoid of human spirit, as one can see especially in trends like "flat design" and in "big tech" removing more and more freedoms from users with every passing year, and we are all the poorer for it. Indeed, even our human dignity and our ability to aspire to (or sometimes to even see) what wonders are possible has seemed in decline for years and I personally am extremely tired of the past decade or two's irrational march towards soul-crushingly uncreative and sterile user-hostile minimalism.

Please don't try to discuss implementation details before you have the newly adjusted set requirements in front of you crystal clear, and the debate on those is fully settled.

There is a high risk that such a mindset will maximize analysis paralysis and the committee effect and hence minimize productive outcomes. Expecting a fully settled debate also imposes an disproportionate burden, one tellingly not presumed of other parts of the system, thereby de facto silencing the idea under false pretenses of due consideration (a common political stratagem).



there's no reason to have colorized output when the system works just fine

There's plenty of reason. The entire point of the idea (as I have reiterating in nearly every comment I've made, including the original post itself) is one of creating a very plausible path for improving the first impression that FreeBSD makes on outsiders in order to increase its rate of adoption, all while simultaneously also making it more functional, legible, and aesthetically pleasing.

No amount of saying that the system functions adequately (which is all well and good, of course), changes that. Indeed, it is largely irrelevant.

Like ships passing in the night, we're in a sense are not even having the same conversation. Perhaps that will help you understand why I am largely unmoved.

A true counterargument would have to credibly address that core center of gravity of the idea and I honestly don't see any comments in this thread that substantively do so. I think that's largely because on some level many of you realize that the idea likely would improve outsiders' 1st impressions and adoption rates at least moderately. Irrelevancies won't help you in that regard.

I also am of the belief that fundamentally all people (whether presently "technical people" or not) can be made to appreciate and be inspired by the technical aspects of a system if the system was presented throughout all aspects of itself in as friendly and as smooth and as polished a way as possible and that doing so could greatly improve the likely outcomes of the future for humanity as a whole regarding software. There is no conflict between ease and power. It seems clear as day to me that the Linux and Unix-likes' greatest mistake as a community is continuing to treat those two things (ease and power) as much more incompatible than those things actually are. This is (as a reminder) essentially the "false dichotomy" I have previously referred to a few times.

As far as newbs go, the fact that there's a bunch of text is going to be the problem if there is one at all. And really, if you don't like looking at a wall of text, then *BSD may not be for you.

Not true. Text is not in itself scary to anyone. What scares people is anything that is perceived as incoherently intractable and riddled with unknowns, of which cryptic techno-babble in the boot sequence from a naive first impression standpoint is just one example. Every piece of information that has not been communicated clearly to someone thereafter becomes a liability of unknown and potentially boundless magnitude from that person's perspective, like yet another unaccounted for thing: a mine in a minefield of myriad unaccounted for risks to both one's time and one's purpose in trying to use something. The fact that we (as more technically inclined people currently) can see through much of this with sufficient (though often needlessly very large...) time investment doesn't change the reality for most prospective users nor does it obviate any of the immense lost opportunity caused by communicating things less well than what is possible.

The meaning of all aspects of the boot sequence's messages could be greatly clarified and reformatted and made more legible and expanded to include even more useful technical info.

For example, instead of leaving it implicit that certain short slurredlowercase device names are members of a specific category of device you could provide category headers to that same effect or parenthetical asides and other bits of contextual info and doing so could greatly improve the communicative qualities of those entries. Color coding and whitespace and tabular formats can be applied in myriad different ways that could likewise improve on both functional and aesthetic aspects of everything. There is truly an abundance of opportunity for polish. Use your imagination.



That's where the OP's approach goes, where fashion becomes more important than function.

Nope, that's not at all an accurate portrayal of what I prioritize, nor of what I am suggesting, nor even of my design philosophy and computing philosophy whatsoever.

Function and aesthetics are always intertwined with and inseparable from each other. Every choice about how information is conveyed is also an aesthetic choice, but many such choices are significantly better overall than others. Placing yellow text on a white background is a poor design choice in much the same sense that leaving boot sequence info needlessly cryptic and harder to read at a glance benefits no one (and in an properly engineered system designed from first principles could even be made to be free of other side effects through context awareness or through changes in how color or other formatting aspects are represented in tandem with the text, such as making it a separate data stream that doesn't muck up the text body at all).



Colorization of console output is a volatile topic. The younger crowd seem to be enamored with bling, while us ole-timers just want B&W text (ie content being more important than presentation).

The only place I've ever seen it being a volatile topic is in this thread, as far as I can recall. The vast majority of Linux distros now seem to now use colorized boot sequence information for legibility and aesthetic reasons, including most systemd distros and most distros that use its largest init competitor OpenRC. Linux is also (of course) more popular for both most server uses and most desktop uses. Clearly then it doesn't cause Linux many problems though and certainly not enough to make it worth avoiding implementation of it for them.

Luckily though, such surface-level and inert changes (with very few moving parts compared to most software) can be made without harming the most substantive aspects of any system. In those regards, FreeBSD could benefit greatly from improving its public image so that it no longer creates the unenviable impression of "probably barely maintained" that its current install and boot message sequence creates in many people who try FreeBSD out without taking the time to look more carefully. People have limited time and use proxies like that to make choices quickly.

It will be a big mistake in terms of lost opportunity and momentum to not start recognizing that more and to not start accounting for it much more vigorously I think.

Also, I want to reiterate again (as I have in multiple of my other comments) that my suggestion is not much motivated by vanity or superficiality, but rather by the very real impact that these kinds of changes could have in increasingly user adoption and in making the boot sequence more legible at a glance, among many other potential untapped benefits.

The potential upsides are huge and the potential downsides are small and likely to be easily mitigated (especially from a first principle standpoint that allows for refactoring the codebase and treats the presentation of FreeBSD for first impressions as a much higher priority than seems currently apparent).



Another aspect to consider if beautifying harms people with impaired vision or not.

If ALL screenreaders are assured (forced) to have functionality to speak, for example

Any formatting characters could be easily removed from any output through post processing, or by sending color data in a separate I/O stream from the text data in some way, among other possibilities.

Also, it is not clear to me that text-to-voice screen readers can even run during the boot message sequence at all!

Aren't the audio devices not even loaded yet until partway through? Wouldn't the text slip by too fast to even be read, unless the system slows the messages to a spoken reading speed? Is it even possible currently to read the boot messages by screen reader currently except after the boot up has finished and hence after other means of getting info become available and preferable?

It therefore seems to me that this is just a "grasping at straws" kind of point of rhetoric: essentially another way to try to engineer a rationalization for "why" the formatting couldn't be improved (when it obviously can be greatly improved, both functionally and artistically) and even though Linux already does such things as a standard across most distros now without much problems.



I honestly do not understand the magnitude of the resistance to the idea coming from some here.

It is one of the most inert ideas for how to improve things and has some of the least amount of moving parts that any software change could have. It is just formatted and marked up text... yet some here talk as if this is rocket science. Granted, I don't know FreeBSD's codebase, but honestly if adding color and reformatting the layout of the boot messages is rocket science currently then that is a sign that there is ripe potential for significantly refactoring the code for that part, both for the benefit of the idea itself and for the benefits that refactoring may bring in other structural respects.

I reiterate that I think that the aesthetics (and all other aspects of presentation) are likely among the foremost contributors to adoption rates (or the lack there of) of any OS and that there is almost no philosophical mistake you could probably make in terms of impact on the future of an OS project worse than continuing to treat such parts of the system like an afterthought or as something merely dry and negligible and to thereby act in ways that are likely highly disconnected from the psychology of a very large body of potential users and supporters (for both desktops and servers).

There is also the "chick and egg" and "dead sea effect" to consider. A large selection bias may be in play here, in that a small minority users who don't care about such aesthetics and adoption strategies are more likely to stick around here, but for this fact to therefore cause a disproportionate and misleading sense of what the full range of potential users of the system as a whole would actually want if they weren't deterred by such things at the outset from the impression it makes. In other words, there is a great deal of potential circularity in terms of the user base's preferences that I would advise any FreeBSD developers considering these matters to be wary of that bias. That also makes sense in light of the core team having new public initiatives that seem to disregard these forums' preferences against desktop-related polish and other critical modernization efforts, where the team seems (I guess) probably aware of the damage to adoption rates that many such long-unattended-to things are likely causing.

If FreeBSD had a larger user base it would also have much more chance of being able to produce more software that isn't just ported from Linux. This is a great irony in a sense, because it means that by trying to prevent FreeBSD's first impressions from becoming more appealing (by very falsely conflating that with becoming "more Linux-like" or with "becoming bloated", neither of which is in any way inherent to the suggested idea nor even hard to avoid) you will likely be further worsening the extent to which FreeBSD lacks the resources to do anything much more than just continue importing things from Linux. It is like a Chinese finger trap in a sense.

In contrast though, if the dev team were proactive on taking every conceivable thing that influences first impressions into account and polishing such things as much as possible then that is the best thing one could do to have the most plausible chance of increasing future support and hence expand the project's ability to make itself more distinct from Linux.

It would be hilarious if it weren't so sad and so frustrating. 😞

I really wish there were more real (genuinely substantively different) options for operating systems. Do you not see how my suggestion, properly implemented, could help that?

Regardless though, I again thank you all kindly for taking the time to read my thoughts and for participating in any discussion here. Have an awesome day/night! 🌇🏞️🌠
 
Neither of the above sentences is true.

(1) First impressions of an OS (or practically any software for that matter) will inevitably be heavily influenced by how the it is presented, with extra weight to anything that occurs early in the process of trying it, and taking a stance that is dismissive of the value or cost of accounting for all that (proactively vs neglectfully) seems like a very clear example of a lapse in imagination regarding the long-term consequences of such choices. Typically anything that decreases user adoption rates will also decrease future support for all other aspects of a software package. Plus, the fact that reformatting and colorization are among the most inert changes one could make and among the least likely to introduce harmful ripple effects, yet these things are being treated as a serious liability here remains an alarming "canary in the coal mine" for the project's chances of being able to see from an outsider's perspective to thereby sustain and enhance long-term momentum. Indeed, even if it were hard to implement in the existing codebase (and that seems overstated) then that would seem indicative of poor architectural structure in that respect and may be worth of refactoring.

(2) Code that doesn't exist can't do anything and thus can't provide any meaningful benefit to any human. Yet, the whole point of software is to be useful and/or interesting and/or entertaining. Less is not more, just as war is not peace. As popular as such sayings are, they are fundamentally and transparently fallacious and are in fact ungrounded rhetorical contortions of reality. Strangely though, the past decade or two in software been blighted by a highly destructive and logically fallacious trend of largely embracing blind minimalism with respect to the design of user interfaces, both functionally and aesthetically, thus reducing both utility and freedom, perhaps encouraged by the likes of Apple/Mac and by largely unjustified trends and assumptions in Silicon Valley, which has created a kind of "Orwellian minimalism" that has harmfully held software back for the past decade and seems responsible for much of why this once much more aesthetically and functionally diverse world of software design has in recent years become so bland and so routine and so devoid of human spirit, as one can see especially in trends like "flat design" and in "big tech" removing more and more freedoms from users with every passing year, and we are all the poorer for it. Indeed, even our human dignity and our ability to aspire to (or sometimes to even see) what wonders are possible has seemed in decline for years and I personally am extremely tired of the past decade or two's irrational march towards soul-crushingly uncreative and sterile user-hostile minimalism.



There is a high risk that such a mindset will maximize analysis paralysis and the committee effect and hence minimize productive outcomes. Expecting a fully settled debate also imposes an disproportionate burden, one tellingly not presumed of other parts of the system, thereby de facto silencing the idea under false pretenses of due consideration (a common political stratagem).





There's plenty of reason. The entire point of the idea (as I have reiterating in nearly every comment I've made, including the original post itself) is one of creating a very plausible path for improving the first impression that FreeBSD makes on outsiders in order to increase its rate of adoption, all while simultaneously also making it more functional, legible, and aesthetically pleasing.

No amount of saying that the system functions adequately (which is all well and good, of course), changes that. Indeed, it is largely irrelevant.

Like ships passing in the night, we're in a sense are not even having the same conversation. Perhaps that will help you understand why I am largely unmoved.

A true counterargument would have to credibly address that core center of gravity of the idea and I honestly don't see any comments in this thread that substantively do so. I think that's largely because on some level many of you realize that the idea likely would improve outsiders' 1st impressions and adoption rates at least moderately. Irrelevancies won't help you in that regard.

I also am of the belief that fundamentally all people (whether presently "technical people" or not) can be made to appreciate and be inspired by the technical aspects of a system if the system was presented throughout all aspects of itself in as friendly and as smooth and as polished a way as possible and that doing so could greatly improve the likely outcomes of the future for humanity as a whole regarding software. There is no conflict between ease and power. It seems clear as day to me that the Linux and Unix-likes' greatest mistake as a community is continuing to treat those two things (ease and power) as much more incompatible than those things actually are. This is (as a reminder) essentially the "false dichotomy" I have previously referred to a few times.



Not true. Text is not in itself scary to anyone. What scares people is anything that is perceived as incoherently intractable and riddled with unknowns, of which cryptic techno-babble in the boot sequence from a naive first impression standpoint is just one example. Every piece of information that has not been communicated clearly to someone thereafter becomes a liability of unknown and potentially boundless magnitude from that person's perspective, like yet another unaccounted for thing: a mine in a minefield of myriad unaccounted for risks to both one's time and one's purpose in trying to use something. The fact that we (as more technically inclined people currently) can see through much of this with sufficient (though often needlessly very large...) time investment doesn't change the reality for most prospective users nor does it obviate any of the immense lost opportunity caused by communicating things less well than what is possible.

The meaning of all aspects of the boot sequence's messages could be greatly clarified and reformatted and made more legible and expanded to include even more useful technical info.

For example, instead of leaving it implicit that certain short slurredlowercase device names are members of a specific category of device you could provide category headers to that same effect or parenthetical asides and other bits of contextual info and doing so could greatly improve the communicative qualities of those entries. Color coding and whitespace and tabular formats can be applied in myriad different ways that could likewise improve on both functional and aesthetic aspects of everything. There is truly an abundance of opportunity for polish. Use your imagination.





Nope, that's not at all an accurate portrayal of what I prioritize, nor of what I am suggesting, nor even of my design philosophy and computing philosophy whatsoever.

Function and aesthetics are always intertwined with and inseparable from each other. Every choice about how information is conveyed is also an aesthetic choice, but many such choices are significantly better overall than others. Placing yellow text on a white background is a poor design choice in much the same sense that leaving boot sequence info needlessly cryptic and harder to read at a glance benefits no one (and in an properly engineered system designed from first principles could even be made to be free of other side effects through context awareness or through changes in how color or other formatting aspects are represented in tandem with the text, such as making it a separate data stream that doesn't muck up the text body at all).





The only place I've ever seen it being a volatile topic is in this thread, as far as I can recall. The vast majority of Linux distros now seem to now use colorized boot sequence information for legibility and aesthetic reasons, including most systemd distros and most distros that use its largest init competitor OpenRC. Linux is also (of course) more popular for both most server uses and most desktop uses. Clearly then it doesn't cause Linux many problems though and certainly not enough to make it worth avoiding implementation of it for them.

Luckily though, such surface-level and inert changes (with very few moving parts compared to most software) can be made without harming the most substantive aspects of any system. In those regards, FreeBSD could benefit greatly from improving its public image so that it no longer creates the unenviable impression of "probably barely maintained" that its current install and boot message sequence creates in many people who try FreeBSD out without taking the time to look more carefully. People have limited time and use proxies like that to make choices quickly.

It will be a big mistake in terms of lost opportunity and momentum to not start recognizing that more and to not start accounting for it much more vigorously I think.

Also, I want to reiterate again (as I have in multiple of my other comments) that my suggestion is not much motivated by vanity or superficiality, but rather by the very real impact that these kinds of changes could have in increasingly user adoption and in making the boot sequence more legible at a glance, among many other potential untapped benefits.

The potential upsides are huge and the potential downsides are small and likely to be easily mitigated (especially from a first principle standpoint that allows for refactoring the codebase and treats the presentation of FreeBSD for first impressions as a much higher priority than seems currently apparent).





Any formatting characters could be easily removed from any output through post processing, or by sending color data in a separate I/O stream from the text data in some way, among other possibilities.

Also, it is not clear to me that text-to-voice screen readers can even run during the boot message sequence at all!

Aren't the audio devices not even loaded yet until partway through? Wouldn't the text slip by too fast to even be read, unless the system slows the messages to a spoken reading speed? Is it even possible currently to read the boot messages by screen reader currently except after the boot up has finished and hence after other means of getting info become available and preferable?

It therefore seems to me that this is just a "grasping at straws" kind of point of rhetoric: essentially another way to try to engineer a rationalization for "why" the formatting couldn't be improved (when it obviously can be greatly improved, both functionally and artistically) and even though Linux already does such things as a standard across most distros now without much problems.



I honestly do not understand the magnitude of the resistance to the idea coming from some here.

It is one of the most inert ideas for how to improve things and has some of the least amount of moving parts that any software change could have. It is just formatted and marked up text... yet some here talk as if this is rocket science. Granted, I don't know FreeBSD's codebase, but honestly if adding color and reformatting the layout of the boot messages is rocket science currently then that is a sign that there is ripe potential for significantly refactoring the code for that part, both for the benefit of the idea itself and for the benefits that refactoring may bring in other structural respects.

I reiterate that I think that the aesthetics (and all other aspects of presentation) are likely among the foremost contributors to adoption rates (or the lack there of) of any OS and that there is almost no philosophical mistake you could probably make in terms of impact on the future of an OS project worse than continuing to treat such parts of the system like an afterthought or as something merely dry and negligible and to thereby act in ways that are likely highly disconnected from the psychology of a very large body of potential users and supporters (for both desktops and servers).

There is also the "chick and egg" and "dead sea effect" to consider. A large selection bias may be in play here, in that a small minority users who don't care about such aesthetics and adoption strategies are more likely to stick around here, but for this fact to therefore cause a disproportionate and misleading sense of what the full range of potential users of the system as a whole would actually want if they weren't deterred by such things at the outset from the impression it makes. In other words, there is a great deal of potential circularity in terms of the user base's preferences that I would advise any FreeBSD developers considering these matters to be wary of that bias. That also makes sense in light of the core team having new public initiatives that seem to disregard these forums' preferences against desktop-related polish and other critical modernization efforts, where the team seems (I guess) probably aware of the damage to adoption rates that many such long-unattended-to things are likely causing.

If FreeBSD had a larger user base it would also have much more chance of being able to produce more software that isn't just ported from Linux. This is a great irony in a sense, because it means that by trying to prevent FreeBSD's first impressions from becoming more appealing (by very falsely conflating that with becoming "more Linux-like" or with "becoming bloated", neither of which is in any way inherent to the suggested idea nor even hard to avoid) you will likely be further worsening the extent to which FreeBSD lacks the resources to do anything much more than just continue importing things from Linux. It is like a Chinese finger trap in a sense.

In contrast though, if the dev team were proactive on taking every conceivable thing that influences first impressions into account and polishing such things as much as possible then that is the best thing one could do to have the most plausible chance of increasing future support and hence expand the project's ability to make itself more distinct from Linux.

It would be hilarious if it weren't so sad and so frustrating. 😞

I really wish there were more real (genuinely substantively different) options for operating systems. Do you not see how my suggestion, properly implemented, could help that?

Regardless though, I again thank you all kindly for taking the time to read my thoughts and for participating in any discussion here. Have an awesome day/night! 🌇🏞️🌠
So, code, without using LLM / AI (allow it or not would be still under discussion, so not using LLM / AI would be safer to be accepted).

And file a bug for it or open review for it to see how the codes are evaluated by src committers.

Anyway, don't forget, the majority (unfortunately, Windows) does NOT AT ALL show the startup processes (hiding everything unless encountering fatal errors). But it's majority, unfortunately. Yes, most widely used in the world.
So what you're requesting would be against the majority.

I've lost track of, but behaving like Windows does (not showing anything but splash unless encountering fatal errors) was proposed before. I dislike the idea, but it would kind for newbies that don't want to be worried when nothing "really" problematic happenes. And I understand it would be needed on KIOSK terminals.
 
Deciding which OS to run on a computer is to me an important choice. I evaluate the options carefully, and then stick to them. For my personal desktop/laptop/GUI machines I have been running the same OS since 2008, and since 2010 the same choice was used for my work laptop. For my server at home, I switched from OpenBSD to FreeBSD in 2012; my main server had its FreeBSD installed 3 times during that period. The only machines where I changed OS somewhat recently are the Raspberry Pi automation hosts at home, where I gave up on FreeBSD and switched to Debian (a.k.a. Raspbian) about 5 years ago. All these decisions were made after considering the options, and their pros and cons.

First impressions of an OS (or practically any software for that matter) will inevitably be heavily influenced by how the it is presented,
Deciding which OS to run based on the cosmetics of how it boots seems very strange to me. I agree that sometimes the boot process needs to be debugged or watched. Colorizing the dmesg output might help some in finding problems. But this is an extremely small part of how I interact with a computer. And when I do need to debug the boot process, this is usually done after the fact, by inspecting logs. The boot process and how easy it is to observe and fix is a tiny part of the OS choice.
 
The only machines where I changed OS somewhat recently are the Raspberry Pi automation hosts at home, where I gave up on FreeBSD and switched to Debian (a.k.a. Raspbian) about 5 years ago.
Do you have RTC? I tried a dozen different things to a systemd timer and it'd either not run or run immediately on boot regardless of time.

Meanwhile time and cron are easy FreeBSD :D
 
rc(1) is great because it offers startup using shell scripts, which are simple and easy to use. They offer a structure that's easy enough to adopt. I've written a few
rc(1) scripts to compliment my servers. I would encourage anyone to learn how rc(1) works and reduce it to the bare minimum instead of trying to replace it.

Question (though): What is the reasoning and performance implications for using shell instead of something C-based? I know
pf(4) has had a hard time starting early enough and other BSD's have opted to hard-core a default-deny ruleset earlier in the boot process to prevent this.
 
Deciding which OS to run based on the cosmetics of how it boots seems very strange to me. I agree that sometimes the boot process needs to be debugged or watched. Colorizing the dmesg output might help some in finding problems
But if the output has stuff in RED that flies by and you can't stop and scroll back all you've done is induced panic without resolution. And I have never chosen an operating system by how pleasing the boot messages look; I also don't believe the argument that "making the boot messages prettier is going to bring in a huge market share".

Ubuntu, windows, mac have a large percentage off boot messages hidden, almost to the point where I go "is this thing even booting"
Rereading this starting at the OP, I come back to this is what the OP would find more aesthetically pleasing to the OP, not that there is a large userbase clamoring for it.
Heck booting a system all I want is feedback that the boot is actually progressing, an indication "boot complete you can log in now" and "Oh crap boot failed here's a message". Macs and Windows have been using spinny things to indicate progress, a graphical login screen when ready, maybe error messages when needed.
Ubuntu seems to follow a similar model now.

So, again, making boot messages pretty is desired by what percentage of users? 10% 1% less than 1%? lets go worst case and say 10%. So we should change the default setting on boot messages to cater to 10% of the userbase and potentially tick off the remaining 90%? Seems like a waste of limited resources to do the change when there are tools already to post process the messages.
I mean there was a lot of discussion when the default root shell changed from csh to sh but that at least ticked off 50% and pleased 50%.

I'm with bvdw78 this thread has become a waste of brain cells.
 
Do you have RTC?
Yes, all my RPi now have a hardware RTC added to it. The ones that are using custom base-boards or hats have the chip and battery on there. For the others, you can get a little PC board (for a few dollars on Ebay, Amazon, Temu, ... or a few more dollars on Adafruit, Sparkfun ...) which attaches to the top left 5 pins, including power, ground, and the I2C connection.

Before the RTC, I had to rely on ntpdate (which is easy to configure on FreeBSD, and automatic on Debian). But that doesn't work if the network is down, and all networks are unreliable. Since the only real use of my RPis is to do automation, my own software had a check that it would refuse to run and log an error message when the date was suspiciously wrong. I think that caused trouble once, because time can validly go backwards (during the 25-hour day at the edge of daylight savings time), which is when I instituted the "must have RTC" rule.

But if the output has stuff in RED that flies by and you can't stop and scroll back all you've done is induced panic without resolution.
At least seeing something red fly by has the advantage that you know there is SOME problem there and you should look. And on FreeBSD you can actually scroll back, by using the scroll lock and page up/down keys. I don't know whether that works once you start a GUI on the console.

But in reality, a conscientious sys admin (or user) should be looking at the output of dmesg and/or /var/log/messages after a boot. I do that at least after each upgrade once, to make sure there are no hidden problems.

I'm with bvdw78 this thread has become a waste of brain cells.
I wouldn't be so harsh. The idea of colorizing dmesg output is not actually bad. It is just of very limited usefulness, and if implemented carelessly could have nasty side effects that break things (as was discussed above, having log files stuffed full of esc [ 1;34 m would be very bad). To do it right would require re-designing lots of existing code, which is completely out of the scope of one amateur programmer, and perhaps not really doable in the "bazaar" model of open source development.

There are ways to do it. One example is my equipment monitoring code. It runs on 4 or 5 computers, and on each of them it leaves a log file (coincidentally /var/log/eqmon.log). After some initial struggles, I made a policy (which is documented in the ToO design document): Every log line that is a warning must contain the word "warning", any log line that contains a serious error must contain the word "error", and any alarm (something that justifies the monitoring system sending a message to my cell phone RIGHT NOW) has to have the word "alarm". This worked so-so, until it got broken when I made alarms persistent, which meant that suddenly there were messages that said for example: "Alarm cleared, water level normal: 9876 gal". That line has the word "alarm" in it, but it does not mean that the line should be colorized as "blinking red". So I changed the coding policy and edited the code: Any log line that is a warning starts with a single star, any log line that is an error or alarm with three stars. So you might see in the log:
Code:
* Warning water level low: 9888 gal
*** Alarm water level low: 9801 gal
E-mail and SMS sent to ralph@example.com and 321-555-1212
Alarm cleared, water level normal:  9876 gal
E-mail sent to ralph@example.com
This goes along with a hardware policy: all indicator lights use the same color scheme: green means power is on, and perhaps "working normally". White and blue mean something is on (running) which usually is not, like a pump or motor. Yellow means warning, implying: if you have some spare time, please come look at it. Red means error, meaning drop whatever you're doing and deal with this. Blinking red means it's OK to drop the coffee cup on the floor as you run over here. Text output on the GUI and CLI follows the same color convention. I think there is only one blinking red, which is "emergency generator engine failure"; last time this happened, we had metal pieces thrown several feet, engine oil all over the concrete floor and in the flowers, and a bit of a legal mess to get the manufacturer to admit that new engine throwing bits of itself on the floor is covered under warranty. Fortunately, it didn't catch fire.

That "one star, three star" coding rule could easily be colorized: One star -> yellow, three stars -> red. But the underlying problem here is this: You need to find EVERY PIECE OF CODE THAT PRINTS LOG MESSAGES, and audit/fix it to make sure the colorizing tag is in there correctly. And then you need to create a set of rules to make sure the tag or convention is maintained. For code that is only written and maintained by me, this is doable. For the FreeBSD kernel and userland, this would be somewhere between difficult, prohibitive, and ridiculous.

My summary of the OP's idea: Good idea, but of low value, and extremely high cost, in particular high sociological friction. Not worth implementing.

(Side remark: This discussion made me look at the log file, and I found this: "* Small pump was running dry (at low current) for 2s, fixed by pump running at normal current." Happened yesterday. After a $700 incident where me closing a valve by mistake caused the pump internals to burn up, I now monitor the current used by the pump 10x a second while it is running; a weekend spent coding this up is better than another $700 trip to the pump repair place. I think I need to clean some water filters, and check for air leaks on the pump input. Which is OK, I already have on my to-do list that the ozonator seems to be not functioning correctly and our water smells like rotten eggs, and I'll have some time this evening to do general water maintenance.)
 
At least seeing something red fly by has the advantage that you know there is SOME problem there and you should look.
I accept that, but one has to be looking to see it.

I guess my biggest issue is the OP argument (paraphrased) that "making the boot messages more visually appealing will help gain marketshare"
Honestly, that to me that is an unserious reason, especially because it revolves around a subjective standard of "appealing".
But in reality, a conscientious sys admin (or user) should be looking at the output of dmesg and/or /var/log/messages after a boot. I do that at least after each upgrade once, to make sure there are no hidden problems.
Agreed. I typically do this after every reboot (which is basically every update)

That "one star, three star" coding rule could easily be colorized: One star -> yellow, three stars -> red. But the underlying problem here is this: You need to find EVERY PIECE OF CODE THAT PRINTS LOG MESSAGES, and audit/fix it to make sure the colorizing tag is in there correctly. And then you need to create a set of rules to make sure the tag or convention is maintained. For code that is only written and maintained by me, this is doable. For the FreeBSD kernel and userland, this would be somewhere between difficult, prohibitive, and ridiculous.
This is the crux of it. Standards are good if you follow them but then "it's too much effort to follow them so I'll just do what I want". Every logging framework supports at least "error, warning, info, debug" so a specific log would get tagged with ERROR|WARNING|INFO|DEBUG but then a different framework may do Error|Warning|Info|Debug so post processing needs to account for that. I know me looking at a set of log files my brain gets wired for ERROR and misses Error|error.

So all logging frameworks need to do the same thing or all things that log use a single framework.
 
I think the thing that annoys me the most of this discussion is that people are either not aware of, or ignore, the obvious "best choice"...Leave console output the frack alone! and if you want to prettify it then do so through a piped program/script. Thus is the UNIX way, grasshopper!

dmesg | prettify

Where the pipe script parses the input and and does "whatever" with it.
 
Back
Top