Open source contribution agreement template

We are looking for creating contribution agreements for few new open source projects. IANAL, but hiring a real lawyer is freaking expensive.

The thing is that we, us a company, want to guarantee that all code coming into the project is “clean”. We also want to guarantee our right to change the license in the future (GPL -> BSD, GPL -> Apache, etc.)

Thus far, the best free, as in freedom and in beer, contribution agreement template we have found is Sun Contribution Agreement 1.5 which is available under  Creative Commons Attribution-Share Alike 3.0 license. It is at least used by high profile Phonegap project (Nitobi as the company) if you don’t count OpenSolaris anymore as open source project.

IANAL, but if I understood correctly, the agreement basically says

  • the company can do whatever it wish with your contributions (joint ownership)
  • the company is entitled to release your contributions under open source license – perfect for GPL’ed projects. The exact wording is terms. Any contribution we make available under any license will also be made available under a suitable FSF (Free Software Foundation) or OSI (Open Source Initiative) approved license.

Since I couldn’t find the orignal document in editable form (PDF was the best I could get) I made OpenOffice.org ODS document out of it with easily replaceable identification information.

Comments welcome.

The agreement text pasted below.

YOURPROJECT Contributor Agreement

These terms apply to your contribution of materials to the YOURCOMPANY ("us"/"our"), and set out the intellectual property rights you grant to us in the contributed materials.  If this contribution is on behalf of a company, the term "you" will also mean the company you identify below. If you agree to be bound by these terms, fill in the information requested below and provide your signature. 

Read this agreement carefully before signing. 

1.  The term "contribution" means any source code, object code, patch, tool, sample, graphic, specification, manual, documentation, or any other material posted or submitted by you to the project. 

2.  With respect to any worldwide copyrights, or copyright applications and registrations, in your contribution: 

you assign to us joint ownership through this document, and to the extent that such assignment is or becomes invalid, ineffective or unenforceable, through this document you grant to us a perpetual, irrevocable, non-exclusive, worldwide, no-charge, royalty-free, unrestricted license to exercise all rights under those copyrights. This includes, at our option, the right to sublicense these same rights to third parties through multiple levels of sublicensees or other licensing arrangements;
you agree that each of us can do all things in relation to your contribution as if each of us were the sole owners, and if one of us makes a derivative work of your contribution, the one who makes the derivative work (or has it made) will be the sole owner of that derivative work;
you agree that you will not assert any moral rights in your contribution against us, our licensees or transferees;
you agree that we may register a copyright in your contribution and exercise all ownership rights associated with it; and
you agree that neither of us has any duty to consult with, obtain the consent of, pay, or give an accounting to the other for any use or distribution of your contribution. 

3.  With respect to any patents you own, or that you can license without payment to any third party, through this document you grant to us a perpetual, irrevocable, non-exclusive, worldwide, no-charge, royalty-free license to: 

make, have made, use, sell, offer to sell, import, and otherwise transfer your contribution in whole or in part, alone or in combination with or included in any product, work or materials arising out of the project to which your contribution was submitted, and
at our option, to sublicense these same rights to third parties through multiple levels of sublicensees or other licensing arrangements. 

