GPL for freedom escort
"Content Summary"
In the preamble to the GPL, it is clearly stated that "most software licenses are determined to deprive you of the freedom to share and modify software." Contrary to the GNU General Public License, the GPL seeks to ensure your freedom to share and modify free software. "Knowledge is borderless, people have the right to know what source code is used, people have the right to know whether the use of software violated their interests, people have the right to modify knowledge, have the right to receive knowledge, spread knowledge, rather than imprisoned not to show us."
For program developers, the GPL is really a very good authorization, because you can learn from each other's programming skills, and the program you write can also help to arrange the wrong.
There are many open source protocols available today, and there are currently 58 (http://www.opensource.org/licenses/alphabetical) of open source agreements approved by the Open Source Initiative organization. Our common open source protocols such as BSD, GPL, Lgpl,mit, and so on are all protocols approved by OSI. If you want to open source your own code, it is best to choose these approved open source agreements.
Here we look at four of the most common open source protocols and their scope of application 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 protocol is an agreement that gives users a lot of freedom. Basically, users can "do whatever they want", can use it freely, modify the source code, or release the modified code as open source or proprietary software.
But the premise of "doing whatever you like" When you publish code that uses the BSD protocol, or, with BSD protocol code as the basis for two development of their own products, you need to meet the three conditions: if the redistribution of the product contains source code, then in the source code must have the original code in the BSD protocol. If you are publishing only binary class libraries/software, you will need to include the BSD protocol in the original code in your class library/software documentation and copyright notices.
You can not use the source code of the author/organization name and the original product name to do the market promotion.
BSD code encourages code sharing, but it needs to respect the copyright of the author of the Code. BSD, which allows users to modify and redistribute code, also allows the use or development of commercial software publishing and sales on BSD code, and therefore is a friendly agreement for business integration. Many companies choose the BSD protocol when choosing open source products because they can completely control the code of these third parties and can be modified or developed two times when necessary.
Apache Licence 2.0 (Apache License, version 2.0, Apache License, version 1.1, Apache License, version 1.0)
Apache Licence is a well-known non-profit open source organization Apache adopted the Protocol. The agreement, like BSD, also encourages code sharing and respect for 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: you need to give the code to the user a copy of Apache Licence If you modify the code, you need to be modified in the file. In the extended code (in the code that is modified and derived from the source code), you need to include the instructions in the original code, the trademarks, the patent statements, and other original author requirements. If a notice file is included in the republished product, the Apache Licence is required in the notice file. You can add your own permission to the notice, but you cannot represent changes to the Apache licence.
The Apache licence is also a commercial application friendly license. Users can also modify the code when needed to meet the needs and publish/sell as open source or commercial products.
GPL (GNU general public License)
Linux, which is familiar to us, uses the GPL. The GPL protocol and the BSD, Apache licence, and other licenses that encourage code reuse are very different. The GPL's starting point is open source/free use of code and reference/modification/derivation code for open source/free use, but does not allow modified and derived code to be published and marketed as closed source commercial software. That's why we have free software developed by individuals, organizations, and commercial software companies on a variety of free Linux, including commercial companies ' Linux and Linux.
The main content of the GPL agreement is to use a product in a software that uses the GPL ("use" refers to a class library reference, modified code or derivative code), then the SOFTWARE product must also adopt the GPL protocol, both open source and free. This is the so-called "contagious". The GPL-agreed product is used as a separate product without any problems and can also enjoy the advantage of free.
Because the GPL requires the use of GPL-class library software products must use the GPL protocol, for the use of GPL open source code, commercial software or the code has confidentiality requirements of the Department is not suitable for integration/adoption as a class library and two of the basis for development.
Other details, such as Bsd/apache, need to be accompanied by a GPL-like agreement.
about Open Source protocol GPL V2 and V3
In terms of the GPL agreement in the open source industry alone, it seems that everything on open source Linux products can be unconditionally open and shared, but from the actual operation, under the GPL relative license authority, 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 derived from the GPL-compliant procedure, the whole of the modified text must be circulated in accordance with the GPL, not only that the source code of the modified text must be made public to the society, but also that the circulation of such modified text does not permit the restriction of the And in the revised version of the GPL v3, not only does it require the user to publish the revised source code, but also requires the disclosure of the relevant hardware, precisely because of the touch and other relevant digital rights management (DRM) and its products, and also because of the spirit of the open source and the conflict, so much controversy, and therefore has been a " "The father of Linux," said Torvalds's objections.
On the surface, the V2 of the GPL to the GPL v3 is nothing more than a disagreement over a clause in the amendment process, and even more serious is the premise that both protocols exist legally, the owner of the specific Open-source software or open source product has the option to follow the GPL v2 agreement or the GPL V3 agreement, So the conflict is coming, the conflict, as the CTO of the Red Flag, Zheng, describes: "The world has so much software under the GPL v2, and free software is a collection of programmers working all over the world, even if the programmer only agrees that the code only follows the GPL v2, You can't just change the protocol. If you plan to transfer the software to the GPL v3, in theory, you must obtain the consent of all the code people. But it's hard to know how many developers are willing to move to a new version, and if some people are willing to turn around, there's a lot of trouble, and if most people don't want to change, it might be a quiet thing.
Through the industry's incisive description, I believe you must be open source industry and open source software products have a new understanding of it, on the familiar Linux system, although it appears that everyone has the right to follow their own needs and purposes of arbitrary rewriting reorganization, but in the face of many independent programs, others can only share the use of , without the right to modify, of course, the authorization is another matter. And in terms of the GPL-V2 to the GPL-V3 protocol escalation, the disagreement over the choice of the agreement is actually a perception of the open source industry, which is the right choice. Absolutely 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 very realistic will be to the industry and its products for a considerable period of time to create a "compatibility problem", plainly is the two kinds of agreements and the contradictions between the two agreements, both human and product will continue, This stalemate is not necessarily a good thing for the entire open-source industry, at least from the "spiritual" side, where the industry is beginning to diverge.
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 a GPL class library must be in a different GPL protocol. LGPL allows commercial software to use the LGPL class library through class library references (link) without the need for Open-source commercial software code. This allows open source code using the LGPL protocol to be referenced and published and sold by commercial software as a class library.
However, if you modify the code or derivation of the LGPL protocol, all modified code, additional code involving the modification, and derived code must adopt the LGPL protocol. Therefore, the open source code for the LGPL protocol is well suited as a Third-party class library to be referenced by commercial software, but it is not suitable for commercial software that is designed to be based on the LGPL protocol code and made two times in a modified and derivative manner.
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 as the BSD-wide license agreement, the author only wants to retain the copyright, without any other restrictions. In other words, you must include the original license agreement in your release, whether you are in binary or source code.