Several reason a minimal POSIX /bin/bash is a bad idea
[I am going to be in hot water for this one]
I am disturbed by the several suggestions about making /bin/sh
a small, minimalist shell that offers just bare bones POSIX
environments and eschews some common shell practices for Linux (where
full featuresd shells have served as /bin/sh for the most part).
While elegant and great for the pedants amongst us, we should
realize that we are putting together a distribution, and there are
third party software developers we have to work with. POSIX
compliance is critical. But there is no reason why the command
interpreter can't be a super set.
So while POSIX compliance is a disired goal, the shell should
not be unfriendly to non POSIX scripts, just like browsers parse
legal HTML, but they do their levbel best to accomodate bad HTML.
Be liberal in what you accept, be very strict in what you
output. Our scripts that say /bin/sh should not have bashisms. Our
default /bin/sh should accept them.
People who wish to test scripts should change their /bin/sh;
and we should tell people that using some other shell as /bin/sh may
But we should not detrimentally affect the stability of the
system just because it makes us feel good that our shell is a
minimalist POSIX shell. I do not think the default should be changed
unless there are reasons far stronger than those which have been
People, including third party software developers, may have
come to depend on /bin/sh being Bash. Also, since bash is essential,
we should not force yet another command interpreter on /; and bash
_does_ try to be more posixly correct when invoked as sh.
People should be allowed to change /bin/sh. But the default
should not be changed.
"I see little divinity about them or you. You talk to me of
Christianity when you are in the act of hanging your enemies. Was
there ever such blasphemous nonsense!" Shaw, "The Devil's Disciple"
Manoj Srivastava <firstname.lastname@example.org> <http://www.datasync.com/%7Esrivasta/>
Key C7261095 fingerprint = CB D9 F4 12 68 07 E4 05 CC 2D 27 12 1D F5 E8 6E
To UNSUBSCRIBE, email to email@example.com
with a subject of "unsubscribe". Trouble? Contact firstname.lastname@example.org