Le samedi 23 juin 2012 à 14:08 +0100, Ciaran McCreesh a écrit :
> On Sat, 23 Jun 2012 15:02:41 +0200
> Gilles Dartiguelongue <eva@gentoo.org> wrote:
> > > It is handled better by working out what exactly the problem is,
> > > and if you can't implement it nicely using existing features, then
> > > not implementing it at all until you have suitable features.
> >
> > Sorry to make this old thread pop up again but, no, it is not
> > acceptable to not ship packages like webkit just because you dislike
> > the solution we used to workaround a well known problem in ebuild
> > packaging.
>
> No-one is saying "don't ship webkit". What is being asked is that a) you
> ship webkit with a subset of functionality disabled if necessary for
> now, and b) that you provide a general description of what you can't
> provide cleanly using existing functionality.
Well the problem is simple, we need to ship webkit with gtk2 and gtk3
support. This is needed because gentoo has gtk2 based desktop/apps and
because we want to ship gnome3 for example.
Cool thing is that webkit supports being built with each toolkit without
conflicting with the build from the other toolkit hence we ended up
using SLOTS.
Then the problem is that you cannot have two ebuilds of the same version
in two different slots.
We then had a couple of solutions, most notable being:
* using -r${SLOT}${PATCHLEVEL} suffix, being a strictly increasing
number that is not expected to go over 300 which is the start of the
sequence for the other slot.
* using a new package name, duplicating ebuilds
> If you really think it's necessary to come up with a workaround like
> this, though, then you should be mailing the list and asking for QA or
> Council approval, rather than doing it and then asking for forgiveness
> later.
As far as I remember the subject was discussed (at least) once on this
mailing list before the problem even occurred for gtk2/gtk3 handling and
everyone was ok with it.
Shall we add that subject to next council meeting or do we just wait for
QA's opinion here ?
--
Gilles Dartiguelongue <eva@gentoo.org>
Gentoo
06-23-2012, 01:39 PM
Gilles Dartiguelongue
gtk3 useflag and support of older toolkits
Forgot to mention that, at least for webkit, this is really a case for
slots usage as this is the same software, built for another toolkit.
This applies to a couple other ebuilds in this gtk2/gtk3 discussion, but
admittedly not all of them.
We have at least three cases that Alexandre summed up:
* packages shipping gtk based libs only
* packages shipping gtk based libs and other libs (gtk-vnc for example)
* packages shipping gtk based libs and gtk or non-gtk utilities
Some packages most likely should be split, like avahi, but it is not
always in the interest of everyone as it makes things much harder to
maintain.
--
Gilles Dartiguelongue <eva@gentoo.org>
Gentoo
06-23-2012, 01:40 PM
Ciaran McCreesh
gtk3 useflag and support of older toolkits
On Sat, 23 Jun 2012 15:33:47 +0200
Gilles Dartiguelongue <eva@gentoo.org> wrote:
> Well the problem is simple, we need to ship webkit with gtk2 and gtk3
> support. This is needed because gentoo has gtk2 based desktop/apps and
> because we want to ship gnome3 for example.
>
> Cool thing is that webkit supports being built with each toolkit
> without conflicting with the build from the other toolkit hence we
> ended up using SLOTS.
You could just have gtk2 and gtk3 use flags in the ebuild, use
REQUIRED_USE to ensure that at least one is enabled, and build things
twice in the ebuild if necessary.
Yes, your ebuild will probably be fairly ugly. This won't be visible to
users, though.
Users will have to rebuild a version unnecessarily if they want to go
from having just gtk2 to gtk2 and gtk3 (or so on). That should be rare
enough, compared to frequency of bumps etc, that it's not a severe
enough problem to warrant a hack until a nice alternative is available.
> Shall we add that subject to next council meeting or do we just wait
> for QA's opinion here ?
I'd like to know why using USE flags until a nicer solution is available
is sufficiently terrible that it warrants a hackaround.
--
Ciaran McCreesh
06-23-2012, 02:45 PM
Gilles Dartiguelongue
gtk3 useflag and support of older toolkits
Le samedi 23 juin 2012 à 14:40 +0100, Ciaran McCreesh a écrit :
>
> I'd like to know why using USE flags until a nicer solution is
> available
> is sufficiently terrible that it warrants a hackaround.
remember qt3/qt4, gtk/gtk2. We want to avoid repeating these "mistakes"
hence the guidelines already exposed back when we introduced gtk3 to the
tree.
As you may have noticed, this is still the solution applied for things
hard to split or slot like gtk-vnc or avahi but we didn't see the need
to have such USE flags when the library was so easily slottable.
--
Gilles Dartiguelongue <eva@gentoo.org>
Gentoo
06-23-2012, 03:59 PM
Michał Górny
gtk3 useflag and support of older toolkits
On Sun, 10 Jun 2012 21:19:19 +0100
Ciaran McCreesh <ciaran.mccreesh@googlemail.com> wrote:
> On Sat, 09 Jun 2012 23:54:21 -0400
> Alexandre Rostovtsev <tetromino@gentoo.org> wrote:
> > For libraries, if possible, try splitting gtk2 and gtk3 support into
> > different slots (see net-libs/webkit-gtk for an example; the
> > gtk2-based versions have -r2xx revision numbers and go in slot 2,
> > while the gtk3-based versions have -r3xx revision numbers and go in
> > slot 3).
>
> That is not what revisions are for. If you can't solve a problem
> properly using existing mechanisms, ask for new ones.
Indeed. But reusing revisions is probably saner than abusing
the version number to achieve the same goal.
--
Best regards,
Michał Górny
06-23-2012, 04:09 PM
Ciaran McCreesh
gtk3 useflag and support of older toolkits
On Sat, 23 Jun 2012 16:45:09 +0200
Gilles Dartiguelongue <eva@gentoo.org> wrote:
> Le samedi 23 juin 2012 à 14:40 +0100, Ciaran McCreesh a écrit :
> > I'd like to know why using USE flags until a nicer solution is
> > available
> > is sufficiently terrible that it warrants a hackaround.
>
> remember qt3/qt4, gtk/gtk2. We want to avoid repeating these
> "mistakes" hence the guidelines already exposed back when we
> introduced gtk3 to the tree.
We didn't have REQUIRED_USE or use dependencies back then. We do now.
> As you may have noticed, this is still the solution applied for things
> hard to split or slot like gtk-vnc or avahi but we didn't see the need
> to have such USE flags when the library was so easily slottable.
Again, REQUIRED_USE.
--
Ciaran McCreesh
06-23-2012, 06:26 PM
Michał Górny
gtk3 useflag and support of older toolkits
On Sat, 23 Jun 2012 14:40:50 +0100
Ciaran McCreesh <ciaran.mccreesh@googlemail.com> wrote:
> On Sat, 23 Jun 2012 15:33:47 +0200
> Gilles Dartiguelongue <eva@gentoo.org> wrote:
> > Well the problem is simple, we need to ship webkit with gtk2 and
> > gtk3 support. This is needed because gentoo has gtk2 based
> > desktop/apps and because we want to ship gnome3 for example.
> >
> > Cool thing is that webkit supports being built with each toolkit
> > without conflicting with the build from the other toolkit hence we
> > ended up using SLOTS.
>
> You could just have gtk2 and gtk3 use flags in the ebuild, use
> REQUIRED_USE to ensure that at least one is enabled, and build things
> twice in the ebuild if necessary.
Ah, so because a few paludis users may be building an additional
variant of webkit-gtk unnecessarily, we should force all Gentoo users
to randomly rebuild 1-2 variants depending on how soon they're going to
get the USE correctly.
--
Best regards,
Michał Górny
06-23-2012, 06:29 PM
Ciaran McCreesh
gtk3 useflag and support of older toolkits
On Sat, 23 Jun 2012 20:26:01 +0200
Michał Górny <mgorny@gentoo.org> wrote:
> > You could just have gtk2 and gtk3 use flags in the ebuild, use
> > REQUIRED_USE to ensure that at least one is enabled, and build
> > things twice in the ebuild if necessary.
>
> Ah, so because a few paludis users may be building an additional
> variant of webkit-gtk unnecessarily, we should force all Gentoo users
> to randomly rebuild 1-2 variants depending on how soon they're going
> to get the USE correctly.
No. Because the ebuilds would be abusing functionality in a fairly
horrible way, we should avoid doing that until we have a good solution
in place.
Or, looking at it another way, Portage's upgrade rules shouldn't be
locked in place because of weird behaviour from a few packages.
--
Ciaran McCreesh
06-23-2012, 06:31 PM
hasufell
gtk3 useflag and support of older toolkits
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 06/11/2012 07:08 PM, Ciaran McCreesh wrote:
> No, your goal is to provide a distribution. Gentoo has repeatedly
> shot itself in the foot, leg, groin etc by favouring short-term
> hacks over a well thought out, validated, self-enforcing design.
> Right now nearly all of the package manager work is on paying off
> previously incurred technical debt, and in the mean time you're
> busy adding to it.
>
Please take your exherbo trolling somewhere else.
Our goal is not to provide a distribution, because gentoo sees itself
as a metadistribution.
Please familiarize yourself with:
http://www.gentoo.org/main/en/about.xml
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
On Sat, Jun 23, 2012 at 1:31 PM, hasufell <hasufell@gentoo.org> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 06/11/2012 07:08 PM, Ciaran McCreesh wrote:
>> No, your goal is to provide a distribution. Gentoo has repeatedly
>> shot itself in the foot, leg, groin etc by favouring short-term
>> hacks over a well thought out, validated, self-enforcing design.
>> Right now nearly all of the package manager work is on paying off
>> previously incurred technical debt, and in the mean time you're
>> busy adding to it.
>>
>
> Please take your exherbo trolling somewhere else.
>
> Our goal is not to provide a distribution, because gentoo sees itself
> as a metadistribution.
>
> Please familiarize yourself with:
> http://www.gentoo.org/main/en/about.xml
Let's keep the discussions on this mailing list technical and not personal.