Open Source

From SailfishOS Documentation

Open Source and Free Software in Sailfish OS

As described in the architecture documentation Sailfish OS consists of a variety of components, some of which are proprietary and closed source (such as some hardware-specific kernel modules, or other software licensed under commercial terms), and most of which are open source.


The various open source components have different licenses depending on the licensing decision by the upstream maintainers. Sailfish OS respects and abides by these license requirements. Some of these licenses are highly permissive open source licenses, while others entail specific legal requirements which are described in further detail below.


Understanding Open Source and Free Software

Let's look at two of the key ideas that you'll come across in this area: Free Software and Open Source Software.


Free Software

A long, long time ago, way back in the 20th century, a chap called Richard Stallman worked in a lab which had a printer. He'd modified the software on the printer to tell users when it needed attention. He became annoyed when the lab got a newer model of printer and the manufacturers refused to share the code to allow him to make a similar modification. He thought this was selfish.


This lead Richard to develop a philosophy in which users should have the freedom to see and change the software that operates the machines they interact with. He began to work on what became known as 'Free' software.


Of course the word free has two meanings but the more important one in this context is not financial cost but personal freedom. This explanation is often summarised as:


"Free as in freedom, not as in beer".


The next step was to actually write some Free Software, in fact a complete operating system - and so the GNU OS was born.


Just as important as the software was a way to prevent anyone from restricting users. This lead him to investigate the legal framework around copyrights and licenses that generally governing its use and come up with the idea of 'copyleft' (a play on the word copyright) and the GNU General Public License - the GPL.


GPL Licensing

The Gnu General Public License guarantees end users (individuals, organizations, companies) the freedoms to run, study, share (copy), and modify software carrying the license.


It uses what is known as copyleft to ensure that these freedoms are retained when the software is distributed.


The essence of the GPL is that you can share and modify the software but that you must share the source of any modifications you've made if you redistribute the software - ie it's about playing fair.


You can read more about the GPL here.


Open Source

There are a number of licenses which permit and encourage the sharing of source code associated with software and you'll find a mix of these licenses in the source that makes up Sailfish OS. Some of these licenses are highly permissive, while others more strictly enforce the "copyleft" requirements described above.


To many people there is a clear distinction between "Free Software" and "Open Source Software"; the former is, to some degree, a political position whereas the latter is an economical or collaborative solution which happens to be leveraged by the Free Software movement.


Aside from any ideological position, if ten companies each put one man-year's worth of development effort into a software component then they'll each benefit from a total of ten man-years worth of results - that's a fairly good economic proposition!


Ultimately Open Source is about sharing and collaborating - not about why you choose to share and collaborate.


Legal Situation

The best advice is to get professional advice from a member of the legal profession who is familiar with Open Source licensing in your country. For a complete list of the license information entailed by Sailfish OS, please contact the legal team of Jolla Oy.