desura / Desurium

Free online games platform (juegos gratis), with an open source client. LGPL repo for Desura client. Potentially out of date. See https://github.com/desura/desura-app for newest (LGPL) client.
https://www.desura.com/es
GNU General Public License v3.0
268 stars 44 forks source link

Contribution Agreement Discussion #638

Open oz-linden opened 10 years ago

oz-linden commented 10 years ago

A couple of weeks ago, I posted a Desura news item on the direction we at Desura and Linden Lab would like to take with the Desurium project. In addition to adding development resources and infrastructure support, we'd like to change the distribution license for the project from GPLv3 to the LGPL (version 2.1), which we use now for the Second Life Viewer. This will allow Desurium components to be easily integrated into games, whether open source or not, to provide Desura-based features and services.

In order to make that change, and to clarify the status of both past and future contributions, we would like to introduce a new agreement to be executed by all contributors (Desura has always had a contribution agreement, but not everyone signed it).

We have a draft of that agreement; this issue will serve as a forum for comments and questions about that draft.

I think this agreement is an improvement on both the previous Desura and Second Life contribution agreements (our ambition is to arrive at one agreement for all our open source projects). It already incorporates changes from those earlier agreements inspired by discussions we've had with contributors. It protects the intellectual property rights of the contributors, while empowering the project to go forward and enabling Linden Lab to enforce the terms of the project license. It ensures that the project will remain firmly open source.

A couple of points of clarification I can make preemptively: the agreement refers to "the license(s) which Linden Lab is using for the Work as of the date of this CLA (as reflected below)".

There are, alas, a couple of caveats that I have to include in this call for discussion:

  1. I will try to clarify where I can, but lawyer-ese is what it is (and that is not always the same as conversational English); the agreement (as it says) is the entire agreement, so what I or any other Linden Lab employee posts here is not a part of the agreement.
  2. I am not a lawyer, and most specifically I am not your lawyer; if you want a legal opinion of what the agreement means to you, you should pay a lawyer to get one.

That having been said, I think that all of us have the best interests of the project at heart, and want to see it get better and continue as open source.

makson96 commented 10 years ago

Hi @oz-linden! It is great to see Linden Lab involvement in Desurium project. I agree to relicense all of my contributions to LGPLv2.1.

I do have some questions regarding CLA:

  1. Does packaging software into Linux distribution repositories require packager to sign CLA? I must say, that if this is the case, then there is no chance to include it into standard Linux repositories.
  2. Does it mean that communication using this GitHub page will be restricted only to those who signed CLA?

(b) “Contribution” shall mean any source code, object code, patch, tool, sample, graphic, specification, manual, documentation, email, comment, posting, communication, original work of authorship, communication or any other material, including any modifications or additions to an existing work, that is or has been intentionally submitted by You to Desura or Linden Lab for inclusion in, or documentation of, the applicable open source projects (as reflected above) owned or managed by Linden Lab, including products formerly owned by Desura (collectively, the “Work”).

oz-linden commented 10 years ago

