Various open source protocols introduce BSD, Apache Licence, GPL V2, GPL V3, LGPL, MIT

Source: Internet
Author: User

There are many open source agreements that exist today, and there are currently 58 (http://www.opensource.org/licenses/alphabetical) Open Source Initiative approved by the Open source organization. Our common open source agreements such as BSD, GPL, lgpl,mit, etc. are all OSI-approved protocols. If you want to open up your own code, it's best to choose these approved open source protocols.

Here we look at four of the most common open source protocols and their scope for developers/manufacturers who are ready to open source or use open source products.

BSD Open source Protocol (original BSD license, FreeBSD license, original BSD license)

The BSD Open source agreement is an agreement that gives users a great deal of freedom. Basically users can "do whatever", can use freely, modify the source code, you can also use the modified code as open source or proprietary software re-release.

But the premise of "doing what you want" when you publish code that uses the BSD protocol, or two times to develop your own product based on the BSD protocol code, you need to meet three conditions :

1. If the redistribution of the product contains source code, it must be in the source code with the BSD protocol in the original code.
2. If the redistribution is only a binary class library/software, you will need to include the BSD protocol in the original code in the class library/software documentation and copyright notice.
3. The author/organization name of the open source code and the name of the original product may not be marketed.

BSD code encourages code sharing, but requires respect for the copyright of the author of the Code. BSD is a friendly agreement for business integration because it allows the user to modify and republish the code, and also allows the use or development of commercial software to be published and marketed on BSD code. And a lot of companies in the selection of open source products are preferred BSD protocol, because they can completely control these third-party code, when necessary can be modified or two times development.

Apache Licence 2.0 (Apache License, version 2.0, Apache License, version 1.1, Apache License, version 1.0)

Apache licence is the protocol used by the famous non-profit open source organization Apache. The agreement is similar to BSD, encouraging code sharing and respecting the authorship of the original author, as well as allowing the code to be modified and republished (as open source or commercial software). The conditions that need to be met are similar to BSD:

1. Need to give code to the user a copy of Apache Licence
2. If you have modified the code, you need to change the file to be described.
3. In the extended code (modified and in the code derived from the source code) need to have the original code of the Agreement, trademarks, patent statements and other original written instructions need to be included.
4. If the rereleased product contains a notice file, the Apache Licence is required in the notice file. You can add your own permission to the notice, but you may not be able to make changes to Apache licence.

Apache licence is also 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.

GPL (GNU general public License)

We are familiar with the use of Linux is the GPL. Licenses that encourage code reuse, such as the GPL and BSD, Apache licence, are very different. 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. That's why we can use a variety of free Linux, including free software developed by individuals, organizations, and commercial software companies on Linux and Linux in commercial companies.

The main content of the GPL agreement is that the SOFTWARE product must also be licensed under the GPL, both open source and free, as long as it is used in a software ("Use" refers to a class library reference, modified code or derivative code) of the GPL-based product. This is known as "contagious". GPL products are used as a standalone product without any problems and can also enjoy the benefits of free.

Since the GPL is strictly required for software products that use the GPL class library, it is not appropriate for an open source code that uses the GPL agreement to use a business software or a department that has confidentiality requirements for the code to integrate/adopt as the basis for a class library and two development.

Other details, such as Bsd/apache, need to be accompanied by the GPL and other similar issues.

About open source agreements GPL V2 and V3

From the open-source industry's GPL, it seems that everything on the open source Linux product can be unconditionally open and shared, but from the actual operation, under the GPL's relative licensing, there is a relatively closed side, on this GPL v2 to the GPL v3 revision, It is the specific embodiment of the "closed" side of the GPL agreement.

According to the relevant provisions of the GPL V2: As long as the modified text is in whole or part of it from the procedure of following the GPL, the whole of the modified text must circulate in accordance with the GPL, not only the source code of the modified text must be disclosed to the society, but also the circulation of such modified text does not allow the additional modification of the restrictions. In the revised version of the GPL, V3 not only required the user to publish the revised source code, but also required the publication of the relevant hardware, precisely this article, because of touches and other related digital Rights Management (DRM) and its products, and also because of the open source spirit of the place, so controversial, and even so have been a " The Torvalds of the father of Linux, "said the opposition.

On the face of it, the V2 of the GPL to the GPL v3 is merely a disagreement over a provision in the revision process, and, more seriously, whether the owner of a specific open source or open source product has the option to follow the GPL v2 agreement or to abide by the GPL V3 agreement if both agreements are lawful. So the conflict is coming, as Zheng, CTO of the Chinese Red Flag, describes: "The world has so much software under the V2 of the GPL, and free software is a collection of programmers all over the world, even if it is to contribute a line of code, if the programmer only agrees that this code only follows the GPL v2, You can't just go and modify the protocol. If you plan to transfer software under the GPL v3, it is theoretically necessary to obtain the consent of all code holders. But it's hard to determine how many developers are willing to move to the new version, and if someone is willing to turn around, there's a lot of trouble, and if most people don't want to change, then that might be a silent thing ... "

Through the industry's incisive description, I believe that we must be open source industry and open source software products have a new understanding of it, on that familiar Linux system, although it appears that everyone has the right to follow their own needs and purposes of arbitrary rewriting and reorganization, but in front of many independent programs, others can only share the use of , without the right to modify, of course, authorization is another matter. In terms of the GPL v2 to the GPL v3, the disagreement over the choice of the agreement is actually a perception of the idea in the open source industry, and whose choice is right? Definitely not one or two words can be said clearly, especially in the various interests intertwined.

Situation, the open source community's GPL v2 and the GPL v3 choice is realistic will give the industry and its products for a considerable period of time "compatibility problem", white is two kinds of agreements and two agreements under the contradiction, whether it is human or product will continue to continue, This stalemate is not necessarily a good thing for the entire open source industry, at least in terms of "spirit" the industry is already beginning to separate.

LGPL (GNU Lesser general public License)

LGPL is a GPL-open source protocol designed primarily for use in class libraries. And the GPL requires that any software that uses/modifies/derives from the GPL library must be different from the GPL agreement. LGPL allows commercial software to use the LGPL class library through the Class Library Reference (link) without the need for code for open source commercial software. This allows open source code with the LGPL protocol to be referenced and published and sold as a class library by 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.

GPL/LGPL protects the original author's intellectual property and avoids the use of open source code to replicate and develop similar products

MIT (MIT)

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.

Various open source protocols introduce BSD, Apache Licence, GPL V2, GPL V3, LGPL, MIT

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.