Skip to main content

GNU and Different Opensource Licenses


Licenses

Published software should be free software. To make it free software, you need to release it under a free software license. We normally use the GNU General Public License (GNU GPL), but occasionally we use other free software licenses. We use only licenses that are compatible with the GNU GPL for GNU software.
Documentation for free software should be free documentation, so that people can redistribute it and improve it along with the software it describes. To make it free documentation, you need to release it under a free documentation license. We normally use the GNU Free Documentation License (GNU FDL), but occasionally we use other free documentation licenses.
Our documentation licenses are currently being revised, and we welcome your comments on the proposed texts. Please visit http://gplv3.fsf.org to read the current drafts and participate in the process.

Common Resources for our Software Licenses

We have a number of resources to help people understand and use our various licenses:

The GNU General Public License

The GNU General Public License is often called the GNU GPL for short; it is used by most GNU programs, and by more than half of all free software packages. The latest version is version 3.

The GNU Lesser General Public License

The GNU Lesser General Public License is used by a few (not by any means all) GNU libraries. The latest version is version 3.

The GNU Affero General Public License

The GNU Affero General Public License is based on the GNU GPL, but has an additional term to allow users who interact with the licensed software over a network to receive the source for that program. We recommend that people consider using the GNU AGPL for any software which will commonly be run over a network. The latest version is version 3.
  • The GNU Affero General Public License text is available in these formats: HTML, plain text, Docbook, Texinfo, and LaTeX. These documents are not formatted for standalone publishing, and are intended to be included in another document.

The GNU Free Documentation License

The GNU Free Documentation License is a form of copyleft intended for use on a manual, textbook or other document to assure everyone the effective freedom to copy and redistribute it, with or without modifications, either commercially or noncommercially. The latest version is 1.2.

Unofficial Translations

Legally speaking, the original (English) version of the GPL is what specified the actual distribution terms for GNU programs. But to help people better understand the licenses, we give permission to publish translations into other languages provided that they follow our regulations for unofficial translations.

Verbatim Copying and Distribution

The standard copyright notice for GNU webpages reads: Verbatim copying and distribution of this entire article are permitted worldwide without royalty in any medium provided this notice is preserved. Please note the following commentary by Eben Moglen:
"Our intention in using the phrase `verbatim copying in any medium' is not to require retention of page headings and footers or other formatting features. Retention of weblinks in both hyperlinked and non-hyperlinked media (as notes or some other form of printed URL in non-HTML media) is required."

List of Free Software Licenses

  • List of Free Software Licenses
    If you are contemplating writing a new license, please contact the FSF by writing to . The proliferation of different free software licenses means increased work for users in understanding the licenses; we may be able to help you find an existing Free Software license that meets your needs.
    If that isn't possible, if you really need a new license, with our help you can ensure that the license really is a Free Software license and avoid various practical problems.

What Is Copyleft?

Copyleft is a general method for making a program free software and requiring all modified and extended versions of the program to be free software as well.
The simplest way to make a program free is to put it in the public domain (18k characters), uncopyrighted. This allows people to share the program and their improvements, if they are so minded. But it also allows uncooperative people to convert the program into . They can make changes, many or few, and distribute the result as a proprietary product. People who receive the program in that modified form do not have the freedom that the original author gave them; the middleman has stripped it away.
In the GNU project, our aim is to give all users the freedom to redistribute and change GNU software. If middlemen could strip off the freedom, we might have many users, but those users would not have freedom. So instead of putting GNU software in the public domain, we ``copyleft'' it. Copyleft says that anyone who redistributes the software, with or without changes, must pass along the freedom to further copy and change it. Copyleft guarantees that every user has freedom.
Copyleft also provides an incentive for other programmers to add to free software. Important free programs such as the GNU C++ compiler exist only because of this.
Copyleft also helps programmers who want to contribute improvements to free software get permission to do that. These programmers often work for companies or universities that would do almost anything to get more money. A programmer may want to contribute her changes to the community, but her employer may want to turn the changes into a proprietary software product.
When we explain to the employer that it is illegal to distribute the improved version except as free software, the employer usually decides to release it as free software rather than throw it away.
To copyleft a program, we first state that it is copyrighted; then we add distribution terms, which are a legal instrument that gives everyone the rights to use, modify, and redistribute the program's code or any program derived from it but only if the distribution terms are unchanged. Thus, the code and the freedoms become legally inseparable.
Proprietary software developers use copyright to take away the users' freedom; we use copyright to guarantee their freedom. That's why we reverse the name, changing ``copyright'' into ``copyleft.''
Copyleft is a general concept; there are many ways to fill in the details. In the GNU Project, the specific distribution terms that we use are contained in the GNU General Public License, the GNU Lesser General Public License and the GNU Free Documentation License.
The appropriate license is included in many manuals and in each GNU source code distribution.
The GNU GPL is designed so that you can easily apply it to your own program if you are the copyright holder. You don't have to modify the GNU GPL to do this, just add notices to your program which refer properly to the GNU GPL. Please note that you must use the entire text of the GPL, if you use it. It is an integral whole, and partial copies are not permitted. (Likewise for the LGPL and the FDL.)
Using the same distribution terms for many different programs makes it easy to copy code between various different programs. Since they all have the same distribution terms, there is no need to think about whether the terms are compatible. The Lesser GPL includes a provision that lets you alter the distribution terms to the ordinary GPL, so that you can copy code into another program covered by the GPL.

