I released a project under GPLv2 license on GitHub. But this project is not distributed as binary by itself. It is only available in a packaged offer along other components. As original licence owner I understand that I can also distribute my work using non Free Licenses.

The result is that the GPLed project is publicly available as Source Code on github but nowhere as an executable binary (even if I provide the scripts enabling to create a binary package with the source).

Some third party firm picked that project, made it a binary and embedded it with work of it's own. That firm added significant work of it's own and published it under GPLv3... but it is not distributing the source code of my project along their's.

They are practically hiding my work as if it didn't existed even if it is distributed as binary in their product. For all I know I can't even be sure my project wasn't modified and I can't see how their customer would know my project even exists inside their product.

Is this a violation of the GPL as I believe ? If it is, what is the best way to fix it ? I believe that either them publishing the source of the version of code they compiled or even redirecting customers to my project for that component could be OK. But as of their current behavior I'm feeling cheated.

Really I'm not even clear that publication of a source code without distribution of binaries is a transmission.

Does anyone already encountered a similar case ? It looks not that uncommon.

  • 5
    Can you request the source after purchase? If so it's not in violation. Oct 8, 2015 at 13:34
  • 4
    The very point of the GPL is to ensure that every recipient of the binary also receives the source code. However, to find out what the best strategy is to get someone to comply with it, you should ask [email protected] - they're the experts!
    – Kilian Foth
    Oct 8, 2015 at 13:35
  • 2
    @ratchetfreak: from their website they are redirecting people asking for source code to a repository containing only their original contribution. Henceforth, no, they do not provide my source code if someone is looking for it. They act as if my project were not used.
    – kriss
    Oct 8, 2015 at 13:50
  • 4
    In that case, it's a clear GPL violation. Ask them nicely, and then send their webhost or github a DMCA takedown notice.
    – pjc50
    Oct 8, 2015 at 14:36
  • 3
    The binary is a "derived work"; it's a comparable situation to including copyrighted music in a youtube video.
    – pjc50
    Oct 8, 2015 at 20:10

2 Answers 2


Under the GPL, they are obliged to release the source of the binary or binaries they distribute.

As I understand from the comments, they are distributing a binary built from your source, but they are not making the source of the binary available. That is a GPL violation.

How to enforce they abide to the license terms is a separate question, one that has been dealt with in, for example, Someone is violating the copyleft license, they are refusing to give me the source code even though they are required to!

The most practical advice is to contact the FSF, who have a guide for dealing with GPL violations.


To answer the title question, yes the seller of GPL software must make the source available. However, they do not have to make the source available to anyone that asks for it. They only have to make the source available to those people that they have distributed the binary to. If they have not given you a binary they don't have to give you the source.

If you believe they are in violation of the GPL terms you should send them a cease and desist letter (you don't need a lawyer to do this). If you are not sure if they are in violation send them a nice letter outlining your concerns and see what they say.

Based on their response you can decide what your next step is.

  • 2
    Actually, their responsibility to provide the source-code also applies to those getting their binaries second- or n-th-hand.
    – Deduplicator
    Oct 8, 2015 at 23:44
  • This is (more or less) the right answer. The GPL only requires that the source be made available by request. It's simply easier to distribute the source "by default" so that you don't have to handle requests for it.
    – RubberDuck
    Oct 9, 2015 at 12:46
  • but how can you ask for the source of a software you don't know about because it is hidden behind a wrapper ? Of course from the source of the wrapper you can conclude that parts of the code are missing. But (as a user) I understand that called components are integral parts of the complete application. Henceforth they should either be clearly identified as separate products or provided with the wrapper source. When several software are provided tgether in an application the user don't care that much who wrote the software (his contact or some third party).
    – kriss
    Oct 9, 2015 at 21:24
  • 1
    @kriss you should notice something is missing fairly quickly if you try to compile/run it from source, no?
    – Martijn
    Oct 10, 2015 at 8:29
  • @Martijn: when it's about rbuilding a complex appliance setting from a bunch of source files, it's not that easy to know if something doesn't work because the system is not configured properly or because some pieces are missing. It's unclear to me that providing working configuration files is required by GPL. And in many cases without these configuration files basically nothing in running. Of course it's easier if you are specifically looking for something. But to be sure every used component is provided ? Bah!
    – kriss
    Oct 11, 2015 at 0:32

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.