I'm thinking about writing a cloud app that uses wasm-git. wasm-git is licensed under GPL v2.

Since wasm-git runs in the browser, users of my cloud app would get a copy of wasm-git when they open my home page in the browser, so my assumption is that this is considered a "distribution", and therefore my cloud app needs to be licensed under GPL v2 as well. Correct?

  • As long as you are just thinking, you don't risk much. Once you are deploying your application, you should be concerned Commented May 13, 2020 at 13:39

2 Answers 2


wasm-git (and the libgit2 library it is built around) use the GPLv2 with linking exception. This exception reads:

In addition to the permissions in the GNU General Public License, the authors give you unlimited permission to link the compiled version of this library into combinations with other programs, and to distribute those combinations without any restriction coming from the use of this file. (The General Public License restrictions do apply in other respects; for example, they cover modification of the file, and distribution when not linked into a combined executable.)

Normally, using GPL-covered code in a webapp frontend would trigger the full breadth of GPL license conditions, such as offering the complete corresponding source code of your frontend under a GPL-compatible license. This is clearly a kind of distribution or copying, especially since recipients would be able to make further copies from the file they downloaded from your servers. It is clearly not distribution if the wasm-git files are only used on your backend.

But due to the linking exception, you can integrate an unmodified wasm-git “binary” into your frontend, without extra license obligations. This linking exception is more permissive than e.g. the LGPL. But as I read the linking exception, you should still offer the complete corresponding source code for wasm-git and libgit2 to recipients of the software, and provide them a copy of the license. The code you write is unaffected by the license, though.

Do read the libgit2 license carefully since it includes a lot of bundled software, including some under the LGPL (which is similar to the linking exception, but requires you to enable users to use the software with a modified version of the LGPL-covered code – tricky in a web context due to CORS).


GPL v2: what does “distribution” mean in terms of cloud apps?

You need a lawyer.

Since you are asking:

Does my cloud app needs to be licensed under GPL v2 ?

This depends upon several factors:

  • Your legal system (USA is not the same as the European Union or the Chinese one).
  • Your ethical values (you might have motivations, including economical ones, to contribute to an open source project; software quality is a good one; but do read about free software)
  • Your business model

Notice the subtle difference between GPLv2 and GPLv3 and AGPL. Ask your lawyer to explain it to you.

Notice that I am not a lawyer

Remember that free software is free as in speech. There are lots of corporations making profit with open source software and paying developers full time on it. Read of course the Simple Economics of Open Source paper.

Remember that most contributors to the Linux kernel (a GPLv2 program) are paid for their work. You probably know that a lot of cloud computers are running some variant of that Linux kernel.

My recommendation: first contact the authors (contributors) of wasm-git and ask them for advice. It could be cheaper to ask than to pay a lawyer. (there might ask you money, but less than your lawyer would).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.