Releasing Clojure applications with GPLv3

I’m not a lawyer or a software licensing specialist but just a programmer. Don’t use this blog article as your final decision of doing anything, but check original text both in GPL and EPL.

Speaking of software licenses, I personally prefer GPL, and I also like to always use the latest version as much as possible, so I always try to use “GPLv3 or any later version” in my freesoftware products.

GPLv3 logo from https://www.gnu.org/graphics/license-logos.html

I made a template for lein new to put GPLv3 license info in auto-generated project.clj instead of its default, EPL, since I spent so much time replacing the part every time when I make a new Clojure project. It’s released on clojars.org here and the repository is on github: https://github.com/ujihisa/gpl3p-lein-template.

When tweeted that I was planning to make the package on Twitter, @technomancy, the author of Leiningen, mentioned to me about the license compatibility.

technomancy++

So I researched about the licenses’ compatibility. According to GNU, GPLv3 and EPL aren’t compatible (i.e. if you make a GPLv3 project that depends on a EPL package, nobody can redistribute it with the dependency statically linked together,) but you can add an exception clause under section 7 to allow specific dependencies to re-distribute together.

I added COPYING and LICENSE files in the template to let you write the clause in your project. Enjoy!

Advertisements
Leave a comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: