Of licensing
Sunday, December 24th, 2006So Adium always has and always will be Open Source. Even the Adium 1.x codebase (not to be confused with the Adium X 1.x codebase) has been.
However, there’s all of these different problems associated with Open Source in general. For instance, a portion of the developers currently working on Adium prefer the BSD (the new bsd, 3 clause not the old 4 clause) license. And while a lot of them do, we can’t really change the licensing.
Open Source itself is rather funny in that if someone contributes something, what say do they get from then on out? Assumably they get a say over their contributions, but in reality they get a say over the entire kit. For instance, if I submitted a patch that was GPL for one of the more useful classes in the codebase, and it was accepted, the codebase could no longer be changed to say.. LGPL, until the Adium Project got my permission to change the license, or they redid my code with a clean room setup.
Clean Room?
But Chris, you ask, Chris, what is a “clean room” implementation? My apartment is pretty clean, is that it?
Why no. It’s actually kind of involved. Basically one guy reads and documents the code you want to relicense, and then another guy (or girl! girl hackers rule) writes new code based on the documentation. The bonus is you get a rewrite, and the con is the time spent plus losing already tested code.
GPL V3?
So the interesting bit to this, and why I am posting this in the hopes of getting a response, is how do we take this with Adium? We’ve got a ton of code from people we just can no longer contact. We attempted to contact them all about 8 months ago in order to relicense or at least just have their approval in the future. As such, since it’s GPL V2 that they submitted in, how can we really move to a BSD license?
Or better yet, how do we move to the GPL v3? Now, I know the licensing states that we can, but that’s just a technicality. What about the moral ramifications of doing so? What if one of our contributors hates the GPL V3 and doesn’t want anything to do with it? How are we to know their wishes, and what if anything do we do about it?
Or better yet, we use OTR for encryption, could that be misconstrued as DRM in a court of law? I’ve seriously had someone ask me this.
The reason I ask this is because the GPL V3 is already held with a lot of contention in the Linux community, but nobody has really spoken about it in the Mac community as such. For instance, does any code compiled by gcc with a GPL V3 license mean that iTunes cannot be compiled with it, since it has DRM built in?
Stop yer yammering
So ya, it’s kind of interesting I suppose.