4.  Except as set out above, you keep all right, title, and interest in your contribution.  The rights that you grant to us under these terms are effective on the date you first submitted a contribution to us, even if your submission took place before the date you sign these terms. Any contribution we make available under any license will also be made available under a Free Culture (as defined by http://freedomdefined.org)  or Free Software/Open Source licence (as defined and approved by the Free Software Foundation or the Open Source Initiative).

5.  With respect to your contribution, you represent that it is an original work and that you can legally grant the rights set out in these terms; 

it does not to the best of your knowledge violate any third party's copyrights, trademarks, patents, or other intellectual property rights; and
you are authorized to sign this contract on behalf of your company (if identified below). 

6.  The place of performance is the registered seat of

	YOURCOMPANYNAME
	YOURCOMPANYADDRESS1
	YOURCOMPANYADDRESS2
	YOURCOUNTRY
	YOURCOMPANYBUSINESSID	

Any disputes concerning this agreement including the issue of its valid conclusion and its pre and past contractual effects are exclusively decided by the competent court in YOURHOMECITY, YOURCOUNTRY or, at our discretion, also by the competent court is whose district you may have your residence, your registered seat, an establishment or assets.

If available, please list your YOURPROJECT username(s) for the YOURPROJECT systems.

Username(s): __________________________________________________________________

_______________________________________________________________________________

Your contact information (Please print clearly) 

Your name: ____________________________________________________________________

Your company's name (if applicable): __________________________________________

Mailing address: ______________________________________________________________

Telephone, Fax and Email: _____________________________________________________

Your signature: _______________________________________________________________

Date: _________________________________________________________________________

To complete this agreement:
email a scanned copy of a signed agreement to
fax a signed copy to + .....; or
post a signed copy to:

	YOURCOPMANYNAME
	YOURCOMPANYADDRESS1
	YOURCOMPANYADDRESS2
	YOURCOUNTRY

This agreement is based on version 1.5 of the Sun Contributor Agreement, which
can be found at:

    http://www.sun.com/software/opensource/contributor_agreement.jsp

This document is licensed under a Creative Commons Attribution-Share Alike 3.0
Unported License http://creativecommons.org/licenses/by-sa/3.0

\"\" Subscribe to RSS feed Follow me on Twitter Follow me on Facebook Follow me Google+

9 thoughts on “Open source contribution agreement template

  1. “We also want to guarantee our right to change the license in the future” — You don’t have to “guarantee” any right. You can re-license *your* contributions however you want, but you cannot re-license a product with other people’s contributions… Unless you get rid of all their contributions, or ask each contributor to re-license their code.

    The only legal thing you can do is get a lawyer or reuse agreements from other projects.

  2. Gustavo: that’s the main point of copyright assignment, it lets companies change the licence without having to ask each contributor.

    On the flip side this makes many open-source contributors frown upon projects that require copyright assignment.

  3. As many other developers, I always refuse to sign any kind of agreement like this.
    I am contributing for free – and someone wants me to sign an agreement? Sorry but no.

    The large majority of Open Source software is released under GPL license – because developers are happy with this.

    Please do not engage in silly licenses and agreements – complexity leads to confusion and is only going to hurt the Open Source ecosystem on the long run.

  4. Hi Federico,

    There is slight difference doing framework level open source project professionally and doing open source projects as a hobby. During the ten years open source has become mainstream we have learnt that open source projects may run into legal problems in long run unless the contribution agreement is set in place

    – Plone: Contribution agreement needed

    – Joomla: Contribution agreement needed

    – Fedora: needed

    The list goes on…

    Here are more agreement examples: https://fossbazaar.org/content/open-source-contributor-agreements-some-examples

    And here is explained why contribution agreements are a good thing: https://fossbazaar.org/content/open-source-contributor-agreements-purpose-and-scope

    Also… no one asking for your for the contribution. Personally I have found contribution agreements barring my contribution for e.g. Zope project. What I wish to see that the contribution agreement would be more like on-line registration form where you give out your personal details in the case you must be reached out on the some day.

  5. So summa summary: Federico, I don’t believe that you don’t want to do a contribution agreement. I believe the process just to get it done is too time consuming. So the process must be fixed to make contribution agreements as easy as possible.

  6. Allow me to point out that I contribute to some Open Source projects professionally and to Debian in my spare time.
    I am happy to agree to the Debian Social Contract which protects the users by keeping the distribution free (besides, it’s is not a contribution agreement)

    However, it is always difficult to find *skilled* contributors.
    I would not ask them to sign a contract that could potentially allow a company to change their code license i.e. from GPL to BSD or to CDDL. It could potentially ease the path toward closing the open source project and moving the codebase to a closed source.

  7. Hi Federico,

    Closed sourcing should not be a thread, as the text says:

    Any contribution we make available under any license will also be made available under a Free Culture (as defined by http://freedomdefined.org) or Free Software/Open Source licence (as defined and approved by the Free Software Foundation or the Open Source Initiative).

    The point of changing the license is that you might want to upgrade to GPL2 -> GPL3 in the future or to solve conflicts like Apache vs. GPL2 license.

  8. Do I need a Contribution Agreement for my BSD licensed project, even if I don’t plan on changing the license?
    Does it protect me, or the contributors?
    Should I be wary of contributing to a project that does not provide a Contribution Agreement?

Leave a Reply

Your email address will not be published. Required fields are marked *