/ Docs / FAQ / GPL Licensing

Frequently Asked Questions - GPL Licensing

This document attempts to answer some of the common questions regarding the Mibble GPL licensing.

Q1: Is Mibble "free" software?

Yes, Mibble is free software (software libre) according to the Free Software Definition. It is publicly distributed under the GNU General Public License (GPL).

No, Mibble is not free in the sense that you may do with it as you wish. The GNU GPL explictly limits the redistribution of Mibble and any derived work in several ways. In particular, if your program requires Mibble to run, it must also be distributed under the GNU GPL.

As an alternative to using the GNU GPL, a non-exclusive commercial license for Mibble can be purchased.

Q2: What does this GNU GPL mean?

The GNU GPL is a copyright license, limiting the ways in which you may copy the Mibble software. It does not directly affect the usage of the software, but in limiting your ability of making copies it may do so in an indirect way.

In essence, the GNU GPL imposes a number of conditions that must be fulfilled in order to distribute Mibble:

  • All modifications of Mibble must be distributed under the terms of the GNU GPL (if at all distributed to third parties).
  • Any software linking to Mibble (using one of it's classes) must also be distributed under the terms of the GNU GPL (if at all distributed to third parties).
  • The software distributed under the GNU GPL must make the full source code available for any third party (at low or no cost).
  • You cannot impose any other licensing requirements on any software distributed under the GNU GPL.

The above is just a very brief summary. Please have a look at the Official GNU GPL FAQ for more information.

Q3: Why did the Mibble change license?

From version 2.4 Mibble is (again) distributed under the GNU GPL. From version 1.2 to version 2.3 it was distributed under GNU GPL with a special exception allowing linking to external software not covered by the GNU GPL. As of version 2.4 that exception has been removed.

The reason for the license change in version 2.4 is the lack of community support for developing, maintaining and supporting Mibble. Most users of Mibble today are companies or large organizations, very few of which have actually contributed back to Mibble (although clearly benefitting from using it). As such, the cost associated with developing Mibble was not shared evenly.

In order to cover future development and maintenance costs, the decision was made to provide financing by selling licenses of Mibble to organizations not developing free software. The publicly available license has therefore been limited to a plain GNU GPL, making it impossible to use Mibble in non-free software. This change attempts to strike a balance between the common good of free software and the need to cover costs associated with developing, maintaining and supporting Mibble.

Q4: Does this affect our commercial license?

No, this does not affect older versions of Mibble or their licenses. You can continue using your current version of Mibble under the conditions of its license (whether commercial or GNU GPL plus exception). Depending on the particular form of license agreement you have, you may be entitled to a free update to the latest version of Mibble. Please direct any questions regarding commercial licensing of Mibble to sales@percederberg.net.

Q5: Are there restrictions on using Mibble?

There are no restrictions on using Mibble per se, but the license does restrict the ways in which you may distribute copies of Mibble or code derived from it. In particular, any code using the Mibble library must be distributed under the GNU GPL (if at all distributed to third parties). See Q2 for more information on the terms of distribution.

Q6: Are there restrictions on distributing Mibble?

Yes, the GNU GPL is a copyright license that gives you permission to distribute Mibble provided that you fulfill certain conditions specified in the license. The GNU GPL also covers any work derived from or linking to Mibble (i.e. using classes in the Mibble library). See Q2 for a summary of the conditions in the GNU GPL.

Q7: Are there restrictions on modifying Mibble?

Yes, any modifications to Mibble are covered by the GNU GPL. That means that if you distribute a modified copy of Mibble, you must also provide the source code for your changed version. See Q2 for a summary of the conditions in the GNU GPL.

Q8: Can I use Mibble in my application?

You may use Mibble in your applications in any way you wish, but the GNU GPL restricts the ways in which you may distribute these applications to other parties. In particular, any code linking to Mibble (i.e. using one of its classes) is considered a derived work and must also be distributed under the GNU GPL. See Q2 for a summary of the conditions in the GNU GPL.

See also Q12 for a list of the alternatives to a GNU GPL licensed version of Mibble.

Q9: Can I use Mibble in my open source project?

If your open source project is licensed under the GNU GPL you may use Mibble without any further restrictions. If you are licensing your source code under a different license, there is currently no way to use the GNU GPL licensed version of Mibble.

See also Q12 for a list of the alternatives to a GNU GPL licensed version of Mibble.

Q10: How about internal use in my company or organization?

The GNU GPL does not limit the use of Mibble or derived software, only their distribution. Using Mibble internally in an organization is thus possible without restrictions. Note however, that the moment that Mibble, or any software using it, are distributed outside the organization, the GNU GPL applies.

See Q2 for a summary of the conditions in the GNU GPL.

Q11: Can I let my users download Mibble for themselves?

Yes, if your code is already licensed under the GNU GPL you may let your users download Mibble as an optional plugin to your software.

No, if your application is not licensed under the GNU GPL it is not legal to encourage users to download Mibble separately and linking it with your software. Any code calling into the Mibble library, either directly or through introspection, must be licensed under the GNU GPL.

See also Q12 for a list of the alternatives to a GNU GPL licensed version of Mibble.

Q12: Ok, GPL doesn't work for me. Now what do I do?

The GNU GPL licensed version of Mibble may not work for everyone. There are a number of ways to approach this:

  • Purchase a Commercial License - As an alternative to using the GNU GPL, a non-exclusive commercial license for Mibble can be purchased.
  • Use an Older Version - Versions 1.2 to 2.3 of Mibble were licensed under GNU GPL but with an exception allowing linking with non-GPL code, effectively making the license LGPL. All these versions contain bugs and are unmaintained, but they may still work for you.
  • Relicense to GNU GPL - Any code licensed under the GNU GPL may freely use the Mibble library. By relicensing your software (or only the applications dependant on Mibble) under GNU GPL you may continue using the latest version of Mibble.

Please write to sales@percederberg.net if you have further questions or comments.


Copyright © 2003-2010 Per Cederberg. Permission is granted to copy this document verbatim in any medium, provided that this copyright notice is left intact.

Designed & Hosted by Liquid Site Hosting.

Purchase a commercial Mibble license