Software Licenses

Primarily 2 Types

  1. Free and Open Source a.k.a FOSS(Free with or without Conditions)
  2. Proprietary

FOSS can be further classified to 4 based on level of restrictions

  1. Public Domain(no license) : No restrictions (but it is the responsibility of the one who uses/modifies/redistributes software available in public domain to ensure that no license is attached)
  2. Lesser General Public Licence : Least Restrictions among FOSS, like just incorporating LGPL Licence along with s/w
  3. Permissive : Little more restrictions for modification/redistribution
  4. Copy Left : Most restrictive among FOSS, requires reciprocal licensing

Public domain.

This is the most permissive type of software license. When software is in the public domain, anyone can modify and use the software without any restrictions. But you should always make sure it’s secure before adding it to your own codebase. Warning: Code that doesn’t have an explicit license is NOT automatically in the public domain. This includes code snippets you find on the internet.

Free Software Licences

Free Software Foundation (FSF) is a nonprofit with a worldwide mission to promote computer user freedom.
The Free Software Directory maintained by FSF has a large database of free-software packages.

Software licences ,Courtesy : Wikipedia
Software licences ,Courtesy : Wikipedia

GPL & LGPL

Free software started with GNU GPL (click)

GNU stands for “GNU's Not Unix.” It is pronounced as one syllable with a hard g. Richard Stallman made the Initial Announcement of the GNU Project in September 1983.

GPL is the acronym for GNU's General Public License, and it's one of the most popular open source licenses. Richard Stallman created the GPL to protect the GNU software from being made proprietary. It is a specific implementation of his “copyleft” concept.

If changes were made to the software that's going to be distributed (any GNU license), it must be distributed with its full source code, on the same license terms as the original software.

If the free software is only a part of the application

GNU GPL

Free Software Foundation states, dynamically linking application to libraries creates a single work derived from both the library code and the application code. If an application links to a library licensed under GPL, it must also be licensed under GPL. It means that the source code of the application must be provided.

However, there are cases when GPL-covered software can be distributed alongside a proprietary system. To do this validity, the free and non-free programs have to communicate at arms length, that they can be considered separate works. Two programs do not communicate at arms length if they share any data structures. At a minimum, two programs should run in separate processes. They can communicate over ICP mechanisms. Unfortunately it's not always applicable.

LGPL (click)

Libraries licensed under the GNU Lesser General Public License (LGPL) may be linked to proprietary applications.
If linked statically, the application code must be released also as LGPL or
everything that allows the user to re-link the application with a different version of the LGPL source code, have to be provided. As long the application is linked dynamically to LGPL software, the proprietary code can be kept proprietary.
If you simply compile or link an LGPL-licensed library with your own code, you can release your application under any license you want, even a proprietary license. But if you modify the library or copy parts of it into your code, you’ll have to release your application under similar terms as the LGPL.

Permissive

Permissive licenses are also known as “Apache style” or “BSD style . They contain minimal requirements about how the software can be modified or redistributed. This type of software license is perhaps the most popular license used with free and open source software. Aside from the Apache License and the BSD License, another common variant is the MIT License.

CopyLeft

Copyleft licenses are also known as reciprocal licenses or restrictive licenses.
The most well-known example of a copyleft or reciprocal license is the GPL.
These licenses allow you to modify the licensed code and distribute new works based on it, as long as you distribute any new works or adaptations under the same software license.For example, a component’s license might say the work is free to use and distribute for personal use only. So any derivative you create would also be limited to personal use only. (A derivative is any new software you develop that contains the component.)

Refereneces :

  1. [Wikipedia](https://en.wikipedia.org/wiki/Free-software_license

  2. 5 types of software licenses you need to understand\

  3. Differences between GPL and LGPL

  4. What Is a Software License?...

Creating New Licence

Open Source Initiative (click)

If you want to create your own Open Source Licence , you must ge tthe approval of Open Source Initiative. It should be accompanied with a brief description. Eg : Brief Description of OSL (Open source Licence, used for Magento) by Lawrence Rosen (click)