directory

BSD Open Source License (Original BSD License, FreeBSD License, original BSD License)

Apache License 2.0 (Apache License, Version 2.0, Apache License, Version 1.1, Apache License, Version 1.0)

GPL (GNU General Public License)

LGPL (GNU Lesser General Public License)

MIT (MIT)

Major rights and obligations of the agreement.


 


BSD Open Source Protocol (original BSD license,FreeBSD license, Original BSD license)

The BSD open source protocol is a protocol that gives users a lot of freedom. Basically, users can “do whatever they want”, modify the source code, and redistribute the modified code as open source or proprietary software.

When you publish code that uses BSD, or re-develop your product based on BSD code, three conditions must be met:

  1. If the source code is included in the redistributed product, it must be included with the BSD protocol from the original code.
  2. If only the binary class library/software is distributed again, the BSD protocol in the original code needs to be included in the documentation and copyright notice of the class library/software.
  3. Do not use the open source author/organization name and the name of the original product for marketing.

BSD code encourages code sharing, but the author’s copyright is respected. BSD is a business-integration-friendly protocol because it allows consumers to modify and redistribute code, as well as to use or develop commercial software distribution and sales on BSD code. Many companies prefer BSD when choosing open source products because they have complete control over third-party code, which can be modified or redeveloped if necessary.

The Apache Licence (2.0The Apache License, Version 2.0,The Apache License, Version 1.1,The Apache License, Version 1.0)

Apache Licence is a protocol adopted by Apache, a well-known non-profit open source organization. This protocol is similar to BSD in that it encourages code sharing and respect for the copyright of the original author, and also allows code to be modified and redistributed (as open source or commercial software). The conditions to be met are similar to those for BSD:

  1. You need to give the user of your code an Apache Licence
  2. If you modify the code, you need to explain it in the modified file.
  3. In extended code (modified and derived from source code) it is necessary to carry the agreements, trademarks, patent claims, and other instructions specified by the original author in the original code.
  4. If the product to be released contains a Notice file, the Apache Licence must be included in the Notice file. You may add your own license to the Notice, but this should not be construed as a change to the Apache Licence.

Apache Licence is also a business-friendly license. Users can also modify the code as needed and distribute/sell it as an open source or commercial product.

The GPL (GNU General Public License)

Linux, with which we are familiar, uses the GPL. The GPL is very different from the BSD, Apache Licence and other licenses that encourage code reuse. The GPL’s intent is to make code open source/free to use and reference/modify/derive code open source/free to use, but does not permit the distribution and sale of modified and derived code as closed source commercial software. That’s why Linux is available for free, including Linux for commercial companies and a wide variety of free software on Linux developed by individuals, organizations, and commercial software companies.

The main content of the GPL is that whenever a product under the GPL is used in a piece of software (” use “means a library reference, modified code, or derived code), that product must also be under the GPL, and must be open source and free. This is called “contagion”. Gpl-licensed products have no problems being used as a separate product and enjoy the advantage of being free.

Because the GPL strictly requires software products using the GPL class library to use the GPL, commercial software or departments that have confidentiality requirements for code using the GPL open source code are not suitable for integration/adoption as a basis for class libraries and secondary development.

Other details such as GPL will be required for re-distribution, similar to BSD/Apache.

LGPL (GNU Lesser General Public License)

LGPL is an open source protocol of the GPL designed primarily for use by class libraries. Unlike the GPL’s requirement that any software that uses/modifies/derivatives of the GPL class libraries be licensed under the GPL. LGPL allows commercial software to use LGPL libraries through library references without the need for open source commercial software code. This allows open source code under the LGPL protocol to be referenced, distributed and sold by commercial software as a class library.

However, if you modify LGPL code or derivative code, all modified code, additional code involving modified parts, and derivative code must adopt the LGPL. Therefore, LGPL open source code is suitable for commercial software to reference as a third-party library, but not for commercial software that wants to use LGPL code as a basis for secondary development through modification and derivation.

The GPL/LGPL protects the intellectual property rights of the original authors, preventing anyone from using open source code to copy and develop similar products

MIT (MIT)

MIT is as broad a license as BSD, and the authors only want to retain the copyright without any other restrictions. That is, you must include a declaration of the original license in your distribution, whether you distribute it in binary or in source.

The original


The article is reprinted from open Source Chinese community [http://www.oschina.net]

How to Choose the right Open Source License for your Open Source project?

This paper addresses: www.oschina.net/news/74999/…

Today, I saw another student published a post entitled “What to Do if an open source App is copied to iOS App Store?” When this post was forwarded to the technical group, it triggered a big discussion. Most students expressed their support, while some serious students discussed MIT License. What is a License and what is MIT License?

A License is a copyright License that specifies what rights you have when you acquire the code, what you can and cannot do with someone else’s work. Software can be licensed in many ways, but this article is limited to the Open Source License.

There are probably hundreds of Open Source licenses in the world. The MIT License mentioned above is just one of them. The commonly used Open Source software licenses are GPL, BSD, MIT, Mozilla, Apache, and LGPL. We don’t have to know every open source agreement, but we can know a few

Major rights and obligations of the agreement.

If you still don’t know what to do, Ukrainian programmer Paul Bagwell drew an analysis chart to explain how to choose. The following picture shows the Chinese version of Ruan Yifeng.

 

Come to a clearer and more complete picture, currently only in English, I hope it can be translated into Chinese.

Hope the above summary can help to some students better for their open source projects, choose a suitable open source licenses when infringement of own open source projects are not in a passive position, also hope can help to more “legitimate” the application of open source projects, a lot of open source licenses minimum requirement is that users need to retain the original author’s statement, the code I don’t think you’ve missed it.

Open source does not mean free, and open source does not mean free.