views:

379

answers:

2

If I decide to use ExtJS under GPL v3 instead of a commercial license model (Dual License Model), what exactly do I need to open source?

I do not modify the library in any other way than configuration. Do I nevertheless need to publish the source code of my application? And if so, do I have to publish all code, even server side code?

A: 

What sort of application are you creating? Are you distributing it? The GPLv3 has some options; which, if any, does ExtJS use? How are you accessing the library?

First, the GPL gives an extension to the rights you'd have under copyright, and doesn't take away anything. If you could do X with a library without the GPL, you can do X under any GPL.

Therefore, the GPL only covers your code if it's part of a derivative work, and exactly what that means has to be decided by the courts. Statically linking software does make a derivative work, but there seem to be different opinions about dynamic linking. The FSF, which wrote GPLv3, believes that linking to a DLL creates a derivative work, but I've read that this isn't entirely clearcut. If your code communicates with the library without actually being linked in, it isn't a derivative work.

The GPLv3, if I remember correctly, does have some options, and can be used like an LGPL. In that case, you have to provide the library source, and make sure the user can recompile the source and link it into your software. I have no idea whether ExtJS is using these options or not.

The server software doesn't have to be opened under any circumstances. You aren't distributing it. It's sitting there under your control talking to the client you do distribute. There is a version called the Affero GPL, that claims to require opening up server software that uses it, but I really don't know if that would stand up in court.

So, depending on things you haven't told us, you might or might not have to publish the entire client. You don't have to publish the server code.

That being said, I'm not a lawyer, and this is not legal advice. If you want legal advice, hire a lawyer. It's not going to be all that expensive for a reasonably short consultation, and it can save lots of money down the road. In the US, find your local bar association and ask for a referral, unless you already have a lawyer who knows something about software licensing.

David Thornley
The distributed part of the application is written in HTML/Javascript. So its source code is available to everybody anyway. This part will be using ExtJS (also Javascript) as a library, but I do not modify the ExtJS source files. Does this expect me to provide the client-side code in any explicit way (e.g. link to zip file). Implicitly it is already brought to the public through using it in the browser.
prinzdezibel
Sounds like you're already distributing source (as long as it's not obfuscated; the GPL definition of source is the favored form for modifying it), so that shouldn't be a problem.
David Thornley
A: 

I think it's not about publishing or not your code, it's about licensing of your code. You must license your code as GPL, but not necessary disclose the code internals to public.

I think GPL isn't only about the open source, it's also about free usage.

Thevs