[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Fwd: /bin/sh linked to dash? SOlVED, however..



On Fri, Jul 08, 2011 at 05:39:01PM -0400, Robert Isaac wrote:
> On Thu, Jul 7, 2011 at 10:55 PM, Lennart Sorensen
> <lsorense@csclub.uwaterloo.ca> wrote:
> > Finding all scripts with /bin/sh and changing them to /bin/bash can be
> > done in a couple of lines of perl.  Trivial to do really
> 
> It's more trivial to change the default shell to bash if it is
> necessary for a configuration, there is no need to get defensive about
> dash or force its use upon anyone that doesn't want to use it.

I didn't read that as forcing anyone to use dash.  Theoretically, one
can use any shell as /bin/sh if one likes.  Debian supports some options
and not others.  Nevertheless, the most anyone can expect on a Debian
system from /bin/sh is posh, which provides almost no extra features
beyond those required.  Since many other systems provide little
more than the minimum POSIX features for /bin/sh (TTBOMK, *all* of the
*BSDs, among others), assuming that /bin/sh is bash is unwise.

So there's no forcing going on.  Assuming that /bin/sh is bash is wrong
and broken, and should be fixed on correctness arguments alone.
Complaining that your /bin/sh scripts are not working because they use
bashisms is silly and a waste of time.  It's not like this change is a
surprise; it's been known and discussed for literally years.

> > (and /bin/sh is not going
> > back to bash, it is going to dash or other smaller and more efficient
> > posix shell choices since it speeds up boot time to not have to load
> > bash for things that don't require bash).
> 
> So a few seconds saved whenever a kernel update is issued justifies
> breaking existing configurations?  Are you really making that
> argument?

/bin/sh is invoked very often in a variety of contexts, among those at
boot.  Other instances include login scripts, package installation
scripts, and 317 programs in /usr/bin (on my system; YMMV).  Speed
improvements are beneficial, and dash is significantly smaller than
bash, which is useful in resource-constrained environments.

Any breakage that occurs is due to assuming functionality that has never
been guaranteed, that is not available everywhere, and that in reality
is not that hard to do without.  There was even a debconf question that
you could have said no to if you didn't want to let go of /bin/sh as
bash.  Nevertheless, if you persist in thinking that changing /bin/sh to
dash was a bad idea, please go complain on debian-devel, where the
people that made the decision are.  Just don't expect to get a warm
reception.

-- 
brian m. carlson / brian with sandals: Houston, Texas, US
+1 832 623 2791 | http://www.crustytoothpaste.net/~bmc | My opinion only
OpenPGP: RSA v4 4096b: 88AC E9B2 9196 305B A994 7552 F1BA 225C 0223 B187

Attachment: signature.asc
Description: Digital signature


Reply to: