Re: POSIX shell; bash ash pdksh & /bin/sh
>>"Santiago" == Santiago Vila <firstname.lastname@example.org> writes:
Santiago> 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.
Santiago> Thanks. I'm a little suprised that you (more or less)
Santiago> recognize there is a circular argument here :-)
Why? I may be stubborn, but very rarely have I been accused of
being downright stupid ;-)
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?
Because it has been essential. No matter how it happened, bash
was made essential, with the implied promise that bash shall always
be present on a Debian system. Even if one does not agree with the
original reason, bash has been essential long anough that the
expectation of always finding bash on the system is not easily
broken. For example, we can't just report bugs on packages using
#!/bin/bash. Replacing /bin/sh is one thing, removing an essential
#package is another.
Like it or not, we are faced now with the circularity; and I
do not think one should even attempt to break the circle.
Santiago> If we want bash to be non-essential, yes, obviously we will
Santiago> have to break the circle "bash is essential because bash is
Santiago> essential because bash is essential..."
I am leaning towards the thought that once a package is
essential, and peole and packages depend on it, it is too late to
retract the essential flag. That is why the essential flag is not
>> What are the benefits of not using bash (some of these have
>> aready been pointed out to the list)
Santiago> I think this is not the point. Each user will have their
Santiago> own preferences. We just give them the freedom to remove
Santiago> bash if they like. It is up to them to decide what to do
Santiago> with that freedom.
They are free to remove the ldso package as well. However, we
do not make it easy for them to do so. And I do not think that we are
required to make it easy for people to remove essential packages.
>> e) does the benefit of all this work really justify the work?
Santiago> I really think so. This way, if someone wants to make a
Santiago> mini-Debian from Debian, using another bash as the default
Santiago> /bin/sh, he/she will know very well how many packages will
Santiago> have to be changed or rewritten, since the dependencies on
Santiago> bash will not be hidden anymore but they will be
This is not a good enough reason to justify all this
work. Unless something more tangible than this is presented, I
strongly object to fiddling with what is not broken.
Santiago> The point in having essential packages is to prevent the
Santiago> system to break horribly by a simple "dpkg --remove foo",
Santiago> not to fulfill unwritten promises like "bash is and always
Santiago> will be in the system".
Yes, so? Whastever the reason is to mark a package essential,
once it is marked so, it becomes a promise that it would always be on
the system. And that promise is not one I am willing to break unless
there is a strong justification for doing so.
Santiago> We usually dislike to have packages marked as essential
Santiago> when they are not really essential, and the day there was
Santiago> an alternative to provide /bin/sh, bash will not be
Santiago> "essential" anymore, even if it has still the "essential"
Santiago> flag in the control file, so this would become an
Santiago> artificial essential flag.
Yes, we hate packages being marked essential without
justification. But once they are so marked, and remain marked for a
length of time, we are presented with a fait accompli.
I have not seen a reason strong enough to remove the pain that
should ensue in trying to remove the essential flag.
I've finally figured out why airports make you walk so far out to get
to your plane. It's their way of giving your luggage a head start.
Manoj Srivastava <email@example.com> <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 firstname.lastname@example.org
with a subject of "unsubscribe". Trouble? Contact email@example.com