I had a bit of a chat at work concerning an ongoing project and I wanted to ask about it to a community who knows about GPL. I’m far from being an IT specialist (and a licensing specialist also) so checking the implication of using GPL programs seemed an important point to me.

Our company wants to modify and use a GPL 2 licenced (not LGPL) program on a standard PC that is part of the project. However, custom hardware, fully developed by the company, fetches and pushes information from the PC/program by the means of HTTP requests.

Our clients may use either the PC or the custom hardware. Note : we have no plan to sell this equipment, which remains for use in our workshop.

My main questions are:

1) Are we legally obligated to provide and maintain a public code depository for the modified version of the program? (this is not a problem and we will probably do it anyways, but I’m curious) My understanding is that yes, we are.

2) Are we legally obligated to share with publicly or on request the hardware plans and its software source code ? (obviously this is the big no-go for the company) I would say that no, we are not.

3) Are we legally obligated to licence the project as GPL ? (another no-go for the company) I would say that no, we are not.

If we were to sell the whole project to one or several clients, would question 2 & 3 be modified ?

  • GPL does not require you to offer code to the public. It only requires you to offer code to people you distribute (as in, sell or give) your software to. So if the people who install your software are your employees you MUST allow your employees to have access to the source code.. and NOBODY ELSE. Note however that your employees have full right to then redistribute the code to other people.
    – slebetman
    Commented Apr 11, 2023 at 4:18

2 Answers 2


First of all, as I understand it you have a computer with the software, but don't sell the computer but offer it to customers if the walk into your business (whatever that is). Is that right?

Based on this assumption:

1) You don't distribute the software (in binary form), as the computer only is available for you. So you're not obligated to release the source code. That would change if you sell the boxes including the software, as you now distribute the software, in that case you would have to release the source of the modified software.

2) The hardware is not affected by the program. It would be different if the hardware layout itself was derived from something that is under an copyleft or share-alike license, but as I understand the hardware is independent of the GPL-program you run on it.

3) Such obligation only can come from derivates of the GPL-program, so everything else, even other software on the same box, is unaffected by the GPL.


Disclaimer: I am not a lawyer, and don't try to play one on SE either. If you require clarity, retain a professional for advise.

The programs are one realm, the hardware a different one. Unless the hardware is somehow derived from the program (i.e., the hardware depends intimately on the programs that use it, and weren't written by you and clearly isolated from the GPL pieces), there is no reason to consider the hardware under GPL.

If the machines always reside at your site, and are used remotely, GPL deems this use by you, not distribution. You are free to do whatever you want. As I understand the legal niceties, if you install the machines at your client's, but retain full ownership, it isn't distribution either.

Unless you distribute the program, GPL doesn't request anything. If you do, you have to comply with it's stipulations. It is probably easiest to just hand the customer a CD with full source whenever you hand over the code (perhaps as part of installation media), and make clear they are to comply with GPL downstream. Keeping copies around to hand out to whoever might come along asking for "corresponding source code" for some long-forgotten limited distribution beta version quickly gets messy.

As a courtesy to users it is certainly a nice gesture to have a public repository with the full code, including old versions and even bleeding edge development. But GPL was written before the Internet came to be, let alone remotely accessible version control systems, so it is completely silent on this matter.

  • "GPL was written before the Internet came to be" as a nice point, I don't think that's true. GPLv2 is dated June 1991; I arrived at MIT in October 1991 as a young postdoctoral researcher, and MIT was very enthusiastically using, and well-connected to the rest of the internet, at that time. GPLv1 is dated Feb 1989, it is true, and it is possible they built the whole thing in the 2.5 years between then and me rolling in, but I doubt it. I also used the internet quite a lot in my doctoral work in London (1988-91). I agree it wasn't popular back then, but we definitely had it.
    – MadHatter
    Commented Feb 28, 2017 at 6:43
  • AFAIK renting is considered distribution. So I'll have to disagree with "if you install the machines at your client's, but retain full ownership, it isn't distribution either"
    – Zimm i48
    Commented Feb 28, 2017 at 8:52

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.