Le 11/02/2016 17:04, Rainer Weikusat a écrit :
Didier Kryn <k...@in2p3.fr> writes:
[...]
It should be the name of a shell capable of running Bourne/ standard
shell scripts. But this may not work if the /bin/dash in the original
script was there for a reason, ie, it was using dash features.
As I already wrote, vdev was working well with busybox's ash.,
replacing 'dash' with 'sh' in the shebang.
If the question is why Jude replaced /bin/sh with /bin/dash in the
middle of the development, I think it was to make sure to not invoke
bash. But (sorry for the repetition) I used to modify the shebang
everytime I tested a new version, and there was never any issue with
the shell.
There is no question here. *If* the script in question uses dash
spuriously, ie, it doesn't use features specific to dash but is actually
a Bourne shell script, replacing /bin/dash with /bin/sh should be
fine. If not, stuff is going to break sooner or later, either because
/bin/sh isn't really dash (eg, someone might use bash for that) or
because of difference between the busybox and Debian (d)ash forks.
There shouldn't be any "feature specific to dash", by construction.
The only reason why dash (Debian's Ash, I guess) exists is portability
through POSIX conformance. I think Jude uses dash instead of bash, Xsh
or what else to let it check for POSIX conformance, and he wants to be
sure to not invoke bash by mistake; he might answer himself, but this is
the only sensible reason I see.
But POSIX conformance is not enough, /bin/dash in the shebang
obviously renders portability impossible. Just look at any system
script in your Debian or Devuan system and tell me if any of them start
with #! /bin/dash.
This depends on the code of the script/ scripts in question and blindly
advocating to replace the shell chosen by whoever wrote the script with
a generic name is not a good idea.
Who speaks of doing it blindly? I have clearly written I had
checked it many times and there was never an issue. Further more, I
consider that if there was an error,
1) the script should be corrected
2) a bug report should be sent to the authors of the non-conformant
shell, be it Busybox or Debian.
Didier
_______________________________________________
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng