[arch-dev-public] Updated bash provides (was: CVS update of core/base/bash (PKGBUILD))

Dan McGee dan at archlinux.org
Tue Nov 27 21:23:41 EST 2007


On Nov 25, 2007 10:45 PM, Dan McGee <dan at archlinux.org> wrote:
> On Nov 25, 2007 10:09 PM, Dan McGee <dan at archlinux.org> wrote:
> > To our bash maintainers- it would be cool if you could rebuild bash
> > sometime with these changes, as adding the provides=('sh') line will
> > really help me down the road when I am trying to make Arch a bit more
> > shell-agnostic. I have another patch coming shortly (to the ML) that
> > will make a lot of base packages depend on sh instead of bash when
> > that is possible.
> >
> > Of course, the rebuild can wait until the next patch level bump, but
> > just know that these changes have been made.
>
> And here is the patch I speak of. This is against the current CVS core
> HEAD checkout. I've went through each package that depends on bash,
> and tried to figure out whether the dependency could be switched to
> sh, should stay as bash, or be removed all together.
>
> PLEASE give me feedback so I don't go blindly breaking things. I've
> posted my logic as well as a few other comments below. If you want to
> try things out, I have a statically built dash package (against klibc,
> so it is super light) here
> <http://www.archlinux.org/~dan/dash-changes/>. I would love to get
> this in the core repo if there are no objections. I would eventually
> like to have an Arch system that doesn't go to hell when the /bin/sh
> symlink is changed to dash, but I'm going to need help from other devs
> and users when doing this.
>
> -Dan
>
> automake -> sh
> autoconf -> sh
> gzip -> sh
> tar -> nothing? (no install)
> initscripts -> needs bash
> util-linux-ng -> nothing? (no install)
> coreutils -> nothing? (no install)
> man -> sh
> hwdetect -> needs fixing, #!/bin/sh line is a lie (see below)
> less -> nothing? (no install)
> grep -> nothing? (no install)
> tcp_wrappers -> nothing? (no install)
> filesystem -> sh? looks like only install script needs it
> findutils -> nothing? (no install)
> e2fsprogs -> nothing? (no install)
> perl -> sh? looks like only install script needs it
> pacman -> needs bash (makepkg)
> glibc -> sh? just install script
> gawk -> sh
> m4 -> nothing? (no install)
> flex -> sh
> make -> nothing? (no install)
> libtool -> sh
> capi4k-utils -> don't know, don't use it (can someone check?)
> wlan-ng26-utils -> don't know, don't use it (can someone check?)
>
>
> $ hwdetect
> [: 57: ==: unexpected operator
> [: 58: ==: unexpected operator
> [: 59: ==: unexpected operator
> [: 70: ==: unexpected operator
> [: 126: ==: unexpected operator
> [: 166: ==: unexpected operator
>
> This can be fixed by changing all occurances of "==" to a single "=",
> and the rm statement at the end must be expanded as {} expansion is a
> bash thing.

Speak up now or I'm going to make these changes in the next 2 days or
so, and I will not listen to any bitching after the fact.

Tpowa, let me know if you want to make the above changes to the
hwdetect script, otherwise I will go ahead and do so.

-Dan




More information about the arch-dev-public mailing list