On Thu, Sep 22, 2005 at 01:30:00PM -0400, Chris Gianelloni wrote:
> On Thu, 2005-09-22 at 11:46 -0500, Brian Harring wrote:
> > Actually, it does have to deal with glep23, and you already stated in 
> > one of you emails (an "interim solution *now* since I've not heard 
> > anything from GLEP23 for some time").
> 
> This is an interim solution only in that it flags a package as
> commercial until there is some kind of group created to fill that role.
> Personally, I don't think a group *should* be created for commercial
> licenses, as they are *not* equal in any way and should be judged
> individually, rather than as a group.  In that case, this would be a
> permanent solution.

Yet what you're proposing *is* a marker on packages as "this is 
commercial", in effect a license grouping that's not properly 
implemented.

> > Further, where do you think you're going to migrate the check for this 
> > license to?
> 
> We wouldn't check for *this* license.  We would be checking for the
> *real* license.
> 
> So rather than using "check_license" in pkg_setup, we would be using
> "check_license Q3AEULA".  As for where it will eventually migrate (ala
> GLEP23), I don't know, and honestly, it isn't my concern.

It's actually your concern whether you realize it or not.

Your idea of just ignoring "commercial" if it appears in 
license.split() means that ACCEPT_LICENSE implementation now gets 
screwed with, and has to start maintaining a whitelist of 
strings to exempt from checks.

Why is this an issue?  LICENSE field isn't a "one of the licenses 
listed", it's "all of the licenses listed following depset syntax 
rules".  Same syntax as DEPEND.  In other words, you can't stick a 
daft marker into the LICENSE field just the same as you can't stick 
daft atom's into DEPENDS; portage *must* resolve it.  If the LICENSE 
depset doesn't match the users ACCEPT_LICENSE, then the package is 
masked.  What you're proposing directly breaks glep23 (re-read the 
EBUILD License Variable section).

(Heading it off), no, a || ( DOOM3 commercial ) won't work either, 
that's _either_ commercial license accepted, or doom3.


> > FYI, accept_license checks have been sitting in svn/cvs for about a 
> > month, same as use deps.  No, you can't use them now in a released 
> > portage, but that's not much of a reason to introduce a fake license
> > I'm sitting.  Further, a better approach instead of people adhocing 
> > yet another band aid in the tree would be to chip in- you want glep23?
> 
> Yes, I want GLEP23, but as I have said, I think this *could* be a
> permanent solution, if used properly.

Nope, see above.

It's the same old issue of "we want portage to do xyz", then something 
ugly/bad gets implemented that is a kludge getting in the way of a proper
solution.

That's harsh, but it's also the truth from being on the receiving end 
of portage bugs/watching the tree.  It's easier to slap a (imo) crap 
solution into the tree then to do the proper route of trying to 
implement a proper solution.


> > help bring the *proper*, agreed upon solution to a stable portage, not 
> > taking the easier route.
> 
> OK.  I'm going to ask a question of you.  If you do an "emerge -S doom3"
> on your system, how would you know that the DOOM3 license is a
> commercial license?  How would you know the difference between "doom3"
> and "doom3-demo", which happen to have the *exact* same license?  How
> would you know that "doom3" requires a purchase?  How would GLEP23
> resolve this?
> 
> Now, if you can give me a solution other than the one that I have
> provided, then I'll gladly accept it.  As it stands, I only see one way
> to provide this information to our users, and that is to add it
> *somehow* into the ebuilds.  This means either via LICENSE or some new
> variable.  The advantage to using LICENSE is that it works *now* on all
> versions of portage.  It also works *now* on packages.gentoo.org's
> pages.

Logic here is rather flawed.

How do you know that the GPL is a 'opensource' license?  How do you 
know that the sorcerer public license is anti-forking?
You get off your ass and look in the licenses directory, that's how.

What you're proposing doesn't in any way help with educating people on 
what the licenses are that they're accepting; sticking "commercial" 
into the license field is a bad hack, pure and simple.

I'll kill this one off further down...


> > The original proposed angle (glep23 implementation isn't here) is 
> > jumping the gun, and the angle of "it indicates it costs money" isn't 
> > proper either.
> > 
> > You want to indicate that this *specific* pkg costs money 
> > (something not related to the license it's released under I might 
> > add)?   Stick it in metadata.xml or DESCRIPTION.
> 
> Description is the worst place for it, IMO.  I'd have no problem
> sticking it in metadata.xml, either, but tell me how users are to get
> that information?  As it stands now, the only data in metadata.xml that
> is used for *anything* is the herd/maintainer information, and that
> information isn't available from portage, but only from external
> 3rd-party applications and jeeves.


>=2.1 portage supports querying from metadata.xml.  Stable portage 
doesn't do a lot of things (like reading metadata.xml), but there's 
no reason later versions can't add in the missing 
functionality/feature.


> > So... my 2 cents?  No (was obvious already, wasn't it? :)
> 
> Great.  Give me another way to let the user know that the package
> requires a purchase or obtaining a license that we cannot provide them.


Gave you another way, and I also clarifed why this isn't just a bad 
idea, you _cannot_ do this.

You view description as the wrong place for this; well, I view it as 
the proper place.  License in no way relates to if the binaries/source 
must be purchased or not.

It's a description thing.  "ID's DOOM3 game, non shareware version" 
fex.  Further, you're stating that "commercial" shouldn't be used as 
any form of grouping, but that _is_ what you're attempting- 


> If you do an "emerge -S doom3" on your system, how would you know that 
> the DOOM3 license is a commercial license?  

You read the license, silly, rather then blindly accepting licenses.  
The difference between doom3 and doom3-demo *should* be reflected in 
the DESCRIPTION also, since it's... the pkgs description data ;)

The fields exist for what you're after; I don't know why you're after 
the abuse of the LICENSE field, but it won't fly without a heck of a 
lot more kicking/screaming from me, and a reversal/ammendment of 
glep23.

Alternatives/better approaches I'd be open to, although I'll admit up 
front I think what you're attempting needs to be pkg specific, which 
implies DESCRIPTION in the ebuild (to me at least).
~harring

Attachment: pgpnStEofRgWI.pgp
Description: PGP signature

Reply via email to