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

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




On Wed, 5 Aug 1998, Marcus Brinkmann wrote:

> On Wed, Aug 05, 1998 at 07:53:14AM +0800, Bill Mitchell wrote:
> > 
> > 
> > On 4 Aug 1998, Manoj Srivastava wrote:
> > 
> > >  Marcus> 1) Make all shell scripts either posix clean or call
> > >  Marcus>    "#!/bin/bash"
> > > 
> > > 	I think you are confused. If I call /bin/bash, and no such
> > >  thing exists, is it a bug? 
> > 
> > Not with either the debian distribution or the bash package -- at least
> > not if the bash package is Priority: required.
> 
> No, this is not correct. A dependency must be stated unless the package is
> marked as being "Essential:".

Yes, and that would be a bug which is confined to the offending package,
not a bug with either the debian distribution or the bash package.

Policy states that things may break if a Required package is removed.
Presuming that the Essential flag was removed from bash, Pointing /bin/sh
at a posix shell and removing bash would break the offending package in
this case, and that would not be a bug with either the debian distribution
(e.g., a policy problem) or a bug with the bash package.

>From the Policy manual (version 2.4.1.0):

     `required' packages are necessary for the proper functioning of
      the system. You must not remove these packages or your system  may
      become totally broken and you may probably not even be able to
      use dpkg to put things back. Systems with only the `required'
      packages are probably unusable, but they do have enough
      functionality to allow the sysadmin to boot and install more
      software.

Kai Henningsen <kaih@khms.westfalen.de> wrote:

> bmbuck@acsu.buffalo.edu (Buddha Buck)  wrote on 02.08.98 in <"otsK3B.A.zLF.QTjx1"@murphy>:
> 
> > One problem I see is a poor definition of essential packages.  The
> > distinction between required and essential packages isn't clear from
> > the policy manual. "Required" packages are defined as "necessary for
> > the proper functioning of the system."  Removing a required package may
> > break the system.   "Essential" packages are defined as "packages that
> > are *essential* for a system".  By these definitions, how do required
> > and essential packages differ?
> 
> My take is that required packages are required for the system as a whole,  
> essential packages are required for the installation subsystem (dpkg and  
> friends).
> 
> That is, if you remove required packages, your system is broken until you  
> reinstall them. But if you remove essential packages, your system will  
> need manual surgery - dpkg will be broken, and "just reinstall them" won't  
> work.

That seems logical to me.  By this definition, the bash package need not
be essential as long as /bin/sh does point to a posix shell.  Removing the
Essential flag would make bash a nonessential but required package, and
other packages presuming the existance of /bin/bash without declaring
a dependency on the bash package would become buggy.  Such buggy packages
would break if the required bash package were removed - as policy warns
they might.


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


Reply to: