3

As an example, the real time operating system FreeRTOS is licensed under the FreeRTOS Open Source License which is based on a modified GNU GPL, the modification taking the form of an exception. The GNU GPL is approved by the Open Source Initiative, but not the FreeRTOS Open Source License. If I use FreeRTOS in my software, and the rest of my software is released under an approved Open Source licence, would I be wrong to call my software Open Source?

The OSI FAQ says:

Can I call my program "Open Source" even if I don't use an approved license? Please don't do that. If you call it "Open Source" without using an approved license, you will confuse people. This is not merely a theoretical concern — we have seen this confusion happen in the past, and it's part of the reason we have a formal license approval process. See also our page on license proliferation for why this is a problem.

The Open Source stamp is important to me and I like using FreeRTOS but I also want to call things what they are. I am not 100% sure about this one that is why I prefer to ask here. I asked the question in a generic way so it can also be useful to others.

3

Unfortunately for you, the FreeRTOS license is fundamentally broken:

Any FreeRTOS source code, whether modified or in it's original release form, or whether in whole or in part, can only be distributed by you under the terms of the GNU General Public License plus this exception. An independent module is a module which is not derived from or based on FreeRTOS.

And the exception contains in particular:

Clause 2:

FreeRTOS may not be used for any competitive or comparative purpose, including the publication of any form of run time or compile time metric, without the express permission of Real Time Engineers Ltd. (this is the norm within the industry and is intended to ensure information accuracy).

This contradicts the terms of the GPL which contain in particular:

You may not impose any further restrictions on the recipients' exercise of the rights granted herein.

Now this may sound confusing as the GNU FAQ page contains tons of references to "exceptions" that can be added to the GPL. And indeed there are tons of existing such exceptions. The most well known is nothing less than LGPL (which is just GPL + an exception). But what all those exceptions have in common is that they do not add any further restrictions. They just grant more rights! And in particular, any person is allowed to distribute the program further under GPL without the exception.

What if the exception had been acceptable?

If the exception to the GPL had been an exception in the usual sense, then by using GPL + exception, you would a fortiori be distributing your program under GPL, and thus, you would be distributing it under an approved open source license.

What about calling your program open source anyway?

If you choose to distribute the program you wrote under an open source license but it has a non-open source dependency, then you could just make sure that people understand that when you are saying "my program is open source", you are talking about the program itself and not the dependencies. It is still interesting to people: they can replace the dependency by something else if they want and make the whole program open source.

  • As I understand, it seems like if the exception had been acceptable for the FreeRTOS Open Source License, it would still need to be listed on the OSI list of approved licenses. Indeed, LGPL is listed even if, as you mentioned, it is basically GPL + exception. – olliebulle Oct 27 '16 at 16:01
  • @olliebulle: This is just because LGPL is generally presented as an independent license. But for instance nobody would say that GCC is not open source. And still I doubt that its exception is listed by OSI: gnu.org/licenses/gcc-exception.html – Zimm i48 Oct 27 '16 at 16:54
  • Very interesting. The only last difference I would see is that GCC uses GPL + exception directly while FreeRTOS uses GPL + exception as a base for a new licence, its own FreeRTOS Open Source License. – olliebulle Oct 27 '16 at 17:10
  • Yes and you are right. This is not standard practice. But then again: the license produced is self-contradictory so I wouldn't give it too much weight. – Zimm i48 Oct 27 '16 at 17:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.