Background: I'm writing in-house software - it has absolutely no contact with the world outside the company - but I'm using various libraries, which themselves do have some license structure. So for example GPL requires that software that re-uses the a GPL-licensed piece of code, to also be under GPL-license. Does that require my in-house application to have an explicit GPL-license, or is this understood implicitly? Does using AGPL-licensed code, require my code to be available to co-workers who use the in-house system?

Question: Does my in-house software need to have an explicit license, to be compliant with the licenses of such libraries? In what cases does in-house software need to have its own license?

  • 3
    contact the legal department of your company, it's them that will have to deal with the fallout of this type of screw-up – ratchet freak May 27 '13 at 10:27
  • 1
    I think this part of the GPL FAQ pretty clear: gnu.org/licenses/gpl-faq.html#GPLRequireSourcePostedPublic, it should answer your question. – Doc Brown May 27 '13 at 10:59
  • Why not just explicitly license it anyway? That will clear up any confusion other workers now or in the future when you've left will have. – James May 28 '13 at 8:38
  • @James - because creating an explicit license is more work, and if work can be avoided... you know how this continues :) A license needs to be validated by the Legal dept - and before I get them involved I better have a good reason. – Rafael Emshoff May 28 '13 at 8:56

According to the GPL FAQ:

Does the GPL require that source code of modified versions be posted to the public?

The GPL does not require you to release your modified version, or any part of it. You are free to make modifications and use them privately, without ever releasing them. This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization.

But if you release the modified version to the public in some way, the GPL requires you to make the modified source code available to the program's users, under the GPL.

So your program that uses GPL code does not need to have a specific license as long as it is used only internally. However, "internally" ends when it runs on a public server:

However, putting the program on a server machine for the public to talk to is hardly “private” use, so it would be legitimate to require release of the source code in that special case. Developers who wish to address this might want to use the GNU Affero GPL for programs designed for network server use.

Note that the wording implies this is a corner case and a court might not uphold this view.

  • And I Am Not A Lawyer! – NWS May 27 '13 at 13:27
  • +1 You can run GPL code on a public server without having to release your source. But AGPL is different: if you run AGPL code on a public server, you must release your source to the public. That's the difference between GPL and AGPL. – MarkJ May 27 '13 at 14:03
  • Example: When you run your website on a modified LAMP (Linux+Apache+MariaDB+PHP) stack, you don't have to publish the sourcecode of any of these components on your website. – Philipp May 28 '13 at 7:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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