Licenses for Other Types of Works

We believe that published software and documentation should be free software and free documentation. We recommend making all sorts of educational and reference works free also, using free documentation licenses such as the GNU Free Documentation License (GNU FDL).
For essays of opinion and scientific papers, we recommend the simple "verbatim copying only" license that is used for this web page.
We don't take the position that artistic or entertainment works must be free, but if you want to make one free, we recommend the Free Art License.

    Comments

    Popular posts from this blog

    AJAX File Upload with Web2py

    It was not that long, since I experienced a problem while trying to upload a file using an ajax  trapped form. I thought, it must be me doing something wrong. I was using web2py to embed another page into a page via ajax. That is better known to web2py folk as LOADing a component.

    It's just happened that one of such component contains a file upload form. It was my first time using LOAD function provided by web2py. Basically it make use ofjQuery to load the page via ajax into a target div and traps input of any form in that page, so that page doesn't reload. Oh, I forgot to say that web2py is bundled with jQuery.

    It's always boring and tedious to understand a problem without experiencing it. So, Let's play with an example, (PS: I"m using web2py a full stack python framework, but you can use any language at server side and this problem will be there because, it's a problem with ajax)

    My model which defines table like this,



    In RDBMS world, it column 'file…

    Rich Internet Application & GWT : Angel of Java Programmers

    We all are hearing the buzz about Rich Internet Applications (RIA) about a year or so. But, what the heck is that beast? You may ask. For the user's perspective, it's the desktop like experience delivered over web. Yes, you feel like you are using a real desktop application (well, at least sort of). The richness of desktop controls is transferred to web.

    How RIA is build? Arise another question. These all started with that amazing kid called AJAX (Asynchronous JavaScript And XML). Then more and more tools become available, like Java FX, Adobe Air, Adobe Flex (and Adobe Flash), Microsoft Silverlight. But these tools, though it gives rapid and organized web application development, required some kind of plug-ins to be installed on your browser. There is the importance of AJAX based RIAs, because JavaScript is enabled in almost all browsers in use today.

    However, It's not a fool proof solution, because there are people who switch off JavaScript for some reason, like me ;-).  Bu…

    Java Certification

    There is no validity for this course. I mean currently no institution or firms consider this as a qualification. But may be in future they consider so.
    This course differs from ordinary course. There is no projects or assignments.
    All we want to do is study the material provided by them and submit the home works. We have more than five months of time for that. And in total more than twenty home works.

    This course covers Basic of Java or Core Java.
    It starts from novice (ie., loops and declaring variables too ) and advances from there. This covers swing, File handling, Little bit RMI and client/server networking, Threads, Java Beans etc. etc. ...

    The course is maintained and developed by Mr. Sang Shin. Also there are many to help him. We get support from class mailing list. And if we complete the course successfully, we also get a certificate like above one that get to me.
    There are other courses too. For example Java Performance tuning, Java EE, Java FX etc. And like this co…