:: Re: [DNG] Danger: Debian POSIX host…
Top Page
Delete this message
Reply to this message
Author: Rick Moen
Date:  
To: dng
Subject: Re: [DNG] Danger: Debian POSIX hostility
Quoting marc (marcxdv@???):

> Hmm - that might require some background: I'd venture that most of
> these scripts were written when sh was just a symlink to bash, and
> dash didn't exist, nevermind as a debian package.


But that was always a blunder. The shebang should have been set to bash
explicitly, if bash-specific features are used: In the cases of which
you spoke, the coder made a lazy and unsupportable assumption.

Also, the fact that Debian Almquist Shell (dash) didn't exist until 2002
is true but irrelevant. Other Bourne clones did, e.g., Kenneth
Almquist's ash (Almquist Shell), which predated the Linux kernel, having
emerged in 1989. As another example, pdksh has been available since
1983 and is closely Bourne compatible (compliant with the relevant
POSIX.2 specs).

> I, for one, never bought into the reasoning for migrating
> system scripts away from bash to sh. The argument that
> bash is too large struck me as odd - there were critical
> dependencies on perl and python with a much larger dependency
> graph, and much bigger startup costs...


Many startup Bourne scripts and other root-run Bourne scripts became
about 3x faster when run by dash instead of bash. I think it likely
that there are also many fewer potentially dangerous bugs lurking, too,
given the great reduction in codebase size.

> More importantly I think it is good that one uses the same language
> that one types into the terminal every day when extending the
> distribution - that makes a sysadmin equal to the distribution maintainer,
> instead of specialising that into a different caste...


Well, then: Learn Bourne scripting. When you're well informed about
that, learn bashisms as an optional extra feature set when and if
needed.