The LicenceMe page.


Paragraphs in this page are:

Introduction
What's a Platform
What's a Unix Project
Free Software
Open Source
Interesting features
Conclusion



Introduction:

Let's remember a phrase from the TipMe page:

Since the beginning, nearly any *nix os (corporate or academic) was distributed
by source code. If corporate, a licence had to be paid.

All users of Unix had to sign a license that prohibited redistribution to the general public. - comment by Mr. Richard Stallman.

Then it could be compiled to any hardware, or better, processor family.
This is a tradition that is followed even now, but not as a ritual.

Unlike Wintel which is generally a compact platform - one OS and One processor family -, or Mac PPC and Mac 68K, Unix Compatible OSes are so many and designed for so many processor - therefore hardware - types, that a single developer would face the impossible: to build the project for every OS-Hardware combination.

Distribution via source code is therefore a vital solution for Unix-Compatible platforms, and limiting access to the source would definetly reduce the spreading of the project among the portable OS world.

Learning to compile and install software for your *nix is a must! (refer to CompileMe page)

What is stated above about unixes is valid also for any *nix project.


Q: What's a Platform?
A: Think of a platform as the Operating System/Hardware combination:

Wintel
MS Windows on Intel processors.
GNU/Linux i386
GNU/Linux on Intel processors.
NetBSD Alpha
NetBSD on Alpha processors.

   Note: Hardware platform is also a valid definition, describing processor type (i.e. i386), chipset (i.e. VIA), and bus type (i.e. PCI, IDE etc.)


Q: What's a Unix Project?

A: Since Unix is a trademark, the question really refers to Unix-Compatible, GNU-Compatible or just Portable Unix clone, *nix etc.

So, a  Portable Project is a program or program suite that is designed for many platforms, that is for many operating sytems and various processors.

Some examples:

The Linux Kernel is a project designed for many processor families.

The Samba Project is the File & Print Server compatible to Microsoft's SMB Protocol (known to us all as the File & Print Sharing) and designed mostly for Unix-Compatible OSes.

OpenOffice.org is the open-source branch of Sun Microsystem's Star Office suite.

Remember 3 things:

a) A project designed for all Unix-Compatible OSes is by definition designed for all processor families these OSes operate on.
But a project doesn't have to be literally for all *nixes.
If a project can run in GNU/Linux, *BSD AND Solaris, it is not a fault to be unable to install in System V or old *nixes in general.

b) Major projects never complete. They are just been released when they achieve certain states of maturity. This applies to non *nix projects also, like MS Office.

c) Project names usually resemble the operation they are designed for.
Note the similatities:

Bash     to the Bourne Shell compatible (Bourne Again SHell) language interpereter.
Samba    to SMB (Session Message Block, widely known as Microsoft File and Printer Sharing).
STonX    to Atari ST emulation.
WINE     to MS Windows Emulation Layer (Wine Is Not an Emulator).
ScummVM  to LucasArt's SCUMM Game Adventure Engine.
Cervisia to Kde CVS (Concurrent Versions System) Frontend.

Furthermore, certain names refer directly to the suites that they are designed for:

Gnome: gtoaster, gftp, gedit, gnomeicu
Kde  : kaffeine, kate, kedit, kcalc, kmldonkey kscd

d) Most Unix Projects are released in source code (even if precompiled also) and then get compiled for specific processor families. Some old Unixes are an exception.

But access to the code is directly depended on the licences that cover this code.

That's why the Free Software and Open Source movements are vital to Unix nowdays.




Free Software.

The Free Software movement, created by Richard Stallman, says that every program should be free software, because all users should have freedom. There is ethics and philosophy behind this issue, sometimes invisible when seeing only the Licence that constitutes these rights:

The GNU-General Public Licence

Q: What's the GNU licence thing then?

A: GNU-GPL stands for the Gnu is Not Unix (notice the recursion) General Public Licence act, created by Richard Stallman in 1985.

Copyright is a legal safeguard that companies pose in order to keep computer software under control, despite the fact that all this work is in reality made by programmers that cooperate with each other and see each other's code (or at least results and ideas) in order to achieve progress.

In these times, it was common for a company's behaviour to take a team project, "enclose" a modified version of it in a proprietary one and then press legal actions to "privatize" it and even put the free community in difficult situations.

Source code was so intensively shared that you could easily find Free code in a non-free project and vice versa. Unfortunately, this "versa" had a weaker point in court rooms.

