On 28/05/10 21:09, Nezmer wrote:
On Fri, May 28, 2010 at 11:17:49AM +0200, Xavier Chantry wrote:
On Fri, May 28, 2010 at 10:57 AM, Pierre Schmitz<[email protected]>  wrote:

I would say make sure that core packages are fine with /bin/sh being dash
and then move it to testing. This should speed up things. For the install
scripts: why can't pacman just call /bin/bash? I mean makpekg and the
PKGBUILDS need bash anyway.


I think that the two pending patches from Jonathan Conder on my branch
http://code.toofishes.net/cgit/xavier/pacman.git/log/?h=working
would make this cleaner and easier to do.
1) switch from popen to execl : popen implicitely calls /bin/sh, so
when we had /bin/sh=dash and wants bash, it would call /bin/dash then
/bin/bash. But execl gives us more control.
2) ldconfig is now called directly so if we do the change /bin/sh ->
/bin/bash, it only affects scriptlet executions.

But I am pretty sure we talked about this before, maybe there was a
bug report, and some people suggested to make the shell path
configurable.
Thinking about it now, I would be fine with just calling /bin/bash
directly. If we consider pacman project as a whole, it's pretty much
tied to bash anyway.


+1 from someone who is using pacman in a FreeBSD environment. Where
"/bin/sh" is linked to neither bash nor dash.

bash is used in both makepkg and repo-add. It's not a platform-dependent
terrible dependency. And for recovery purposes, It can optionally be built
statically. The static option is actually supported as a configure flag.


People who use pacman do not necessarily use makepkg or repo-add so using that as a basis for hard coding /bin/bash is wrong.

Dan and I have discussed allowing a #! at the top of install scripts. I think he had some very draft code that even allowed python scriptlets!

Allan


Reply via email to