1) My closed sourced software calls the GPL software on the command line like so: GPL.exe file. GPL produce output to stdout with the result. My closed source software reads the GPL output. Can I distribute them in the same installer?

2) If that is not possible (without releasing my code). Is it possible to build a downloader in the installer which downloads the GPL/CECILL software from the authors site and installs it on the customer machine? Which will then be argued that I did not distribute the GPL software, the user have downloaded it.


Yes, this should be possible. The use you are describing likely falls under the "mere aggregation" category. See this part of section 5 of GPL v3:

A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate.

And this answer in the GNU FAQ:

What is the difference between an “aggregate” and other kinds of “modified versions”? (#MereAggregation)

An “aggregate” consists of a number of separate programs, distributed together on the same CD-ROM or other media. The GPL permits you to create and distribute an aggregate, even when the licenses of the other software are nonfree or GPL-incompatible. The only condition is that you cannot release the aggregate under a license that prohibits users from exercising rights that each program's individual license would grant them.

Where's the line between two separate programs, and one program with two parts? This is a legal question, which ultimately judges will decide. We believe that a proper criterion depends both on the mechanism of communication (exec, pipes, rpc, function calls within a shared address space, etc.) and the semantics of the communication (what kinds of information are interchanged).

If the modules are included in the same executable file, they are definitely combined in one program. If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program.

By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program.

I am not sure what you are asking about the CeCILL software but the answer should basically the same: the FSF's viewpoint on this is ground in copyright law. Nobody should be able to prevent such kind of redistribution from the moment they do allow redistribution. (Of course, IANAL and this is subject to interpretation of what is a derivative work in copyright law, but the FSF interpretation on the distinction between a derivative work and an aggregate is generally well accepted, at least nobody defends a stricter interpretation.)

  • CECILL v2 should be compatible with GPL v2 (from my googling). Is that still applies to an installer downloaded from the internet? Moreover, there were some concerns that since the installer is an executable or MSI (most usually), then replacing the GPLV2 binary is not possible (only after install). The question is, if this is ok? If not, i'll have to make a complicated solution of the user first downloading a ZIP FILE (Which is also contested) and then open the zip and the GPLV2 binary will sit beside the installer so it can be replaced. Alternatively, auto download at install time. – Tzahi Apr 4 '17 at 7:32
  • @Tzahi: That's fine if the binary cannot be replaced (at least in v2). The user can still take the source, modify them and execute them. As for CECILL compatibility with GPL is only relevant if you combine the two programs into a larger one. Not if you distribute them side by side. – Zimm i48 Apr 4 '17 at 10:54
  • I was planning to put the source in the installer (to avoid having to provide CDROMs or FTP etc), but from what I understand you are saying, I have to provide a ZIP which includes the sources in it and the installer executable because they must be accessible pre-install. Is that correct? – Tzahi Apr 6 '17 at 6:46
  • @Tzahi: I would think that the installer can be considered part of the distribution process and that the source code is copied somewhere during the installation process seems OK w.r.t the license. – Zimm i48 Apr 6 '17 at 9:50

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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