Thursday, 26 March 2009

Some thoughts on Open Source

With the release of the first non-Alpha version of Kharne (0.1), Kharne will officially go open-source (with code probably available on GoogleCode).

But not under the GPL.

This is because I use some custom Delphi components that themselves aren't open-source, and this is incompatible with the viral nature of the GPL.

Instead I will be releasing Kharne under the Mozilla Public License (MPL):

"The MPL treats the source code file as the boundary between MPL code and proprietary parts, meaning that a certain source file (e.g., C++, JavaScript or XUL file) is either fully MPL or fully proprietary. The GPL, in contrast, uses the process boundary of the executable as the license boundary..."

In other words, under the MPL, which is a weak copyleft license, code that I write is considered open source - but the code of third party components is not:

"[The MPL] allows for the combination of MPL code with other code in a larger work without requiring that all code in the entire work be distributed under the same license..."

I have contacted the authors of those third-party components concerned and received explicit permission for use of their components in the compiled binaries of an open source project, and linking to them in my open-sourced code.

Obviously, I cannot and will not distribute their source code.

Rather, I will, per their own license terms and that of the MPL, include instructions in the source distribution on how to obtain and install their components independently.

And that is a win all round.


Eric said...

Just a heads up: The links in your article are all broken.

Dave said...

Thanks, fixed now!