I'm now doing my internship in a government company (in India) and I've been assigned a project to create an online forum for the company..

I'm about to use phpBB forum software to create it, which is licensed under GPL. The created forum will later be put online in the company's website.

Now my question is, does the government need to release the modified source code? Does it have to be definitely licensed under GPL ?

  • 1
    The software itself is already publicly available, so everybody already have access to the source code anyway. What else could you possible publish?
    – scriptin
    Jun 24, 2016 at 16:57
  • 1
    The modifications provided to the original source code...
    – gvo
    Jun 24, 2016 at 17:27
  • It depends on which version of the GPL. Running forum on your servers and letting users access it via web browser is not distribution for GPLv2, but is for AGPLv3. GPLv3 isn't quite that strict on defining distribution but has its own quirks. Otherwise, to be considered Free software, there can be no restrictions on fields of endeavor no discrimination against persons or groups. More info on opensource.stackexchange.com
    – ivanivan
    Jun 28, 2018 at 1:38

3 Answers 3


The GPL licence does not requires you to publish the modifications. It only requires that if you provide the software to someone, you should provide him the source code and the right to distribute it.

I suppose that you will use the code internally only (which applies even if you have external user, you don't distribute them the software, so you don't have to publish your source code)

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.

Thus, the GPL gives permission to release the modified program in certain ways, and not in other ways; but the decision of whether to release it is up to you.

Source : https://www.gnu.org/licenses/gpl-faq.en.html#GPLRequireSourcePostedPublic

Besides those legal aspects, generally governments are friendly with open-source, so if you create module that has value for the community, it might be nice to see whether your are allowed to distribute it (under the GPL licence of course).


If you are an intern, that question is not one that you should even try to answer. Your boss should be made aware that you want to use this GPL licensed software, and he needs to agree with it. If he agrees, you are fine. If he doesn't agree, don't use the GPL licensed software. If using the software forces your boss to do something that he doesn't want to do, you are in trouble.

As an example, if your boss has the excellent idea to share this software with another government company to save cost, there are legal consequences that he needs to be aware of. (Legal implication that you need to be aware of: You can distribute modified GPL software in two ways. By giving a promise to anyone on earth to give them a copy of the source code when requested, or by distributing the code together with the source code. So the boss would need to know this and likely chose distribution accompanied by source code, which means there are no further legal obligations at all).

  • 1
    Sound advice. An intern should always ask their boss / mentor. He / she should not be expected to make important decisions. This advice also applies to non-interns in a situation where 1) you are not aware that the company has a policy on using open source, or 2) what you proposing to do something that might get the company into hot water.
    – Stephen C
    Jun 25, 2016 at 0:27

If you run the code on your own servers without distributing it, you don't have to release your source code. If you distribute your code which links to the GPL code, then you must release your source code. If you distribute any modified GPL code, you have to release the modifications, even if your code does not link to it.

Technically I think this means that if you use a hosting company, you are bound to distribute the source code to them when you install your code. Since PHP isn't compiled, this should just happen naturally.

What's linking? PHP (like Java) isn't statically linked, so the FSF defines linking as one piece of code directly accessing another on the same (virtual or physical) machine - like a procedure call or using a public variable. Merely distributing two unrelated pieces of code on the same CD or in the same zip file does not constitute linking. Merely starting a program is not linking.

IANAL and this is not legal advice, but rather my best guess.

  • 3
    "Technically I think this means that if you use a hosting company, you are bound to distribute the source code to them when you install your code." -- no, there's a specific clause that means this isn't necessary: "You may convey covered works to others for the sole purpose of having them [...] provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright."
    – Jules
    Jun 24, 2016 at 22:51

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.