/etc/motd summary

Warner Losh imp at bsdimp.com
Wed Sep 10 17:10:12 UTC 2014


On Sep 10, 2014, at 8:06 AM, John Baldwin <jhb at freebsd.org> wrote:

> On Monday, September 08, 2014 08:24:00 PM Warren Block wrote:
>> On Mon, 8 Sep 2014, Adrian Chadd wrote:
>>> On 8 September 2014 17:46, Brooks Davis <brooks at freebsd.org> wrote:
>>>> On Mon, Sep 08, 2014 at 05:25:31PM -0700, Adrian Chadd wrote:
>>>>> for maximum bikeshed: what about adding a 'motd' command that, I
>>>>> dunno, re-displays the motd? :P
>>>> 
>>>> How would someone who didn't know about /etc/motd ever find that?
>>> 
>>> Putting "Type 'motd' to see this information again" in the motd.
>> 
>> Or leave it the way it is, /etc/motd is just a file that is displayed,
>> but instead of dumping it to stdout, interpret some kind of markup in
>> it.
>> 
>> That's relatively high overhead considering the layout will still be
>> limited to 80x24.  We'd probably be better off leaving it as is and
>> moving most of the information to a man page, say support(1), which is
>> mentioned by /etc/motd.
> 
> Yes.  You can use formatting if you have a 'man welcome'.  That might be the 
> best way to provide a local, formatted copy of the proposed "welcome" page 
> from earlier.  You could even create a very simple 'welcome' wrapper script 
> that runs 'man welcome' so that in the motd you just have to say "run the 
> welcome command".  No need for having to worry about having to figure out how 
> to separate arguments from the command that way (which is the the problem we 
> have now that requires double spaces since all the examples are commands that 
> take arguments like 'man man').  For a command with no arguments you don't 
> have to do that I think.

Stepping back from this problem a bit and refocusing on the original ask (I want to put ANSI escape sequences to punch things up a bit):

We have the terminal set (usually) by the time we cat /etc/motd. login.conf controls this with the welcome= parameter. We have two choices here.

One, allow the welcome string to start with | and have it be the command to run. This could be “man welcome” or something else canned. Flexible, but maybe not the best.

Another vector to this approach would be to allow /etc/motd to start with #!/usr/bin/man (or some other magic) and have it run through a fixed program like man (and only man) instead of just being cat’d out. This would allow proper rendering on all devices in a way that’s backwards compatible as well, but maybe with less security concerns. I like this better because it puts the message of the day file in control of today’s message...

These tools would allow for a fancier rendition of whatever text is decided here as well as not violating POLA.

Warner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20140910/f3b179cf/attachment.sig>


More information about the freebsd-arch mailing list