On Tue, Nov 2, 2010 at 7:29 AM, B Watson <[email protected]> wrote: > On 11/2/10, Ben Mendis <[email protected]> wrote: >> it is perfectly acceptable to specify 'bash' for you script instead. > > It is? I'd always assumed that the "follow our templates whenever > possible" rule meant the #!/bin/sh (from the template) is required... If > it's allowed to say #!/bin/bash, I'll do that for all my future > submissions.
Unless we're talking about using either /bin/bash or /bin/sh, the problem that I see with this is that it would open the precedence to accept submissions of scripts using other shells like csh and zsh, that could be a problem for the people that review the scripts, as they'd have to learn the particularities of other shells - it could slow down the process of review->approval considerably. > Maybe the admins could make a note of it on the submissions page, or > even change the template to start with #!/bin/bash (is there any reason > not to do this? My opinion is there's not, but I'm just a luser...) > > Am not advocating mass-updating existing slackbuilds to change the > shebang line, mind. Just the template. Maybe with a comment saying > "do not change to #!/bin/sh unless you've actually tested your script > with at least ash and ksh"? I like the idea of updating the template. A note saying "you should run these slackbuilds with bash" would be fine too. The current FAQ and HOWTO assumes that the user know that Slackware assumes that /bin/sh is a symlink to bash, that's a lot of assumptions if you ask me. :) > Pretty much a separate (possibly off-topic) question here: why would > anyone even care to use ash for /bin/sh on a build host? On an embedded > system it makes sense, but on the dev box where you build its packages? Why not? It doesn't matters if my /bin/sh is maxsownsh, bash or ash, the shebang denotes that the script is compatible with the bourne shell and, as long as my shell is compatible with it, it should run just fine. ;) My motivation to change the shell was because a co-worker, which uses Debian Sid, has the same hardware that I do and his notebook runs our sh-compatible scripts considerably faster than mine. We compared configurations/optimizations and did a quite exhaustive research on gnu.bash.bug looking for performance regressions. Then, I changed the shebang of these scripts to use /bin/ash and, mind you, the same thing that took 16.702 seconds using bash as /bin/sh took 6.803 with ash and pretty much the same happens to every script that we tested. As I can't change every shebang or run the scripts using "lightandfastsh script.sh", I did exactly what the others did in their respective computers: changed my /bin/sh to a shell other than bash. BTW, I don't have a "build host" - If the box that is building is slow or if I just need more processing power, I use distcc. _______________________________________________ SlackBuilds-users mailing list [email protected] http://lists.slackbuilds.org/mailman/listinfo/slackbuilds-users Archives - http://lists.slackbuilds.org/pipermail/slackbuilds-users/ FAQ - http://slackbuilds.org/faq/
