From: Alec Warner <antarus@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] My wishlist for EAPI 5
Date: Wed, 20 Jun 2012 23:33:24 +0200 [thread overview]
Message-ID: <CAAr7Pr9TMDTJrHoP0b5q3qa9_BmkaggQyVHGp4JDqw1h9eM8BA@mail.gmail.com> (raw)
In-Reply-To: <4FE231BA.6020404@gentoo.org>
On Wed, Jun 20, 2012 at 10:25 PM, Richard Yao <ryao@gentoo.org> wrote:
> Here is my wishlist for EAPI 5:
>
> Multilib (and/or multiarch) support
> Automated epatch_user support
> Parallel make checks
> POSIX Shell compliance
>
> Here are some explanations:
>
> Multilib (and/or multiarch) support
> The current binaries cause a great deal of pain, particularly when a
> user does not want to upgrade something. I had this problem with WINE
> and glibc because I wanted to avoid the reverse memcpy() fiasco on my
> systems. This situation would have been avoided entirely if the package
> manager supported multilib.
>
> Automated epatch_user support
> Users should be able to test patches without modifying their ebuilds.
> This also saves developer time because we don't need to navigate the
> portage tree (or an overlay), make a change and test it. We could just
> dump the patch in the appropriate directory and build.
>
> Parallel make checks
> As it stands, `make check` is so slow that few people actually run it
> and QA suffers as a result. We have the ability to do parallel checks,
> but we need to explicitly put `emake check` into the ebuild and use
> autoconf 1.12 to get that. It would be best if this behavior were the
> default, not the exception.
>
> POSIX Shell compliance
> There has been a great deal of work done to give the user full control
> of what is on his system and there is more that we can do there. In
> particular, I think a lean Gentoo Linux system should be able to use
> busybox sh and nothing else. That requires POSIX shell compliance.
> OpenRC init scripts support this and the configure scripts support this.
> The few exceptions are bugs that are addressed by the Gentoo BSD developers.
> As such, I think we should make EAPI=5 use POSIX shell by default. If
> an ebuild requires bash, we can allow the ebuild to declare that (e.g.
> WANT_SH=bash), but that should be the exception and not the rule.
>
Our ebuilds are written in bash. I dunno about you, but bash sucks for
writing anything remotely complicated in. My goal is any script that
is 200 lines of bash or more gets rewritten in something else (usually
python.) I mean the canonical example here is the old python.eclass
which was a masterful example of how bash can really be used to shoot
yourself in the foot.
However I'd argue that the opposite of what Ciaran said is true. Screw
trying to get the PM to stop using bash; developers are not interested
in writing ebuilds in posix shell; bar none.
Why would I as an ebuild author waste a bunch of time writing my
ebuild in posix compatible sh when I can use bash (and if I had a
better language than bash to write ebuilds in; I'd use that too.) You
are free to write your ebuilds in posix sh; good luck to you.
-A
next prev parent reply other threads:[~2012-06-20 21:34 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-20 20:25 [gentoo-dev] My wishlist for EAPI 5 Richard Yao
2012-06-20 20:35 ` Ciaran McCreesh
2012-06-20 20:50 ` Richard Yao
2012-06-20 20:54 ` Ciaran McCreesh
2012-06-20 21:02 ` Richard Yao
2012-06-20 21:10 ` Ciaran McCreesh
2012-06-20 21:05 ` Richard Yao
2012-06-20 21:12 ` Ciaran McCreesh
2012-06-20 21:34 ` Richard Yao
2012-06-21 8:29 ` [gentoo-dev] " Duncan
2012-06-21 9:23 ` Richard Yao
2012-06-22 0:38 ` Richard Yao
2012-06-22 5:30 ` Duncan
2012-06-22 5:55 ` Michał Górny
2012-06-22 6:20 ` Ben de Groot
2012-06-20 21:43 ` [gentoo-dev] " Justin
2012-06-21 6:08 ` Pacho Ramos
2012-06-21 7:00 ` Ciaran McCreesh
2012-06-21 7:25 ` Pacho Ramos
2012-06-21 7:39 ` Ciaran McCreesh
2012-06-23 7:53 ` Pacho Ramos
2012-06-23 9:38 ` Ciaran McCreesh
2012-06-23 9:53 ` Peter Stuge
2012-06-23 10:24 ` Pacho Ramos
2012-06-23 10:30 ` Pacho Ramos
2012-06-23 10:31 ` Ciaran McCreesh
2012-06-23 11:05 ` Pacho Ramos
2012-06-23 11:14 ` Ciaran McCreesh
2012-06-23 11:38 ` Peter Stuge
2012-06-23 11:37 ` Ciaran McCreesh
2012-06-23 11:52 ` Peter Stuge
2012-06-23 11:59 ` Ciaran McCreesh
2012-06-23 12:16 ` Pacho Ramos
2012-06-23 12:21 ` Ciaran McCreesh
2012-06-23 12:11 ` Pacho Ramos
2012-06-23 12:16 ` Ciaran McCreesh
2012-06-23 12:33 ` Pacho Ramos
2012-06-23 10:37 ` [gentoo-dev] " Duncan
2012-06-23 10:43 ` Duncan
2012-06-23 10:44 ` Ciaran McCreesh
2012-06-23 11:12 ` Rich Freeman
2012-06-23 23:09 ` Duncan
2012-06-21 9:27 ` [gentoo-dev] " Alec Warner
2012-06-21 12:04 ` Rich Freeman
2012-06-23 8:19 ` Pacho Ramos
2012-06-21 11:15 ` Patrick Lauer
2012-06-21 11:37 ` Ciaran McCreesh
2012-06-23 8:01 ` Pacho Ramos
2012-06-21 12:11 ` Homer Parker
2012-06-21 12:30 ` Ciaran McCreesh
2012-06-21 13:13 ` Homer Parker
2012-06-21 13:20 ` Ciaran McCreesh
2012-06-21 20:26 ` Homer Parker
2012-06-21 22:46 ` Rich Freeman
2012-06-29 5:27 ` Mike Frysinger
2012-06-29 5:29 ` Mike Frysinger
2012-06-21 6:41 ` Ciaran McCreesh
2012-06-21 7:24 ` justin
2012-06-21 12:14 ` Homer Parker
2012-06-21 12:38 ` Ciaran McCreesh
2012-06-20 20:39 ` Maxim Kammerer
2012-06-20 20:41 ` Ciaran McCreesh
2012-06-20 20:51 ` Richard Yao
2012-06-29 5:20 ` Mike Frysinger
2012-06-20 20:52 ` Luca Barbato
2012-06-20 21:33 ` Alec Warner [this message]
2012-06-21 9:42 ` Ben de Groot
2012-06-29 5:25 ` Mike Frysinger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAAr7Pr9TMDTJrHoP0b5q3qa9_BmkaggQyVHGp4JDqw1h9eM8BA@mail.gmail.com \
--to=antarus@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox