Under review

Using GPL'd libraries?

Alyssa Manhave 4 years ago updated by Protektor 3 years ago 3

Three of the libraries used in ubooquity are under the GPLv2 or GPLv3 licenses, which are not as permissive to developers as say BSD, Apache, MIT, etc. are.

They require any software they are used in to be open source.


I clicked the login button at that point, wasn't trying for such a terse comment...

The libraries in question are the Java DjVu viewer, the Java VP8 Decoder, and JarClassLoader.




Under review

You're right.

I'll try to externalize the VP8 and Djvu libraries in plugins (or just remove WebP and Djvu support if externalization is too time consuming) and stop using JarClassLoader.

I should point out a common misconception by some programmers. Simply removing or replacing the offending code does not get you off the hook for past legal liabilities. To remedy the violation of the GPL license you are required by law to release the source code of your application up until the time you stopped used it. You can not undo the past violation of distribution for months and years by simply saying "Opps I'll stop now." that isn't how a license works, especially for violating it in the past and getting benefit.

To reduce your legal liability you must release the source code to every version of the program that used the code. You can easily talk to the GNU Foundation to learn this. They have sued many programmers and companies to enforce this license and it has held up in court to challenges.

Externalizing won't work either. It's why there is the GPL versus the LGPL for libraries that don't require you to license your code for using a library. It is exactly why you must be very careful of the license of source code when you try and take a short cut and use someone else's code instead of writing something yourself. You can't say "Well I'll just externalize Microsoft Windows Operating System source code and it will be fine". That isn't how the law on copyright and licenses work. Again talk to the GNU Foundation and they will tell you this.