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

Re: Does debian have an official "standard" scripting language ?

On Fri, 9 Oct 1998, Santiago Vila wrote:

> On Thu, 8 Oct 1998, Geoffrey L. Brimhall wrote:
> > Just like debian has an official standard shell - bash, does debian have an
> > official scripting language ? 
> Even if bash is essential, the "standard" shell is sh, not bash.
> [ If you look at our shell scripts, most of them are /bin/sh, not
> /bin/bash ].

There was a debian-devel discussion about /bin/bash vs. /bin/sh a month or
two ago.  From what I recall, it boiled down to:

  /bin/bash is both `required' and `essential'.  As such, it will be
  present on any debian system.

  Debian ships with /bin/sh linked to /bin/bash.  As of version 2.01-3.1,
  the bash package reinstalls that link whenever it is upgraded, so it is
  difficult to maintain a debian system with /bin/sh linked to any shell
  other than /bin/bash.

  /bin/bash provides bourne shell features plus extensions (known
  as bash-isms).  Scripts using only bourne shell features should
  invoke /bin/sh.  Scripts using bash-isms should explicitly invoke
  /bin/bash.  There is no formal standard describing either the
  bourne shell or the bash shell scripting languages.

  /bin/bash is intended to be a POSIX conformant shell if invoked
  with the --posix option.  If invoked as /bin/sh, bash enters POSIX
  mode after reading startup files.  I recall it being mentioned in the
  discussion that bash still has some subtle POSIX nonconformancies. 
  There is a formal standard describing the  POSIX shell but, like the C
  language standard, it is not free.  If you want a copy you must
  purchase one, and you are not allowed to reproduce your purchased copy.

> The ones which are currently guaranteed to be on the system are sh, bash,
> awk and perl (as well as all the other little ones, sed, ed, etc.),
> because they are currently essential.

As of debian 2.0, perl-base is an `essential' package.  As such, it
should be present on any debian system.  The perl-base package is
described as `a stripped down Perl with only essential libraries'.  The
perl package itself is `important' (not `required', so it may not be
present).  I don't speak perl, and I'm not clear on what perl features
might be missing if the main perl package is not present.

As of debian 2.0, mawk and sed are `required' packages, so they should be 
present on any debian system.

ed and nvi (which supplies ex) are `important'.  As of debian 2.0,
they aren't declared to be `essential', so they may not be present.

Reply to: