Hacker News new | ask | show | jobs
by bobds 5318 days ago
How does the dual licensing work exactly?

Can't we just use the GPLv3 version on any commercial (or personal) website? As long as I'm not redistributing commercial software with Kendo included, I am within the rights GPL grants me, right?

2 comments

I'm not familiar with the new stipulations in GPLv3 and their potential effect on this, but if I had to guess, I would guess that Kendo is relying on the GPL's infectiousness; there is a clause that requires all linked code to use the same license. I suppose Kendo may make a claim or intimate that the terms of the GPL require at least your JavaScript to be identically licensed. GPLv3 may have strengthened or clarified these provisions in light of the massive proliferation of internet applications; again, I am not versed in the modifications of GPLv3 (and I'm not a lawyer, either).

They may also just be falling back on the old corporate dogma that employees are not allowed to touch a GPL library with a ten-foot pole. Or the old corporate dogma that everything needs a support contract so that managers can CYA.

There is a AGPL[1] license for web apps. But if you package it in your mobile apps, then GPL should suffice.

[1] http://en.wikipedia.org/wiki/Affero_General_Public_License

Under GPL3, if you make KendoUI components available via hosted solution, I think you'd have to release your app's entire source. I think GPL3/commercial dual licensing is a very unattractive licensing approach, but that's just my view.

CORRECTION: My comment is only true under the Affero GPL.

If you use GPL3 licensed software in the backend, you wouldn't have to release the entire source, as long as you don't distribute the software. Which is why AGPL was created. But something like HTML UI components can't really be used without being used over the network, so not sure if it makes any difference here. Anybody know better? Edit: I see that DanielRibeiro has an answer about mobile apps.

"The GNU Affero General Public License

The GNU Affero General Public License is based on the GNU GPL, but has an additional term to allow users who interact with the licensed software over a network to receive the source for that program. We recommend that people consider using the GNU AGPL for any software which will commonly be run over a network. The latest version is version 3."

http://www.gnu.org/licenses/index_html

You are correct. I was forgetting the distinction between GPL3 and AGPL3.
I think that since the only code that is directly linking to the library is your JS, that needs to be released according to the GPL. So if you don't minify everything, you are probably complying already. Otherwise you'd have to provide access to your unminified JS source.
Providing access to your unminified JS is not the same as releasing your JS under the GPL. The GPL explicitly allows anyone to modify and redistribute the software, which is not necessarily a privilege you would otherwise grant when you give someone JS to execute.

I'm not certain whether including a GPL library with your JS code requires you to license your JS as well under the GPL, but if it does then simply choosing not to minify won't be enough protection.