Re: [HEADSUP] making /bin/sh the default shell for root

From: Hans Ottevanger <hans_at_beastielabs.net>
Date: Thu, 23 Sep 2021 08:55:57 UTC
On 9/22/21 10:36 AM, Baptiste Daroussin wrote:
> Hello,
> 
> TL;DR: this is not a proposal to deorbit csh from base!!!
> 
> For years now, csh is the default root shell for FreeBSD, csh can be confusing
> as a default shell for many as all other unix like settled on a bourne shell
> compatible interactive shell: zsh, bash, or variant of ksh.
> 
> Recently our sh(1) has receive update to make it more user friendly in
> interactive mode:
> * command completion (thanks pstef@)
> * improvement in the emacs mode, to make it behave by default like other shells
> * improvement in the vi mode (in particular the vi edit to respect $EDITOR)
> * support for history as described by POSIX.
> 
> This makes it a usable shell by default, which is why I would like to propose to
> make it the default shell for root starting FreeBSD 14.0-RELEASE (not MFCed)
> 
> If no strong arguments has been raised until October 15th, I will make this
> proposal happen.
> 
> Again just in case: THIS IS NOT A PROPOSAL TO REMOVE CSH FROM BASE!
> 
> Best regards,
> Baptiste
> 

Hello,

I applaud the proposal to change the default login shell of root to 
/bin/sh. As you mention the rest of the Unix(-like) world has used a 
Bourne-like root login shell forever. It is one of the first things I 
change on a new FreeBSD install anyway.

While there, you could change "Charlie &" in the gecos field to 
something more sensible, e.g. just "Superuser". I know Charlie is there 
since 4.2BSD, but the reference to a long forgotten baseball player is 
probably lost by now. Also, a lot of explanation is often needed when 
users receive (automated) emails from Charlie Root.

Once the login shell of root has changed to /bin/sh, I do not see any 
reason to keep toor around. It is there since 4.3BSD, but I don't know 
anybody who uses it in the long term. Many will just change the login 
shell of root to a Bourne-like shell right away.

I have experimented a bit with the new usability features of sh in 14.0 
and I must say that it was quite a positive experience. I could easily 
suppress the urge to install and use bash instead of sh. I wonder if the 
changes (but not the ones to /etc/passwd) could be MFC'd in a few 
months, once they have matured a bit, so they would land in 13.1. As you 
mention elsewhere in this thread, usage in scripts is not affected by 
these changes. And for interactive use it could be a POLA violation, but 
the astonishment would be a positive one.

-- 
Kind regards,

Hans Ottevanger

Eindhoven, Netherlands.
hans@beastielabs.net
www.beastielabs.net