You know, I’m not sure that you can. The more I dig into this, the less I think so. Or at least, not without a whole heck of a lot more work.

No citations. Do some reading. Formerly, Linden Lab licensed viewer source-code under the “GPLv2 with FLOSS exceptions.”

What the heck does that mean? It means that the basic source-code was licensed under the GPL (version 2) (and that anyone distributing it in whole or in part can only do so if they comply with those terms). The “FLOSS exceptions” part was a little add-on to let the code be linked to binary libraries (for sound, media decoding and so on) that would not ordinarily be permitted under the GPL alone.

That’s how it was.

Now what we have is the viewer source code bundled up as LGPLv2. Where’s the FLOSS exceptions? No longer there, because you can link LGPL code to proprietary binaries, and that’s okay.

But wait…

Let’s look at that briefly.

2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

  • a) The modified work must itself be a software library.
  • b) You must… etc…

Yes, there’s the kicker. If you modify the source code prior to distribution, the result must be a library. The LGPL is (primarily) for libraries. While the license mentions that you can apply it to applications, well… you can. It’s just almost useless if you do.

So, there are two ways out of this trap.

One, you can convert the entire viewer tree into a library, compile it that way, and write a wrapper program (licensed however you like, but probably under the GPL to satisfy Linden Lab) to jump into it and pretend it’s a whole application and that you didn’t have to do all of that in the first place.

Second, you can take all the LGPL code and convert it to GPL code as a one-time, one-way conversion.

Then your source is back to where we started before the LGPL was used, right?

Wrong.

You don’t have any FLOSS exceptions anymore, so none of that naughty linking to anything that isn’t also GPL compatible. Period.

Quicktime? Can’t have it. In fact, there’s a whole bunch of media decoders you can’t have, because GPL versions simply do not exist.

Voice? No.

And probably a dozen other things.

Okay, so someone tell me I’m wrong here, because the new system looks like a legal nonsensicality that makes it almost impossible to build third-party viewers without breaking the license terms… and that’s before we look at anything to do with the third-party viewer policies.



  • Support us

    Writing is my day job. Site advertising pays for the hosting, but nothing else. Help keep us in coffee and keyboards

    ... or donate in Second Life at this location.

  • ...or use Flattr

  • Read previous post:
    Close