Mailinglist Archive: opensuse-factory (401 mails)

< Previous Next >
Re: [opensuse-factory] Can we assume that /bin/sh is bash?
On 3/13/19 2:19 PM, Michal Suchánek wrote:
On Wed, 13 Mar 2019 13:59:08 +0100
Stephan Kulow <coolo@xxxxxxx> wrote:

On 3/13/19 1:56 PM, Michal Suchánek wrote:
Bash has documentation. If implementation does not match documentation
you can file a bug as much as you can against a POSIX-compliant shell.
With bash being much more active project than most POSIX-compliant
shells the bug is even much more likely to get resolved. And unlike
POSIX-compliant shells bash has BASH_VERSION which tells you *exactly*
what you are getting in case you need to support multiple versions that
behave differently.

And if you're in need of writing shell scripts that are specific to bash
versions,
you're free to require /bin/bash as interpreter.


It is not always clear how to do that. I thought there is a way to
switch rpm spec scriptlets to different shell but did not find how to
do that for %build.Again, if you find yourself in need to write bash version
specific %build scripts,
write them in a real language - or at least put them in an extra script.


Anyway, if we provide alternatives for /bin/sh you can assume any shell
Yeah, that's right. *If* - *if* a shell in openSUSE wants to provide /bin/sh,
it needs to
eat all our rpm snippets that survived checkbashisms. Just because bash
provides it,
doesn't mean there are alternatives worth fighting over theoretic problems.

And %build sections should potentially even be executed by /bin/bash --posix
right away.
But again, if your %build section is bash version specific, it's a lost case
IMO.

Greetings, Stephan

--
A good name lost is seldom regained. When character is gone,
all is gone, and one of the richest jewels of life is lost forever.
-- J. Hawes
--
To unsubscribe, e-mail: opensuse-factory+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-factory+owner@xxxxxxxxxxxx

< Previous Next >
Follow Ups