makson96:

  1. Packaging the project for inclusion in something else can be done under the LGPL; the CLA does not affect that in any way.
  2. We would not want to restrict anyones ability to communicate via GitHub or any of our systems to those who have a CLA (we don't do that now on our other systems). That's one of the best ways to identify potential contributors. It's part of my job to seek those people out and get a CLA from them so that the project can use what they post.
Jookia commented 10 years ago

I can see this being used for future open source projects as a template, so some of these won't be applicable to other projects. Which can be causing some confusion when adding Desurium specific.

Some people are having problems with the English in it, as they're not native speakers, so that may be a problem in this discussion.

Here're my first impressions (I am not a lawyer, I am a person that just woke up at 4AM with a legal document in his mail):

Is "open source" a legal term? Section 1b: What's a 'sample'? Section 1c: How can verbal agreements be designated as not a contribution? Section 2 is 'grant of copyright license', but the section is about copyright assignment Section 2d is a bit ambiguous and has caused a bit of concern with what it means. I interpreted it originally as a 'We can do what we want with the contributions, but at the same time, we'll license it under the LGPL'. However, looking at it now, it seems to say 'We can do what we want with the contributions as long as we're also licensing it under the LGPL somewhere else'. Section 3 worries me as it seems to scoop up patents that aren't applicable to submitted contributions, which is worrying. Section 2a and section 4 don't include Linden Lab asserting against the contributors. Section 6 might be worrying if we use code created by other people, yet licensed for use. It does state we must note patents, so maybe that could be used to help fix section 3. Also, trademarks weren't mentioned before, so is Linden Lab protected from them? Section 7 doesn't specify how I may notify you, if that matters in the legal sense.

The formatting is nice, I'm not sure how well it'd work on embossed paper. Although, there is inconsistent use of bold and underlines which is a bit worrying. Also, how will we change the license to the LGPL before everyone signs it?

Cheeseness commented 10 years ago

I haven't had time to thoroughly read the draft, but some initial thoughts:

As OzLinden recommends, a legal interpretation of the agreement can be difficult to gain without the assistance of a lawyer. There are organisations such as the Software Freedom Law Center , which provide free legal advice when Free Software projects are concerned.

Edit: Fixed some typos - My third point originally said "are interested" instead of "aren't interested"

oz-linden commented 10 years ago

I'm not going to try to respond point by point to everything here yet... party because I'd like more people to have a chance to read and think about the text as it is, and partly because some of these things I should probably take back to our Legal people before I respond - those I will batch up and try to do them together rather than bugging them as posts appear.

Since this isn't a threaded forum, it might help if people numbered any comments to which they expect a response.

And one other request... let's avoid assertions that a particular action should be taken. Probably none of us are lawyers, so it's not certain that we know what should or should not be done. The lawyers don't tell us how to write code - let's not tell them how to write contracts. By all means, express your doubts, questions, points of discomfort - I'll do my best to get responses to them, some of which may be changes to the text, but let's let the professionals actually suggest how to solve the problems.

ssokolow commented 10 years ago

I share the concerns raised by @Cheeseness on the topic of whether the CLA is justified and the lack of clarity as to how "made" the decision is.

oz-linden commented 10 years ago

Some CLA is certainly needed. This isn't just us - most well run large open source projects use some kind of CLA. Here's a good article on the subject: http://oss-watch.ac.uk/resources/cla

karolherbst commented 10 years ago

Here is my list of problems I see with this CLA:

  1. It does not guarantee the current intentions of the contributor, because it allows linden to do what they ever want with the contributions. For example: you said, that linden wants to keep desurium open source. This means you could add this to the CLA, so that linden is not allowed to include the contribution to a non open source or a copyleft free form. This won't harm the intentions of linden nor the ones from the contributor.
  2. What would be also nice is maybe having a veto for specific actions. I could image, that if 50% of all contributors not employed with linden are against something it won't happen. It could be also 75% or even 100% if you want, but having something like that would be a good thing if copyleft and open source is not guaranteed.
  3. I don't like the idea of including comments and discussions here, too. It would be enough if a contributor allows to use all the non-source stuff under a specific license, let's say CC BY-SA 3.0.
oz-linden commented 10 years ago

karolherbst:

With respect to your number 3: I agree, and think that things would be clearer if we could limit the scope a bit more; I missed this and the "verbal" contributions part that Jookia pointed out. I'll suggest that we narrow these in the next draft. In our Second Life project tree we have some components that are explicitly under CC licenses (artwork and avatar data useful to people making accessories for use in Second Life). I don't think that the current draft language creates a problem for such content, but I'll review that with the Legal folks.

As for what the license guarantees, in 2(d) it says that "Linden Lab agrees to license your Contribution, in perpetuity, under the terms of the license(s) which Linden Lab is using for the Work as of the date of this CLA", by which we mean initially the LGPL. So it does ensure that the project remains free and open source because that's a requirement of the LGPL. I got this added specifically in response to our discussions in IRC (and was pleasantly surprised that I got no resistance at all to doing so).

I strongly suspect that I would get a lot of resistance to removing our ability to include the code in other kinds of licenses; in fact, personally I don't think it would be a good idea. There are a few reasons for this: We might, for example, want for good and useful reasons to move where some feature is implemented from the client to the server, which isn't open source. It also might be considered weakening or conflicting with the copyright license, which would create a point of conflict should we ever need that to take some action to protect the source.

As for a veto, I'm absolutely sure that is not going to happen - I would oppose it myself if only because the logistics are impossible. Even just trying to contact the small number of contributors we've had over just a couple of years is a big burden. Avoiding that is a major reason why open source projects of all kinds use CLAs in the first place. It's quite possible that there are some contributors we will be unable to reach or get agreements from, and we may need to remove the work they did in order to move forward. It's unfortunate that Desura didn't get agreements from all the contributors, and we're trying our best to remedy that by putting together one that most of you are comfortable with, but we're not going to put ourselves in the position of needing to go through this again in the future when there are more contributors and the contact information has gotten even older and less useful.

karolherbst commented 10 years ago

okay, I think I will be fine until the next draft will come up

Jookia commented 10 years ago

I strongly suspect that I would get a lot of resistance to removing our ability to include the code in other kinds of licenses; in fact, personally I don't think it would be a good idea. There are a few reasons for this: We might, for example, want for good and useful reasons to move where some feature is implemented from the client to the server, which isn't open source. It also might be considered weakening or conflicting with the copyright license, which would create a point of conflict should we ever need that to take some action to protect the source.

I have mixed feelings on this, but I can't quite pinpoint them yet. I'll think about this further later.

Cheeseness commented 10 years ago

@oz-linden (in reply to the 5th comment) If you take the time to read my post, I didn't make assertions about how exactly things should be fixed, only that I feel they need to be. Since you've asked for opinions, I've given my opinion of things that I think require attention. Everybody should feel comfortable stating what their needs are so far as get this to a point where they would feel comfortable agreeing to it goes (regardless of how specific those needs might be).

I've been involved in contract writing before. You don't need to be a lawyer to write one (although it can certainly help in terms of making them legally robust). Being a lawyer also doesn't mean you can necessarily write a good one. Let's not pretend that anybody is infallible here, hey?

On the note of CLAs, there are plenty of resources which talk about why they're bad. Sharing resources on why they might be worthwhile doesn't answer @ssokolow's and my own questions about whether that decision has been made or not.

Feedback on why previous suggestions regarding permissible licences had been unsuccessful would help very much in giving the people posting some understanding of how their comments here are going to be dealt with, and I'd like to ask again if that can be brought to light. Edit: It appears feedback on this was given whilst I was writing.

Edit:

As for a veto, I'm absolutely sure that is not going to happen - I would oppose it myself if only because the logistics are impossible. Even just trying to contact the small number of contributors we've had over just a couple of years is a big burden.

The agreement could explicitly state how the kinds of actions that @karolherbst is referring to would be announced, and require that anybody wanting to veto a decision would have to do so within a given time period, freeing less committed contributors from the need to be involved and Linden Lab from getting stuck in a position where uncontactable contributors held things up.

oz-linden commented 10 years ago

I did not mean to single out Cheesness or anyone else, or indeed be critical of the comments so far - I was just making a suggestion for how to do things in a way that I thought would be most productive. Apologies if I came across otherwise (text communication is perilous that way).

As for whether or not a decision has been made that we need a CLA, let me be as clear as I possibly can be: There absolutely will be a CLA for any project that Linden Lab is engaged in. It will be one derived from the draft we have. I expect that there will be some changes based on the comments we've gotten here (and on the Second Life contributors open source development mailing list), as there have already been changes based on discussions we had before we did this draft. We believe that a CLA is important to the proper running of any open source projec. We want to get the contribution terms and licensing for the project clear and behind us and go back to building great software with you.

With respect to the veto question - I did not actually understand that karolherbst was referring to any particular actions, but it doesn't really matter. We are a business, and need to have the flexibility to make the decisions that our business requires. While I will certainly point out that this suggestion has been made (along with the rest of both discussion threads), I won't support it and I very much doubt it would make any difference if I did. The draft includes the assurance that Linden Lab will keep the contributions licensed as open source, and that was added because people here asked for it (and the subject has come up in the past with respect to the existing Second Life CA).

Since the rate of new input seems to have fallen off, I'll collect what we've gotten so far and see what the lawyers make of it. If anyone has more to add, by all means do so, but sooner would be better than later - as I said, we'd like to get back to focusing on software.

Cheeseness commented 10 years ago

The draft includes the assurance that Linden Lab will keep the contributions licensed as open source, and that was added because people here asked for it

The provision in 2.d doesn't really mean much in that regard. You can't "unlicence" code that's been made available under the GPL or LGPL, so having contributions always available under that is already given, CA or no.

What @Jookia had suggested was that the CA should limit what licences Linden Lab should be allowed to release community provided contributions under, and in that way, ensure the preservation of intent of community contributors (eg: there are people who don't want their code ever released under a proprietary, closed licence).

I am one of these people. Unless it's work I've done under employment or contract, I will not allow my code to be used for any kind of "non-Free" purposes. Thankfully in this case, I haven't made any contributions that are still present, and I consider my work on the graphical assets to be CC0 and/or superficial changes to existing Desura artwork, so there are no real hurdles there. That said, excluding people like myself from being involved will probably hurt the project.

makson96 commented 10 years ago

@Cheeseness The way I understand Linden Lab policy is they want to make relationship between official Desura client and Desurium similar to Google Chrome and Chromium. If I understand it correctly, than yes, our work in open source Desurium will be included in closed source Desura.

oz-linden commented 10 years ago

makson96 - our intent is that we'll build the official client directly and completely from the open source repo. That will mean putting a few files into the repo (logos and such) that will be listed as exceptions to the open source license, but that's easily done. I would also suggest that we similarly put in exceptions to clarify that the Desurium and other application artwork be made available under a Creative Commons Attribution-Share Alike 3.0 License. This is what we do with the Second Life trademarks and viewer artwork now.

ssokolow commented 10 years ago

@makson96 Chrome's a little different. Chromium is BSD-licensed while Linden wants to switch to to LGPL.

makson96 commented 10 years ago

OK. That's sound good. I am waiting for second draft. I hope that:

  1. Communication will be excluded from CLA (why on earth Linden Labs want to have rights to contributors emails content?).
  2. There will be guarantee that Desurium will stay open source.
  3. There will be some guarantee that active contributors will have at least some influence on project direction (I know this restrict Linden Labs, but is encouraging for third party developers to actively contribute).
karolherbst commented 10 years ago

@makson96 I will try to clarify some stuff for you

to 1. linden wants to use stuff a contributer wrote as comments or something else on desurium content. It doesn't allow linden all rights about the email contents, but the emails sent to either linden, desirum@github or any other publich place for discussion about desurium. Maybe they want to fill the wiki with comments you wrote.

to 2. you can't revoke the GPL, nor the LGPL. that means, that if something is open it will stay forever open. Though linden have the right to make future changes non GPL. In addition to that, linden is allowed to use contributions in closed source form, but the original contribution will stay (L)GPL.

to 3. I hope there will be something like that, but I doubt it.

oz-linden commented 10 years ago

I'm not sure what form a guarantee of "at least some influence on project direction" could take that would actually mean anything.

I know that it would be great if this were code and we could spell out all the rules in a way that a machine could parse and execute so that there would be no ambiguity at all. Unfortunately, that's not really where we are; this is to some extent a matter of us all accepting that we have a mutual interest in this being a successful project and trusting each other to do the Right Thing.

Linden Lab wants the open source to be successful both as a product and as an open source project, which emphatically includes the community being able to advocate for ways to improve it and implement those improvements. Since none of us can know exactly what that means beyond a pretty short time horizon, our hope is that we can do what we've already begun: unify the closed and open efforts into the open source project and then go forward with that as our common effort.

ssokolow commented 10 years ago

I suppose, given what's been said so far, my main concerns lie in two areas:

First, using code under a license other than the LGPL. What situations do you foresee in which the LGPL terms wouldn't be enough? I believe sharing code with the server codebase was mentioned but this isn't the AGPL.

(And, if that really is your concern, why not use the MPL 2.0 from the start, so you've got something explicitly LGPL 2.1 compatible but where the copyleft requirement is file-by-file rather than library-by-library, further reducing the need to be able to bypass the stated license terms?)

Second, while not specifically about the CLA, the license change does bring the future potential for winding up in "This game links against services (other than DRM) provided by Desura but not Desurium" or "This game is DRMed but we didn't make that clear before you bought it." situations back to my attention.

oz-linden commented 10 years ago

Jookia... you wrote:

Section 2a and section 4 don't include Linden Lab asserting against the contributors.

I don't understand that comment... could you expand on it, please?

Jookia commented 10 years ago

I'm concerned about Linden Lab being able to use my contributions under non-LGPL licenses still. I'm glad that you agree to always release them under the LGPL also, but I want them ONLY under the LGPL.

You still haven't replied about the patents clause.

As for section 2a and section 4, I'm suppose to agree to never assert my rights against Linden Labs. Why is it not vice versa?

oz-linden commented 10 years ago

I get the concern regarding the exclusivity of the open source license. I don't know what the resolution of that issue will be...

Those other two points are things that I've asked for help responding to from the lawyers (along with lots of other stuff from above).

Jookia commented 10 years ago

I think the resolution is simple: You do what most other open source projects do, and specify an outbound license with no strings attached, like most projects do. People are here to write open source code, not write Linden Lab code.

ssokolow commented 10 years ago

I ran across an interesting blog post in that vein once. I can't remember what it was called but it basically made a point that a project's licence was intuitively seen as its constitution and that a CLA which allows one party to bypass that licence drives away contributors because, on an intuitive level, it screams "this project embodies a double standard where you're on the losing end".

Or, to use a very current metaphor, it's like saying "everyone in America has to obey the U.S. constitution except the NSA and friends".

Cheeseness commented 10 years ago

People are here to write open source code, not write Linden Lab code.

Once again, @Jookia sums things up with an elegantly succinct and to the point statement.

@oz-linden What you have to understand is that Desurium has been more or less operating independently from Desura for some time now. The community has been running a particular style of project, and that's not something that can be given up lightly. What you're asking us to do is hand the project back to you guys at the cost of the self governance, clarity of licence (there may have been some ambiguity regarding whether dual licencing was originally intended, but since that wasn't actually executed when the project was started, no contributions were accepted under that and it's not so relevant), and control of our own code.

This is a huge ask, and one where (IMO) the attitudes and needs of those currently contributing to and running the project should be given greater weight than they seem to be.

I'm not sure what form a guarantee of "at least some influence on project direction" could take that would actually mean anything.

Isn't this why you're here? To accurately convey these desires to your contract writers so that they can come up with appropriate terminology to cover them? Via IRC, you described your role in this as a kind of "interface" between the development community and Linden Lab's legal team. Every time that I've seen a "that's not legal terminology" or "that's too ambiguous" type comment without follow up questions to help better express those concerns, it's confused me greatly and almost comes across as being dismissive (certainly something worth avoiding).

"this project embodies a double standard where you're on the losing end"

This is very true.

To pre-empt any responses, Second Life contribution activity is not relevant here (and if it were, it appears that there are misgivings at play over there as well). That is a) a project which wasn't previously a F/OSS project having licence changes and CAs imposed upon it, b) a project with entirely different focus/direction/objectives, and c) ultimately a biased example as it's something already controlled by Linden Lab.

Ignoring any problems I may have with CLAs in general, I'm not certain that having a shared agreement between these two projects is in anybody's best interests.

If I understand it correctly, than yes, our work in open source Desurium will be included in closed source Desura.

@makson96 I'm fully aware that that's what's being proposed. I'm saying that that's not something I'll be able to agree to.

dto commented 10 years ago

With regard to interfacing with non-FOSS games, I could understand LL's motivation to switch from GPL to LGPL. But if these discussions are any indication, the open-ended "LGPL2 plus whatever we decide later" option is simply dead in the water. Reading just the plain-english preamble to the GPL should make this clear.

LGPL3 contains tailored language regarding patents---reverting to LGPL2, which lacks such language, and substituting the overbroad patent clause of this CLA, strikes me as unusual. (In particular, the clause seems not to be limited in scope to the Contribution.)

Again, why explicitly switch GPL versions if LL can do whatever it wants later? The GPL would seem to be superfluous in that case.

Also, saying we'll just have to "trust one another" on certain parts, is really not a good sign. Not to put too fine a point on this, but: I certainly don't want to hear that phrase if/when I pitch another game to Desura.

My suggestion to the desurium community is to hire an attorney to represent your interests in the code, and put him/her in touch with Linden Labs. I think that is more likely to result in the signatures that LL is seeking.

dto commented 10 years ago

In a nutshell, I think LL could specify what it is about the current Desurium license that is incompatible with what LL wants to do, choose a recognized open source license that actually is compatible with what LL wants to do, and then use a custom CLA to move the code to that license. Open source projects have worked in tandem with commercial efforts for years now, and there are various licenses and dual-licensing models to look at. I suspect the answer is to be found in examining those models and talking about what will actually fit the present constellation of code and contributors.

karolherbst commented 10 years ago

Is there any update @oz-linden ?

oz-linden commented 10 years ago

I have not heard back from Legal yet. If I don't here in the next day or two, I'll poke them again.

On Wed, Oct 16, 2013 at 8:37 AM, Karol Herbst notifications@github.comwrote:

Is there any update @oz-linden https://github.com/oz-linden ?

— Reply to this email directly or view it on GitHubhttps://github.com/desura/Desurium/issues/638#issuecomment-26413890 .

karolherbst commented 10 years ago

okay, thanks

oz-linden commented 10 years ago

Just a quick update ... I got responses to the collection of comments back from the lawyers, along with a revised draft. I'm at the end of my day, and don't want to rush looking it over before I post something here, but expect something from me early tomorrow (including the new draft unless I think they blew it in some way, in which case I'll go another round with them first)

Cheeseness commented 10 years ago

Good to hear. Looking forward to reading over it.

oz-linden commented 10 years ago

Sorry... still waiting for resolution of one more issue. It's like programming... there's just one bug left...

Cheeseness commented 10 years ago

Sorry... still waiting for resolution of one more issue. It's like programming... there's just one bug left...

In the interests of efficiency, could you use some of the intervening time to relay responses to any items raised which weren't taken onboard?

oz-linden commented 10 years ago

Here's my summary of the issues that have been raised for which I have responses done. In many cases, the response is copied more or less directly from what our Legal people said.

Is "open source" a legal term?

No, but we are comfortable with using the term as is, since any ambiguity is mitigated by the association with the project(s) in the agreement.

What is a "sample"?

"Sample" means any a piece of a larger work. This came from the Second Life CLA, and is useful there especially in the context of Second Life in-world objects and examples. It may or may not be as relevant in other contexts, but since we'd like to have a single agreement we've left it in.

How can "verbal" and "communications" be designated as "not a contribution", and doesn't including them introduce ambiguity?

Agreed. We've removed those.

Section 2 is "grant of copyright license" but the secion is about copyright assignment; is there a difference?

The section headings are for reference purposes; it's the text of the paragraphs that matters.

While 2(a) assigns the copyrights, 2(b) grants a license to the extent that any rights are not assignable.

2.d does not go as far as some community members would like in restricting the contributions to use in open source

2(d) is intended to serve the dual purposes of allowing us to maintain flexibility over our projects and ensuring that the submitted contributions themselves will be licensed under the LGPLv2.1. I.e., 2(d) states that we are able to use the contributions in a larger work. The larger work as a whole may be licensed under any type of license we choose, as long as we include an LGPL v2.1 license in connection with the contributions portion of the larger work.

I'll post a separate note expanding on my thoughts on this.

Section 3 seems to apply to patents that are not related to the contributions

This language is from the Second Life CLA, and does not apply to any patent not related to the project and the contribution.

Sections 2a and 4 do not restrict Linden Lab from asserting IP rights against the contributors.

It is unnecessary to state that Linden would not assert rights against them. CLAs protect the use of contributions by parties who receive submissions. As the creators, they are automatically deemed the copyright holders.

Section 2(a) specifies joint ownership. Section 4 protects Linden to the extent that any rights are not transferable. In such instances, the contributor would retain any such rights. Thus, it is unnecessary to state that Linden cannot assert rights against contributors.

Section 6 might be worrying if a contribution includes code created by other people, yet licensed for use.

We do not allow for contribution of anything not created by the contributor. The Desura CLA did allow for this under some conditions; the ommission here is deliberate. All contributions must the the original work of the contributor.

Section 7 doesn't specify how I may notify you, if that matters in the legal sense

We don't think that a specific mechanism is needed here. There are a number of well publicised means of contacting us, including those in the instructions at the top of the agreement and the "legal@lindenlab.com" and other email addresses on our web site.

Section 7 seems to be referring to section 6, but doesn't explicitly state so.

Section 7 is a reference to any and all representations, including the facts set forth in the Contact Information section. It is not referring only to Section 6.


The one I'm still working through with the lawyers is:

how will we change the license to the LGPL before everyone signs it?

stay tuned...

oz-linden commented 10 years ago

The section headings are for reference purposes; it's the text of the paragraphs that matters. While 2(a) assigns the copyrights, 2(b) grants a license to the extent that any rights are not assignable.

I don't agree with assigning copyrights when a license would do but even then it'd be nice if you updated the headings.

2(d) is intended to serve the dual purposes of allowing us to maintain flexibility over our projects and ensuring >that the submitted contributions themselves will be licensed under the LGPLv2.1. I.e., 2(d) states that we are >able to use the contributions in a larger work. The larger work as a whole may be licensed under any type of >license we choose, as long as we include an LGPL v2.1 license in connection with the contributions portion of >the larger work.

So, like the the Mozilla Public License? Either way, I don't see how the wording agrees with that.

This language is from the Second Life CLA, and does not apply to any patent not related to the project and the contribution.

I disagree. The CLA writes this:

Grant of Patent License. You hereby grant to Linden Lab and to recipients of software distributed by Linden Lab a perpetual, worldwide, non-exclusive, no- charge, royalty-free, irrevocable (except as stated in this section) license under any patents owned by or licensable by You at any time without payment to third parties, to make, have made, use, offer to sell, sell, import, and otherwise transfer Your Contribution, in whole or in part, alone or in combination with or included in the Work, and to sublicense the foregoing rights to third parties through multiple tiers of sublicensees or other licensing mechanisms at Linden Lab’s option.

In the CLA I originally signed for Desura, the wording was this:

Grant of Patent License. Subject to the terms and conditions of this Agreement, You hereby grant to Desura and to recipients of software distributed by Desura a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by You that are necessarily infringed by Your Contribution(s) alone or by combination of Your Contribution(s) with the Work to which such Contribution(s) was submitted. If any entity institutes patent litigation against You or any other entity (including a cross-claim or counterclaim in a lawsuit) alleging that your Contribution, or the Work to which you have contributed, constitutes direct or contributory patent infringement, then any patent licenses granted to that entity under this Agreement for that Contribution or Work shall terminate as of the date such litigation is filed.

If you could explain the differences that'd be great.

Section 2(a) specifies joint ownership. Section 4 protects Linden to the extent that any rights are not >transferable. In such instances, the contributor would retain any such rights. Thus, it is unnecessary to state >that Linden cannot assert rights against contributors.

Can Linden assert rights against contributors?

We do not allow for contribution of anything not created by the contributor. The Desura CLA did allow for this >under some conditions; the ommission here is deliberate. All contributions must the the original work of the >contributor.

That's impossible considering the giant 'third_party' directory we have.

As for your long winded opinion, okay, sure. But that's not what the community here signed up for.

Jookia commented 10 years ago

(Wow I managed to hit ALL the buttons on GitHub today.)

ssokolow commented 10 years ago

@oz-linden

I think a big part of it is that people tend to be comfortable in their understandings of what licenses like the GPL, the LGPL, and so on entail and used to the idea that, from what they've seen (observer bias included), CLAs are strange, alien things which are sometimes used to enable shady behaviour.

Plus, it's legalese. For a lot of people, just getting comfortable in trusting their understanding of the ilcenses was work enough.

Hence, regardless of the intentions, when a CLA is mentioned, their gut reaction is to imagine something along the lines of this Darth Vader image macro.

I Have Altered The Deal. Pray I Don't Alter It Any Further

Cheeseness commented 10 years ago

Edit: This quote is a copy of a message by @oz-linden from two posts previously which was accidentally deleted by @Jookia whilst removing a double post. My responses are below.

Separately from the issues above, I'd like to respond to some of the comments here regarding whether or not the CLA should allow Linden Lab to reuse contributions under other licenses while maintaining the availability of those contributions under the LGPL as the draft specifies. What follows is mostly my personal reflections on the relationship between open source and contributions to it in a commercial context. The existing Second Life CLA has this same structure; it allows us to license contributions in other ways, as did the Desura CLA. What we've done here (specifically at the request of this community) is add the assurance that we will maintain the availability of those components under the project open source license. Incidentally, part of the flexibility we want is specifically to be able to improve the open source license if needed over time, and by improve I mean to ensure the continued availability of that work. Personally, I find the attitude that it is somehow a bad thing for someone to be able to reuse the code in other contexts puzzling and counter to the notion of real openness. I know that there is a faction of the open source community that feels that all code must be open and that licenses should be written to force that to happen - the GPL in its various versions most strongly embodies that perspective. I've never thought that was needed - things that should be open eventually will be because open solutions, in some realms at least, out-compete closed ones (witness Apache, Perl, Python, Ruby, etc). I don't see that it follows that open development benefits when it tries to use the tools of closed source licensing in reverse. Code isn't a zero-sum game. If Linden Lab finds a use for something in a closed source context that was originally contributed as open source, that doesn't take anything away from the contributor. I hope that you all can see that in order to sustain a business, Linden Lab needs to keep some things closed. The Second Life simulator and other virtual world support functions, and the Desura hosting and backend services, are core assets of the company that require large infrastructures to run. The only way to have those infrastructures is to make money to support them. If we made that code available to everyone, we wouldn't have a viable business and the world wouldn't have the services they provide. Both the Second Life Viewer and the Desura/Desurium client are essential elements of those value propositions, but they are not the whole story. They benefit significantly from being open because being open allows users to directly offer improvements, but both are the client components of a larger ecosystem; if you contribute to Desurium the open source project, you are contributing to Desura the company whether the code you write is used in the open source client or in the closed source service that client accesses. Granting us the freedom to migrate functionality in ways that serves that ecosystem doesn't take anything away from the contribution. Framing the discussion in terms of winners and losers seems to me to miss the point. Desura's (or Linden Lab's) gain is not open source's loss.

@oz-linden Thanks for the first post responding to comments. I hope that the opinions expressed in the second post do not colour the way in which you represent the interests of the community because it is clear that they/we do not share your outlook.

As Jookia says, that's not what the community signed up for.

The more I read, the more I think that maybe the best direction would be to leave Desurium alone, LGPL the Desura client and retro-merge any contributions from those willing to agree to the CLA. That would allow you to get the control you'd like without making fundamental changes to an existing Free Software project.

Jookia commented 10 years ago

@oz-linden So I accidentally posted twice and hit delete, so I might've deleted your post by accident. Sorry!

oz-linden commented 10 years ago

Cheeseness quoted all of it, so it's at least still there.

oz-linden commented 10 years ago

@ssokolow ... I know that legalese isn't a comfortable dialect, but sometimes it's needed.

I'll do my best not to take the graphic personally.

oz-linden commented 10 years ago

@Cheeseness ... I've provided everyone involved with links to this thread, so I'm not in any way filtering what's being said by anyone.

ssokolow commented 10 years ago

@oz-linden Thanks. It wasn't intended to be personal, just a characterization of why a CLA is so daunting. Let me try to offer a more diplomatic version:

Even if they don't know the term, the average developer has already built up some intuition about how a given license fares with regards to the "Tentacles of Evil test" in the Debian Free Software Guidelines FAQ (In essence, "what if Darth Vader bought or was promoted into power at Linden tomorrow and tried to undermine the freedoms of the project.") but a CLA tosses in a big new bag of worries.

...or, to put it another way, this is the contributor-side version of "Always use a well-established license. Companies are wary of using code under some untested, custom license that their legal team hasn't seen before."

The initial reaction is something along the lines of "If a CLA is necessary, why doesn't every project use them. Why doesn't the FSF include one in the "How to Use" instructions for the GPL-family licenses? If it's not necessary to make the license work, then why not just pick a license that actually does what you want rather than trying to set up some shady double standard?"

oz-linden commented 10 years ago

Not everyone (including me) thinks that the FSF is the best model of how to really make software open. Everyone is entitled to their opinion.

A great many projects do use a contribution agreement of some kind. I suspect that most if not all that are associated with a commercial entity do, for the simple reason that there are greater risks. The Apache Foundation (which does use a CA, by the way) doesn't need to worry too much about a patent troll coming after them because there's essentially nothing for them to gain - the foundation doesn't have enough money to make the attempt worthwhile. As a profitable business, we don't have that sort of free protection - we're a better target, and so must manage risk differently.

Jookia commented 10 years ago

I don't think contributors are going to attack Desurium.

oz-linden commented 10 years ago

Ok ... here's the link to the final draft:

http://lecs.opensource.secondlife.com/Contribution+Agreement.pdf

Changes from the 4th draft are:

  1. Removed references to 'verbal' and 'communication' from things that can be considered contributions.
  2. Added a clause making it clear that we can relicense under LGPLv2.1 (in order to solve the chicken-and-egg problem of what order the agreement and the relicense can happen in)
  3. Removed "License" from the title; replaced "Contributor License Agreement" with "Contributor Agreement" and corresponding references and abbreviations throughout.

I'll be sending copies to contributors individually, or you can of course download from the link above.

I hope that contributors will consider this carefully and decide to execute the agreement; we value what you've done, and very much hope that we can continue to work with you as a part of the project.

It would be a real shame if we were to have to back up and start over without what you've contributed. I think it would be better for everyone if we could continue from where we are now. Linden Lab is committed to making Desura better, and the open source project is a big part of that, but it won't be without you.

oz-linden commented 10 years ago

If anyone has current contact info for @r-ick or @lugonu please either let them know about this thread or ask them to contact me at oz@lindenlab.com