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

Re: POSIX shell; bash ash pdksh & /bin/sh


On 2 Aug 1998, Manoj Srivastava wrote:

>  Santiago> 1. bash is essential because lots of packages use it, so
>  Santiago>    making it non-essential would be stupid.
>  Santiago> 2. Lots of packages use bash because, after all, bash is
>  Santiago>    essential, so what's the problem?
> 	Nice summary.

Thanks. I'm a little suprised that you (more or less) recognize there is a
circular argument here :-)
>  Santiago> The obvious way to break this circle is to make bash
>  Santiago> non-essential.  If none of the awk's we provide is
>  Santiago> essential, why has bash to be essential?
> 	No, we have to do is ask a few questions first:
>  a) Is it required we break out of this circle? (I suspect there is a
>     group that shall aver, quite vocally, that this is indeed the
>     case).

If we want bash to be non-essential, yes, obviously we will have to break
the circle "bash is essential because bash is essential because bash is

> What are the benefits of not using bash (some of these have
> aready been pointed out to the list)

I think this is not the point. Each user will have their own preferences. 
We just give them the freedom to remove bash if they like. It is up to
them to decide what to do with that freedom.

>  b) Is there a tested alternative?

Yes, by hipothesis: I was talking about "The day we have another shell
which provides the /bin/sh symlink".

>  c) How many packages need to be changed?

Exactly: The ones that depend on /bin/bash. They will have to be either
a) rewritten so that they use /bin/sh, or b) a Depends: line
will have to be added to the control file.

>  d) can we create an upgrade path by which people can safely ugrade to
>     a non-bash /bin/sh? Are there any known glitches? (guessing is not
>     good enough)

I think dpkg hackers will know the answer to this.

>  e) does the benefit of all this work really justify the work?

I really think so. This way, if someone wants to make a mini-Debian
from Debian, using another bash as the default /bin/sh, he/she will
know very well how many packages will have to be changed or rewritten,
since the dependencies on bash will not be hidden anymore but they will be

>  f) How many non-Debian packages are affected? Does this affect user
>     scripts, and if so, to what extent?

We don't know for sure, as well as we don't know how many non-Debian
packages were affected by the removal of the /usr/spool symlink.

As long as a user does not remove bash in his system having at the same
time third party software using it, there will no problem. If someone
wants to remove a required package like bash, it is up to him/her.

The point in having essential packages is to prevent the system
to break horribly by a simple "dpkg --remove foo", not to fulfill
unwritten promises like "bash is and always will be in the system".

We usually dislike to have packages marked as essential when they are
not really essential, and the day there was an alternative to provide
/bin/sh, bash will not be "essential" anymore, even if it has still
the "essential" flag in the control file, so this would become an
artificial essential flag.

Version: 2.6.3ia
Charset: latin1


To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

Reply to: