[dpdk-dev] [PATCH] Fix bash path in shebangs

Thomas Monjalon thomas at monjalon.net
Wed Sep 13 18:51:45 CEST 2017


13/09/2017 17:55, alan somers:
> On Wed, Sep 13, 2017 at 9:39 AM, Thomas Monjalon <thomas at monjalon.net> wrote:
> > 13/09/2017 16:35, alan somers:
> >> On Wed, Sep 13, 2017 at 3:37 AM, Thomas Monjalon <thomas at monjalon.net> wrote:
> >> > 27/07/2017 22:12, asomers at gmail.com:
> >> >> From: Alan Somers <asomers at gmail.com>
> >> >>
> >> >> "/bin/bash" is a Linuxism.  "/usr/bin/env bash" is portable.
> >> >
> >> > Why is it an issue?
> >> >
> >> > Can you run dpdk-setup.sh on a non-Linux system?
> >>
> >> Nope, because even dpdk-setup.sh assumes that bash is located at
> >> /bin/bash.  But "/usr/bin/env bash" works everywhere.
> >
> > No, I mean: can you run dpdk-setup.sh on a non-Linux system after your change?
> >
> > This script configures a Linux system, so I want to understand
> > what situation you are trying to fix.
> 
> I'm using Ceph, which imports DPDK whole (and several other 3rd party
> projects too).  I'm not sure which parts of these 3rd party projects
> Ceph is actually using, but it's easier to fix the bash path
> everywhere than to determine which places need it to be fixed.  And
> AFAIK it doesn't cause any problems on any modern Unix derivative.

If I understand well, you don't know which case it is fixing,
but you prefer the shebang being this way.

I am a bit reluctant to fix something if we don't know what is the bug.
Maybe it does not hurt, but there can be some drawbacks:
	- the chosen bash binary depends on the environment PATH
	- it makes impossible to add some options in the shebang


More information about the dev mailing list