From: Brian Harring <ferringb@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] ebuild design issue regarding some {I need the lib and api only}-DEPENDs
Date: Thu, 18 Aug 2005 10:17:31 -0500 [thread overview]
Message-ID: <20050818151731.GA19947@nightcrawler> (raw)
In-Reply-To: <200508181628.44059.trapni@gentoo.org>
[-- Attachment #1: Type: text/plain, Size: 3629 bytes --]
On Thu, Aug 18, 2005 at 04:28:40PM +0200, Christian Parpart wrote:
> for the general mysql ebuild, I'd propose the following splitup:
> * dev-db/mysql-server (or myssqld)
> * net-libs/libmysqlclient
> * dev-db/mysql (a meta package that simply depends on both, for backward
> compat)
<snip- left for reference in following sections>
> Using the "minimal" useflag for this - IMHO - is a misuse of the idea of
> "minimal" semantically - as I do understand minimal in a way like "don't
> overbloat me with patches and other feature additions"-alike.
Agreed.
>
> The reason is, that some packages need to talk to (SQL )servers, but some host
> installation do not need - or even want to (think about security policies) -
> a local (SQL) server;
>
>
> This idea of course is applicable for lots of more packages, but mysql is one
> use case where I myself ran into;
>
> Do we have a general accepted gentoo policy for this?
>
> And... any thoughts on this subject?
We don't split upstream packages into seperate pieces normally, and
without a damn good reason-
1) Upstream releases it combined. Yes, this can be flawed if you're
the lucky maintainer of a package where upstream does stupid things as
routine, but we do try to have our ports of a package as 'true' to
upstream's original release as possible.
2) ebuild maintenance will be a nightmare- every new version will
require again walking the source to see if the lines you've drawn for
dividing the source are still proper.
3) Extension of #2, any source that's reliant on those lines you've
drawn to chunkify a package have to be verified everytime you change
the sets that the subpackages hold.
4) (not applicable here, but a point) chunkifying a package, assuming
you make it this far, is going to require configuration every run
through, or you'll have to write some script to store configuration on
the users box, and lift that (pkg-config plugin). More work, and more
QA.
5) We already provide our own 'subpackages' in a sense; an
unconfigured ebuild can produce len(IUSE)^2 potential configurations
of itself, each effectively a subpackage that are all labelled as that
specific category/package-version. Yes configured is a better term
there, but I'm trying to make a point here :P
Adding a use flag to control whether or not the server chunk gets
installed I think is a great thing, but I also think there's no way in
hell you should attempt it now- frankly, you can't do it now because
use dependencies aren't available in any stable portage.
Yes, there is the pkg_setup die check for a use flag being no, and
yes, anyone using that but in the most dire cases needs an atomic
wedgie. Too much stuff depends on mysql to resort to the pkg_setup
hack, and mysql *is* a package that is a bit server centric normally,
meaning those who hit the pkg_setup 'surprise' hopefully will hit it
on a test server, rather then live.
People should use test servers rather then deploying changes they
can't totally predict to a live server, but they don't, which kills
that as an option.
Short version, control what gets installed via use flags, but don't
introduce it until use deps are available in a stable portage.
Breaking the beast up now is short sighted since use deps are
already implemented in the core rewrite. Yes, waiting is a pain in
the ass, but the work to break it up and continue to indefinitely
force subpackaging on an package isn't worth it.
My opinionated 2 cents...
~harring
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2005-08-18 15:20 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-08-18 14:28 [gentoo-dev] ebuild design issue regarding some {I need the lib and api only}-DEPENDs Christian Parpart
2005-08-18 14:23 ` Luca Barbato
2005-08-18 15:24 ` Francesco R
2005-08-18 14:27 ` Brian Jackson
2005-08-18 14:40 ` Mike Frysinger
2005-08-18 15:13 ` Lance Albertson
2005-08-18 15:24 ` Ciaran McCreesh
2005-08-18 15:28 ` Francesco R
2005-08-18 15:37 ` Chris Gianelloni
2005-08-18 15:56 ` Brian Harring
2005-08-18 16:08 ` [gentoo-dev] Local USE defaults Donnie Berkholz
2005-08-18 16:31 ` Brian Harring
2005-08-18 17:16 ` Alec Warner
2005-08-18 17:36 ` Brian Harring
2005-08-18 17:18 ` Mike Frysinger
2005-08-18 17:38 ` Brian Harring
2005-08-19 7:10 ` Donnie Berkholz
2005-08-19 11:53 ` Brian Harring
2005-08-18 17:24 ` [gentoo-dev] ebuild design issue regarding some {I need the lib and api only}-DEPENDs Ciaran McCreesh
2005-08-18 18:13 ` Brian Harring
2005-08-19 0:06 ` Ciaran McCreesh
2005-08-19 1:59 ` Brian Harring
2005-08-18 15:17 ` Brian Harring [this message]
2005-08-18 15:44 ` Chris Gianelloni
2005-08-19 3:30 ` Christian Parpart
2005-08-19 3:09 ` Brian Harring
2005-08-18 17:01 ` Georgi Georgiev
2005-08-19 2:59 ` Luke-Jr
2005-08-19 5:01 ` Georgi Georgiev
2005-08-19 3:19 ` Christian Parpart
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=20050818151731.GA19947@nightcrawler \
--to=ferringb@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