That's why the BSD (Berkeley Software Distribution) Unix, the First one that intergrated tcp/ip into it's Unix kernel AND Virtual Memory - thus opening an entirely new era in Operating Systems philosophy -  got in a very difficult situation for keeping proprietary code inside the project, a situation that was finally overcome in 1990!


That year (1985), Mr. Stallman made a step that affected the future significantly. He created a Licence that once applied to a project, it prevented anyone from steeling, patronizing, or closing the project for his own benefit.

Not Unix means Not Unix! It means Not Proprietary, Not Patented etc.
Apply General Public Licence in the right of GNU and there, you have it!

So, if someone creates a project that wants it to be free, he/she can define it under the GNU-GPL

And when someone takes a GNU-GPL project he can even make it better and sell it.
But he has to share the source code and also give the complete rights to the receiver, still keeping it under the GNU-GPL.

But Think Free as for Freedom (free speech), Not Gratis (money free)!

Keep in mind that to guarantee this freedom, the GNU-GPL applies rules.

" .....  To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights ....
"


So, Free Software does not mean free rules. It means rules that quarantee freedom.

Much after the Free Software movement, the Open Source movement began.




Open Source.

Some communities decided that even free, Free Software might be too restricting to them.

As a matter of philosophy, Open Source does not define freedom. Open Source concerns about Open and Closed projects as opposed to Free or Not Free from Free Software.

The Open Source Movement states that if the source is available for all programmers to study, help to develop, fix bugs etc. the evolution of a project is astonishing compared to the traditional model, in which only a few people have access to the code.

The Open Source Movement's main concern is the actual procedure of making the code of a project available to a very wide group of developers while in developing state and not just after finishing.

But this does not have anything to do with Free - Non Free Software.
A Free project can as well be limited to a small - limited team of programmers while developing and will obtain the GNU - General Public Licence upon release.

Eric Steven Raymond's book "The Catherdal and the Bazaar" described these two models of developing. These two opposite model "names" became standard definitions in the Open Source culture for a very short time.

A Slogan in the Open Source Community is: "Given enough eyeballs, all bugs are shallow.", and one of the best representatives of this culture is Mr. Linus Torwalds himself, applying this philosophy in the Linux kernel development procedure.

But the Open Source Movement applies to the commercial world also!

An open source project has the ability to be distributed without the source code, provided that this source can be easily accessible and without charge.

An open source project may have the ability to "transform" into a closed one, depending on the licence.

Q: But then the project would be closed and - maybe - patented or proprietary!

A: The new one may become "closed", but the old "open" one won't.
The old will (and its source code) still be open to use.
This "transformation" case is depended on licence.

So, Licences may vary very much.

As various licences have been created in the Free Software Movement, Licences have been created in the Open Source Movement also.

An example of a licence:

The BSD Licence permits a company to take a BSDL project, work on it and sell it without keeping the new code open!

(Of course, the initial BSDL code can not be patronized or closed.)

Open source developers (developers who say they support the Open Source Movement) often do use the GNU GPL for their work.

The range of licenses that are accepted by the free software movement and the range of licenses accepted by the open source movement are very similar.  Not identical, but close.

- Comments by Mr. Richard Stallman





So, 2 licences have very interesting features each.

The BSDL can help in the evolution of corporate projects, and have done so!

The GNU-GPL projects start Free AND Stay Free, so GNU grants longevity.

When the GNU movement started, it created conditions in which various licences
appeared in time, all forming the various movements of the present.

And, if GNU didn't start at all, things would be very different nowdays.

Richard Stallman and the Free Software Foundation, Inc. that he created, have also programmed  applications that are common part of our work in Unix & Unix-Compatible OSes:

Bash     The Bourne Again Shell.

You might want to mention that this name is a joke.
Many Americans call themselves "Born-again Christians".
We are making fun of their superstition.
- comment by Mr. Richard Stallman.

Emacs    Text editor with extended capabilities.
GNU/Libc The C Library we all use in our Linux boxes!
GCC      GNU/C Compiler, a standard tool for making projects in the Free Software world!




Conclusion.

Here are two links for learning about the various licences:

http://www.gnu.org/licenses/license-list.html
http://www.opensource.org/licenses/index.php


When you see a Freeware Program in a site, keep in mind that it may neither Free nor Open!

Freeware programs concern the free use, meaning without paying in certain circumstances.

But if they do not distribute the source code, nor give the rights of use or redistribute to the receivers they are Not Free!

If, in the same time, being either free or commercial, they do not keep the source open and available while developing, they are Not Open either!