9 main Open Source license agreements [collation]

Source: Internet
Author: User

About Open Source Licensing

There are many open source agreements that exist today, and there are currently more than 60 types of open source Initiative approved by the Organization (http://www.opensource.org/licenses/alphabetical )。 Our common open source agreements such as BSD, GPL, lgpl,mit, etc. are all OSI-approved protocols.


Basic concepts

1.Contributors and Recipients

Contributors (contributor)-refers to a person or entity that provides code (including initial or modified) to an open source software or project (withdrawal, company, organization, etc.).

According to the order of contributions can be divided into "founder" (an initial contributor) and "participants" (subsequent Contributors).

Recipients -refers to users of open source software or projects.

Obviously, subsequent contributors also belongs to the recipients.

2.Source Code and Object code

Source code -refers to sources written in various languages.

Object Code--refers to the generation of a "class library", which is generated by source codes, and provides a variety of object-like objects (such as DLLs, Jars, etc.) that can be used by others.

3.Derivative module and separate module

derivative module (derivative module) – refers to the code generated by or containing "original" or "Open Source" code, which is an enhancement, improvement, and continuation of the "Source code module".

separate module (standalone module) -refers to the use of "source code" developed by the Independent, does not contain, do not rely on the original "Source code module" function module.

The main and widely used licenses on the OSI website are:

*apache License, 2.0 (Apache-2.0)
*bsd 3-clause "New" or "revised" license (Bsd-3-clause)
*bsd 3-clause "simplified" or "FreeBSD" license (bsd-2-clause)
*GNU general public License (GPL)
*gnu Library or "Lesser" general public License (LGPL)
*mit License (MIT)
*mozilla Public License 1.1 (MPL-1.1)
*common Development and Distribution License (CDDL-1.0)
*eclipse public License (EPL-1.0)

Note: The original common public License 1.0 has been replaced by the Eclipse Public License (EPL-1.0).

Apache License, 2.0 (Apache-2.0)

Apache Lience allows users to modify and republish code (in the form of other protocols), allowing closed source commercial release and sales.

Apache Lience encourages code sharing and respecting the copyright of the original author.


Using the Apache licence protocol, the following rules apply:

1. Need to give code to the user a copy of Apache Lience;

2. If you modify the code, you need to specify in the modified file;

3. The extension of the code (modified or derived code) requires the original code of the Agreement, trademarks, patent statements and other original author's provisions need to include the instructions.

4. If the notice file is included in the rereleased product, you will need to have Apache Lience in the notice file. You can add your own permission to the notice, but you may not be able to make changes to Apache Lience.

* Apache Licence is a friendly license for commercial applications. Users can also modify the code as needed to meet their needs and publish/sell as open source or commercial products.

BSD Open source Agreement (Berkerley Software Distribution) ( BSD 3-clause, BSD 2-clause )

Currently divided into BSD 3-clause and BSD 2-clause. As the name implies, 3-clause contains 3 terms, 2-clause only two.


BSD allows the user to modify and republish the code (in the form of other protocols), allowing closed source commercial release and sales.


BSD encourages code sharing while respecting the copyright of the author of the Code.


The following rules apply to the BSD protocol (2-clause without 3rd):

1. If the re-release of the product contains the source code, in the source code must have the original code in the BSD protocol;

2. If the redistribution is only a binary class library/software, you need to include the BSD protocol in the original code in the documentation of the class library/software and the copyright notice;

3. Do not use the open source code "author/organization Name" or "Original product name" to do marketing.

Important: Commercial software can be used, or code that uses the BSD protocol can be modified.

GPL ( GNU general public License)

The starting point of the GPL is the code of open source/free use and citation/modification/derivative code of Open source/free use, but does not allow the modification and derivative of the code to be released and marketed as closed source commercial software.

The GPL is "contagious" and as long as it is used in a software ("Use" refers to a class library reference, modified code or derivative code) of the GPL-licensed product, the SOFTWARE product must also be under the GPL, both open source and free.

GPL restrictions on commercial release (from the Java Line of Sight Forum Robbin):

"The GPL is copyright to the software source code, not to the software-compiled binary version. You have the right to obtain the source code for the software free of charge, but you do not have the right to obtain the software's binary release for free. The only limitation for GP to a software release is that your distribution must provide the full source code together. "

The following rules apply to the use of the GPL agreement:

1. Ensure that the software is published in open source form from start to finish, protecting development results from theft for commercial sale. Any set of software, provided that the source of the third-party software protected by the GPL is used and published to non-developers, the software itself automatically becomes a GPL-protected and constrained entity. In other words, it must open the source code at this time.

2, the GPL is generally a left-hand copyright (Copyleft, or translated as "anti-copyright", "copyright belongs to the left", "copyright is not", "version of the responsibility", etc.) embodiment. You can get rid of all the original copyright information, as long as you keep open source, and with the source code, binary plate with the GPL license, so that posterity can be very clear about this software licensing information. The essence of the GPL is that, as long as the software in the case of full open source, as far as possible to allow users to free play space, so that the software to achieve faster and better development.

3, regardless of the form of software release, you must also attach the source code. For example, to provide a download on the Web, you must download the same page in the binary version (if any), providing a clear link to the source code download. If you publish as a disc, you must also attach a CD-ROM of the source file.

4. Companies or individuals who develop or maintain software developed under the GPL may charge a service fee for the user. But it is an old saying-the full source code of the software must be provided free of charge, and the source code should not be bundled with the service or bundled in any disguised form.

Because the GPL requires software products that use the GPL class library to use the GPL, commercial software is not suitable for open source code that uses the GPL protocol.

Important: Commercial software cannot use the GPL protocol code.

LGPL ( GNU Library or "Lesser" general public License)

Unlike the GPL's mandatory open source, LGPL allows commercial software to use the LGPL class library in a class library reference (link) without the need for code for open source commercial software.

However, if you modify the code or derivation of the LGPL protocol, all the modified code, the additional code involved in the modification, and the derived code must adopt the LGPL protocol. The open source code of the LGPL protocol is therefore well suited to be referenced by commercial software as a third-party class library, but it is not intended to be used as a commercial software that is developed two times through modification and derivation, based on LGPL protocol code.


Important: Commercial software can be used, but the code of the LGPL protocol cannot be modified.


mit ( mit license)

[MIT license is derived from MIT (Massachusetts Institute of Technology, MIT), also known as "x terms" (X License) or "x11 terms" (X11 License)]

MIT is the same wide license agreement as BSD, and the author only wants to retain the copyright, without any other restrictions. That is, you must include a statement of the original license agreement in your distribution, whether you publish it in binary or source code.

Important: Commercial software can be used, you can modify the code of the MIT Protocol, and even the Code of the MIT protocol can be sold.


MPL ( Mozilla Public License 1.1)
The MPL agreement allows for free re-posting, free modification, but requires that the modified code be copyrighted to the originator of the software . This authorization maintains the interests of commercial software, and it requires the free contribution of copyright to the software based on the modification of such software. In this way, the copyright of all the code around the software is concentrated in the hands of the initiating developer. But MPL is allowed to be modified, free to use. The MPL software does not require links.
Important: Commercial software can be used, or the code of the MPL protocol can be modified, but the modified code is copyrighted to the originator of the software.



CDDL (Common development and distribution License)
CDDL (Common development and distribution License, general development and sales license) Open source Agreement, is an extension of the MPL (Mozilla public License), which allows the use of copyright, royalty-free, and provide patent protection, can be integrated in commercial software, allow self-publishing license.
Important: Commercial software can be used, or you can modify the code of the CDDL protocol.



Common Public License 1.0 (CPL-1.0) (deprecated)

Cpl is an open source agreement made by IBM, primarily for IBM or IBM-related open source software/projects (for example, Eclipse, open Laszlo, etc.).

EPL (Eclipse Public License 1.0)

EPL allows the recipients to use, reproduce, distribute, transmit, display, modify, and two commercial releases of the closed source at any time.


With the EPL protocol, the following rules apply:

1. When a contributors will publish the whole or part of the source code again, it must continue to follow the EPL open source agreement to publish, but not to use other protocols. Unless you have the original "source" Owner's authorization;
2. Under the EPL agreement, you can publish the source code without making any changes. But if you want to post the modified source code, or when you re-publish the object code, you have to declare that its source code is available, and to inform the acquisition method;
3. When you need to mix the source code under EPL with other proprietary sources as a project release, you can publish the entire project/product as a private agreement, but declare which part of the code is EPL, and declare that the code continues to follow EPL ;
4. Independent modules (separate module), no need for open source.


Important: Commercial software can be used, you can also modify the code of the EPL protocol, but to bear the code generated tort liability.


----------------------------------------------------------------------

Resources:

Common Open Source Protocol detailed parsing -CnBeta

Comparison of five open source Protocols (Bsd,apache,gpl,lgpl,mit) – Finishing

A brief introduction to common open source protocols


9 main Open Source license agreements [collation]

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.