technology notes… mobile and embedded.

Posts Tagged ‘BSD

A ready reckoner on OpenSource licenses

with 6 comments

This is a very short primer on the various licenses used for open source software.  Its intended as a quick look for those in hurry . For elaborate stuff, refer wikipedia.

Historically, there have been three license types or families :
Academic license (MIT Athena ,Berkley and Apache).
Free software licenses(General Public License and the LGPL).
Mozilla-style licenses(Mozilla and the IBM licenses).

Here are some salient features of each of them.

The Berkley license essentially:
*  Enables the software user to do anything with the software,including extending and selling it.
*  Does not require any derived software be licensed under the same license of that the changes
be published. This enables proprietary products to include such licensed software safely.
*  Requires that attribution be given for the work, and copyrights maintained.
*  Disclaims any warranties (express or otherwise) just as a proprietary EULA does.

Free Software Licenses(GPL and LGPL)
Richard Stallman created the Free Software Foundation and his definition of software freedom ,where a
program source code was always available and a user could always fix and extend t he software without
restriction. The GPL defined this particular sharing foundation.
*  If the user distributes a modified version version of code released under GPL,they can do so ,only by
sharing their changes through the same license (i.e. their changes to GPL code shall be available under GPL).
*  If a user make use of any of the GPL code in her program and distributes the program, the entire program
including its source code becomes subject to GPL. (i.e. users’ application that make use of GPL code should also be
licensed under GPL)
*  The GPL disclaims any warranties just as proprietary EULA’s.

The LGPL was developed later to account for software libraries.Many developers who shared utility libraries
under GPL did not want to force the user of their libraries to share their ENTIRE source code (as in
the case of GPL),but only the changes that is done to the library.

The Mozilla License:
In the late 1990’s ,Netscape published the source code of their browser and built a community of developers around it.
This project was called Mozilla project and a new license viz. Mozilla Public Licence was created.
*  Derivatives of an original MPL work to be licensed under the MPL similar to the GPL.
*  Enables MPL licensed works to be combined with other software and re-licensed to a “Larger work”. This enables
development of closed proprietary software using MPL softwares (similar to the academic licenses).
*  Discusses patent rights relevant to the licensed work.
*  Disclaims any warranties just as a proprietary EULA does.
There are several derivatives of the MPL that is being used by various companies that wish to develop
collaborative software .

One more term that’s associated with all these licenses is ‘dual licensing’.
Dual licensing:
It is an attribute of the intellectual property law,that the property owner can license their property to
as many people as many times ,and in as many ways as they choose.
This clause allows companies distributing open source software to sell the same software under an OEM license.
Dual licensing helps clients of open source software to embed the code within their works,
without a need to redistribute their works.

Popular OSS that are released under Dual licensing are MySQl from MySQL AB and QT from Trolltech Nokia.

TiVoization and GPLv3: TiVo is a Digital Video Recorder that uses GPL software and the Linux kernel. To comply with GPLv2 conditions, TiVO did release their code . However it was alleged that TiVo prevented modified software from running on their hardware by running only the programs that used valid digital signatures  from the manufacturer.This way,though the code was released, modified software would not run on the hardware.  This behavior was declared as ‘Tivoization’ and one of the goals of GPL Version 3 was  to prevent this .

The OSS community was divided in their support for GPLv3 . Finally some modifications were made to the GPLv3 license so that the anti-tivoization will not be applied when the software is distributed to a business.
Wikipedia has a well written summary on Tivoization and GPLv3 .Have a look for more on this.


Written by sujai

October 8, 2008 at 8:34 am

%d bloggers like this: