Introduction to common open source software license agreements

Source: Internet
Author: User

What is a license agreement?
    1. What is a license, when you issue a license for your product, you are selling your rights, but you still have the copyright and the patent (if you apply), the purpose of the license is to provide certain privileges to the person who uses your product.
    2. Whether the product is free to distribute to the public, or sell, it is very useful to make a license agreement, otherwise, for the former, you are tantamount to giving up all your rights, no one is obligated to show your original authorship, for the latter, you will have to spend more than the development of energy to deal with the user's authorization problem.
    3. And the Open source licensing agreement makes these things simple, and it's easy for developers to contribute their code to a project, to protect the identity of your original author, to give you at least recognition, and open source licenses to prevent others from keeping a product for themselves.
Common open Source Agreement GPL (GNU general public License) common license Agreement

The GPL can be said to be the most widely used protocol in an open source project. The GPL has a thorough recognition and protection of the rights of developers who develop open source software. Essentially, it allows the user to legally copy, propagate, and modify the software. This means that you can:

    • random copy.

      Copy it to your own server, your client's server, your own computer, and basically any place you can think of. There is no limit to the number of copies you have. (Translator: The Chinese are used to piracy, it is estimated that this will be very dismissive.) )

    • spread freely.

      Do a download link on your website to download. Copy to your mobile hard drive to send someone. Print out the original code and stand on the roof (preferably don't do this, waste paper, and affect the environment clean).

    • Charge spread
      If you want to charge a fee by distributing this software, you can put it on your website and sell it, or you can do it in other ways. However , you must send a copy of the GNU GPL agreement with the software you sell to the buyer to let the buyer know that the software is available for free through other means. It is better to know this beforehand and why you should sell them.
    • Feel free to modify.
      If you want to add or subtract some features, do it. If you want to use some of its code in other projects, it's also allowed. Just one thing, this other project must also be licensed under the GPL.
    • Note the very important concept: the propagation of the source code and the propagation of the compiled code are two completely different things. As a result, some applications have license agreements that use different authorizations for two forms of code. To use the GPL, you must also add some information about the protocol in the Code and a copy of the license agreement.
GPL v2 License

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.

GPL v3 License

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.

GNU Lesser general public License Secondary Common license Agreement

LGPL retains less rights to the use of the work. In general, LGPL is suitable for some class libraries, which allow these libraries to be referenced by non-GPL or non-open source software. Because the GPL requires that you want to use the GPL-protected code, you must place your software under the GPL. Developers are not able to use programs under the GPL in commercial and proprietary software. And LGPL abandons these restrictions, and it does not require other programs to use the same protocol to use these code programs. BSD License Agreement

The BSD protocol has many branches, all of which represent a loose free software protocol that, compared to other protocols, such as the GPL, gives less restrictions on the spread of software.
Among the various versions of this protocol, there are two versions that are particularly important: the new BSD Protocol/revised BSD protocol and the simplified BSD protocol/FREEBSD protocol. Both types of protocols implement the GPL-compatible free software protocol, and are recognized by open source Initiative as an open source software protocol.

The new BSD protocol (3-clause license) allows you to distribute such software for any purpose two times without limitation, and the only requirement is that the copy rights statement and the SOFTWARE waiver clause in the agreement be retained. There is also a limitation to this agreement, and the signature of all former contributors to the work may not be used without permission. The main difference between the new BSD protocol and the simplified BSD protocol is that the latter removed the attribution terms. MIT License Agreement

The MIT protocol should be the shortest and most widely used protocol in the popular Open source protocol. Its terms are very lenient and freer compared to other agreements. The MIT protocol is currently the least restrictive agreement. It is basically anything anyone can do with the software under this agreement, as long as you can endorse this agreement. The most basic terms of this agreement (the information that it is provided without warranty, which comprises the final paragraph) are as follows:

It is hereby authorised that any person is free to obtain copies of the software and associated documentation (the software) and to use the software without restrictions, including unrestricted rights to use, reproduce, modify, merge, distribute, attach subordinate agreements, and/or sell copies of the software, and In order for the software provider to have the right to do so, the following conditions must be observed:

The above copy Rights statement and license statement must be included in all copies of this software and in the actual sub-section.

This is also to say:

  • You are free to use, copy, and modify this software. No one can stop you from using it in any project, you can copy it any number of times, in any form, or modify it as you wish.
  • You can send it out free of charge, or sell it. You can distribute it freely, without any restrictions.
  • The only limitation is that you must accept the terms of the agreement.

MPL License

The

Mpl is a shorthand for the Mozilla Public License, a software license designed by Mozilla Group Netscape in early 1998 for its open source software projects. The most important reason for the MPL license is that Netscape believes that the GPL license does not well balance the developer's need for source code and the benefits they derive from using the source code. Compared to the famous GPL license and BSD license, the MPL is the same as many of the rights and obligations (because they are all open source software licenses that are OSIA certified). However, there are several notable differences in MPL compared to the following:
MPL requires that modifications to the source code published by the MPL license be re-licensed in the form of an MPL license to ensure that other people can share the source under the MPL's terms. However, the definition of "release" in the MPL License is "file published as source code", which means that the MPL allows an enterprise to add an interface to its existing source code base, except that the source of the interface program is licensed in the form of an MPL license, The source code repository can be used to force external licensing without the MPL license. These, for reference to other people's source code for their own business software development behavior left a gap.
MPL License 7th allows licensee to mix the source code obtained by the MPL license with its own other types of code to obtain its own software program.
in the case of software patents, the MPL license does not expressly object to software patents as the GPL permits, but expressly requires that the source code provider be unable to provide sources that are already protected by the patent (unless he is a patent owner, and that the source code is freely licensed to the public in writing), It is also not possible to apply these source code licenses in the form of an open source license before applying for patents related to these source codes.
Definition of source code
and in the MPL (1.1 version) license, the source code is defined as: "The source code refers to the work to modify the first playable form, it includes: all the source of the module, plus the definition of the interface, plus control the installation and compilation of executable works ' Originally ' Script ', or not significantly different from the original source code is the source code contributor selected from the public domain can get the program code. "
MPL 3rd has a specific section on the description of the source code modification, which requires that all re-publishers have a special file on the source code to modify the time and the way the changes are described. Apache License Agreement

Apache License (Apache License), a free software license issued by the Apache Software Foundation, was originally written for the Apache HTTP server. The Apache license requires the grantee to retain the copyright and disclaimer of rights, but it is not an anti-copyright license.
The latest version of this license is "version 2", which was released in January 2004.
Apache licenses are widely used both inside and outside the Apache community. All Apache Foundation projects use Apache licenses, and many non-Apache Foundation projects also use Apache licenses: According to statistics, there are over 3,000 projects on SourceForge using Apache licenses as of April 2008.

The Apache License Agreement, version 2.0, grants users a lot of rights. These rights may be applied to the right to copy or to a patent right. Since many license agreements can only be applied to copy rights and not to patent rights, this flexibility is a significant reference factor in allowing patented developers to choose a license agreement (see how this article on Stuff Works) to understand the difference between the two.

The following is a detailed description of what is permitted under the Apache License Agreement:

    • Right Forever .

      Once authorized, the rights are permanently destroyed.

    • right Without Borders.

      is authorized in a country, in the same form as in all countries. For example, you are in the United States, but the license is initially granted in India, you can also use this licensed program.

    • authorization is free of charge and payment.

      You do not need to pay any fees before use, and you do not have to pay any fees for each use, or any other similar situation.

    • rights are not exclusive.

      Use of the software under this License agreement does not prevent you from using other software.

    • rights are not subject to change.

      Once granted, the right is inalienable. In other words, you don't have to worry about this when you're using the software: When you open an enviable derivative product based on this licensed software, someone jumps out and says, "Sorry, you're not allowed to use this program anymore." (There is a clause in this agreement stating that if you accuse someone of infringing a patent on a product under this license, your authorization will be terminated automatically, but this is only applicable to the patent works.) You never have to worry about this if you don't have a lawsuit for a patented work. )

There is also a special requirement for re-distribution of works, which is to give the authors of these programs and the defenders of the license agreement an appropriate reputation. Creative Commons Knowledge Sharing protocol

The Creative Commons (CC) license agreement is not a true open source agreement, most of which is used in design engineering. There are a wide variety of CC protocols, each of which authorizes specific rights. A CC license agreement has four basic parts that can be used individually or in combination. Here is an introduction to these sections:

    • Attribution

      The work must be accompanied by the attribution of the work. After that, the work can be modified, distributed, reproduced and used for other purposes.

    • share in the same way

      The works may be modified, distributed or otherwise operated, but all derivatives are subject to the CC license agreement.

    • non-commercial use

      Works may be modified, distributed, etc., but cannot be used for commercial purposes. But the language is very vague about what is a business statement (no precise definition is provided), so you can explain it in your project. For example, some people simply explain that non-commercial is not allowed to sell this work. Others think you can't even use them on advertising sites. And some people think that business simply means that you use it for profit.

    • Prohibition of derivative works

      This means that you can copy and distribute them, but you can't modify them in any way, or create them two of times based on them.

As mentioned above, these Terms of the CC license agreement can be used in a free combination. Most of the more stringent CC association councils declare the attribution right, non-commercial use, and prohibit derivative clauses, which means you are free to share this work, but you cannot change it and charge it, and must declare the attribution of the work. This license agreement is very useful, it can let your work spread out, but can be used to retain part of the use of the work or complete control. The least restrictive type of CC protocol is the attribution agreement, which means that as long as people can maintain your reputation, they will be able to use it for your work.

CC licenses are more used in design engineering than development classes, but no one or hinder you from using them with the latter. It's just that you have to be clear about the rights that can be covered and not covered by the terms of each section.

Open Source Protocol classification

Depending on the conditions of use, open-source software licenses can be divided into three categories (less severe)

1. The source code must also be exposed with the same license when using the open source software for redistribution (redistribute).

Representative License Type: GPL, AGPL

2. When you use the code of the open source software and then distribute the open source code, the source must be exposed with the same license.

Representative License Type: LGPL, CPL,CDDL, Cpl,mpl, etc.

3. When using the open source code (including modifications) to redistribute (redistribute), there are no special restrictions, only the need to register the license.

Representative License Type: ASL, Bsd,mit etc How to choose Open Source protocol?

Introduction to common open source software license agreements

Related Article

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.