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

Re: bash should not be essential



Santiago Vila Doncel <sanvila@unex.es> writes:

> > > I want to change the policy. I think bash should not be
> > > essential.
> >
> > Why?
> 
> Because this seems to be the only way of encouraging #!/bin/sh in
> favour of #!/bin/bash...

That seems to me a singularly unconvincing argument for making bash
non-essential.

> In fact, I am not worried by the fact that bash is essential or not.
> I am worried by the fact that so many packages depend on it.

I suggest you file bugs on those which needlessly do.
 
> I would like bash to be non-essential if only to know how many
> packages would have to add a Depends: line in the control file.

Umm, I suspect some grepping could tell you that.  (Shurely?)
 
> If so many packages depend on bash, users who symlink sh
> ->someotherPOSIXshell will never be able to get rid of bash, if they
> do not like it.

You can't rid of a lot of base, so what?  (I hope you aren't going to
argue that ash or something else similar should replace bash in base)
 
> We started talking about bashisms in debian/rules. Ian said
> debian/rules was just for building Debian/Linux packages, so bash
> should be always there and we do not have to worry about it.

I agree.
 
> Well, I'm not saying that our packages should build on every Unix
> platform, as GNU software does. I'm saying just that allowing
> #!/bin/bash for shell scripts is a bad idea.

I disagree.
 
> So if we have to admit bashisms in debian/rules, we are in fact
> saying "Debian packages will always be for Debian/Linux
> distributions".

Uh, no.  What we're saying is Debian Packages will always be for
Debian distributions.  What's wrong with that?

(It's currently Debian policy that bash is essential, why would this
not apply to some hypothetical non-Linux Debian distribution?)
 
> We have already seen that this is not completely true with
> Debian/Solaris.

We have?  This may be true for people like Eric who are trying to
cross compile packages under Solaris, but surely not Debian/Solaris.
Why would it not follow Debian policy and have bash available?

> I still don't see why people who want to port *some* Debian packages
> to Solaris (not the *entire* Debian distribution) should be forced
> to port bash as the first package, if /bin/sh has (or should have)
> the same basic functionality.

Solaris /bin/sh *doesn't*, your case would be a more interesting if
you used an example which had a POSIX sh as /bin/sh.
 
$echo $(whoami)
syntax error: `(' unexpected
$uname -a
SunOS dcsun4 5.5.1 Generic_103640-12 sun4u sparc
$

> > I think we need to be able to depend on having *some* POSIX-like
> > sh available on the system, and it seems to me that only marking a
> > package essential can ensure that.
> 
> As I said, if this is a technical problem, we could just keep bash
> as essential, but treat it as if it not were essential (i.e having
> explicit Depends: lines on packages that depend on it).

What on earth for?  That's completely redundant if bash is essential.

-- 
James


Reply to: