License Change

As of a few minutes ago, the license on HekaFS changed from AGPLv3+ to GPLv3 – not AGPL, not LGPL, not later versions. This only affects the git repository so far; packages with the change still need to be built, then those need to be pushed into yum repositories, and all of that will take some time.

Why the change? It actually had very little to do with the acquisition; Gluster themselves had already moved to GPLv3+ and the plan has always been for the HekaFS license to track that for GlusterFS. What the acquisition did was spur a general conversation about what license should apply to both GlusterFS and HekaFS (as long as it remains separate). After several rounds of this, I was told it should be GPLv3, and so it is. While I’ve personally gone from favoring BSD/MIT to favoring A/GPL, I actually believe they’re all fine. Even though I’ve argued on my own blog about why AGPL is what GPL should be, I’ve also seen actual cases where AGPL-aversion has threatened to kill projects. It doesn’t matter what I think about the AGPL’s effect on others’ code, or even what the legal outcome if/when there’s a proper test case to set precedent. The fact is that the engineers who are trying to use the code can’t change a no-AGPL policy, and the people who make such policies have their reasons. As far as I know, that’s why Gluster had already abandoned AGPL. As to why it’s GPL instead of LGPL, or v3 instead of v2 or v3+ . . . well, I don’t know. The differences at that point are below my threshold of caring, so I didn’t even ask.


2 Responses

You can follow any responses to this entry through the RSS 2.0 feed.

Both comments and pings are currently closed.

  1. Ian says:

    for me there is a pretty big difference between gpl v2 and v3.

    lets say I want to use cloudFS as part of a service offering (say I want to build a dropbox-like webservice).
    and say I want to have each volume have a ‘shared’ area for example, but due to our internal practices, will never be able to release that code to the general public.

    with v2 of GPL I can grab your code.. change it to do my custom things and run my service as I please.

    with v3 of GPL I would be forced to release my changes.

    now.. before debating the merits of if I should release the code or not, that is the basic difference between them. As a commercial operation, I can’t even ‘use’ v3 GPL products due to this.

    so if you could change it GPLv2 I could use this code in my project, and save some $ and time. .. you get another user of your code, and possibly some patches for bugs we find

    with GPLv3 I won’t be able to use cloudfs at all, and will be forced to build an inferior/duplicate version in-house. we both lose.

  2. Jeff Darcy says:

    Ian, it sounds like you’re thinking of the difference between GPL and AGPL, not GPLv2 and GPLv3. GPLv3 only requires that you provide code if you link with it and then distribute the result as a product, not if you offer it as a service – that’s the “provider loophole” that AGPL exists to address. Many people do in fact use GPLv3 code in the manner you describe, and even the lawyers seem to believe they’re doing so legally.

    Leaving aside the question of whether it benefits a project to have users who don’t release most of their own changes back to the community, it’s not going to change anyway because it’s not under my control. If it were up to me I could see reasons I’d choose AGPL, LGPL, or – most likely – BSD/MIT. I’d never choose GPL because I think it’s simultaneously too restrictive about linking and too forgiving about the provider loophole, so IMO it fails to satisfy even its own avowed purpose. It’s not up to me, though. HekaFS is effectively bound by whatever license applies to GlusterFS, and Red Hat owns the copyright on both. If you’d like to contact Red Hat’s legal department, please let me know and I’ll find the right contact.