3

If I want to distribute a GNU/Linux distribution as a .iso, I must :

  • Distribute the source code of the Linux kernel
  • Distribute the source code of any GPL (or some other license) package included in the .iso

Must I also release the source code of the build tools I wrote (for example the tool to build the .iso, or the package manager) ?
Must I release something else ?

  • 2
    No, but why wouldn't you? – curiousdannii Jul 24 '18 at 21:50
2

You are not required to release the build tools for the image. I would argue that the image contains/aggregates various other software and just arranges them in a way that allows the image to be used for booting. An .iso file is not fundamentally distinct from a ZIP or TAR archive. You therefore have to comply with the licenses for all included software. For binaries that are under various GPL versions (e.g. the GNU userland and the Linux kernel) this requires you to offer the corresponding source.

But your image is not derivative of that included software. The image can also include proprietary software and be itself distributed under a proprietary license, as long as that doesn't violate the license for the GPL-licensed components. A classic example of this is any proprietary Android ROM.

Note that the GPL never forces you to publish any software that you wrote. However, if something you write is derivative of a GPL'ed work, then you can only publish it under the terms of the GPL. If you publish binaries of GPL software you have to offer the Corresponding Source which includes build scripts etc. so that users can exercise their right to make their own changes to the software. But here those GPL'ed binaries are inside the image, and not the image itself.

1

If it's your code, you don't have to release it, but it's best practice to do so anyway.

Basically, it breaks down to the following:

  • If you've used open source code to create these build tools, then you'll need to release them under a license compatible with the license of the code they're based on.
  • If you wrote them completely from scratch, then you are the copyright holder, and you may choose to release them under any license you see fit, or keep them entirely to yourself.
  • If you're using these build tools to ease the development of an open source project, releasing them (usually [but not necessarily] under a license compatible with the project, if not the same license as the project) is greatly appreciated by any others who may want to collaborate on the project.

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.