[packagekit] Free and non-free filter

Robin Norwood rnorwood at redhat.com
Wed Dec 5 10:49:03 PST 2007


"Tom \"spot\" Callaway" <tcallawa at redhat.com> writes:

> On Mon, 2007-12-03 at 21:49 +0000, Richard Hughes wrote:
>> On Mon, 2007-12-03 at 16:32 -0500, Robin Norwood wrote:
>> I don't see the need in a separate list - I really don't want to
>> maintain two lists. Do any of the other distros have such a list? The
>> fedora one seems to be the most comprehensive.
>
> I think that its a good starting point. At least Mandriva uses our list
> (and licensing policies) as is. I doubt Debian will, but their list is a
> fraction of what ours is, at this point.

Neat.  I just didn't want to potentially have problems from other
distros with this list being hosted/maintained by Fedora.  Hopefully we
can all get along.

>> > Also, at least in Fedora, dual-licensing syntax is allowed.  For
>> > instance, the License field for perl is:
>> > 
>> > (GPL+ or Artistic) and (GPLv2+ or Artistic)
>> > 
>> > I blame the lawyers.  Well, and Spot, but mostly the lawyers. :-)
>
> You are welcome to blame me, but the truth is that the packages are
> entirely to blame, we're only doing what we can to be correct.

I hope you know I was only kidding about the 'blame spot' bit - the
Fedora licensing stuff rocks so much mostly because of you. :-)

>> Well, which is the "worst" licence?
>
> Honestly, here's what I think you want to do. Break it down into its
> chunks, programatically. In perl's case, that would be:
>
> 1. GPL+ or Artistic
>
> AND
>
> 2. GPLv2+ or Artistic
>
> Then, parse each license in each item.
>
> 1. FREE or NON-FREE
>
> AND
>
> 2. FREE or NON-FREE
>
> Now, since we've got each with an or, we know we'd be able to choose the
> FREE license, and thus the package is FREE. If one of our items came up
> as "FREE and NON-FREE", then we'd know that it was a NON-FREE package,
> but honestly, we should almost have none of those by this point, a few
> Artistic only licensed bits, packages with unapproved licenses (about 15
> or so), etc.

Is the grammar set in stone anywhere?

Looks to me like:

FIELD := GROUP [ AND GROUP ]+
GROUP := LICENSE [ OR LICENSE ]+

iow, we'll never see: (GPL+ AND Artistic) or (GPLv2+ AND Artistic)

I'm not even sure what that would mean, exactly.

>> > Fwiw, I don't think the License field for Fedora packages is fully
>> > intended to be machine parsable, *but* it is pretty regular, so we can
>> > probably get 95% of the way there.
>> 
>> Sure. I would really like it to be machine readable. Tom, would it be
>> possible to formalize more the licence format?
>
> It's extremely formalized, and should already be machine readable.
> rpmlint is parsing it right now.

Neat, we can look at that code, since it (probably) handles any corner
cases for now.

By the way, should we send a note to the FSF folks about this?  Seems
like they'd be happy to know that PK is using their work to highlight
free-vs-nonfree packages...though they might prefer we only allow free
packages to be installed. :-)

They might also have some preferences or ideas about how we reference
them in the docs, etc.

-RN

-- 
Robin Norwood
Red Hat, Inc.

"The Sage does nothing, yet nothing remains undone."
-Lao Tzu, Te Tao Ching



More information about the PackageKit mailing list