We planned to build a machine with integrated Raspi running on Raspian Buster.

To control the machine we developed a web-based software using .net core 5.0, no part of the software is GPL-ed

If we sell the system as a whole, do we have to:

Release the source code of our software?

Pay, in any way, for Linux?

Pay for the Chromium Browser that is used to interface with the Web-based software?

Thank you for your help!

  • 1
    You will need to make available the sources at least to your customer in the very same form you use to build the binaries from. Which parts or all - depends on what exactly you do and how it interacts --> more information needed. Did you have at least a cursory glance at the licenses, though, or are they an afterthought now? So please clarify a bit more how things work in detail. Apr 7 '21 at 9:57
  • Hi @planetmaker we developed it on the .Net Core 5.0 platform. The software will run on the Microsoft dotnet runtime, which will run on Linux. We did some research on the topics but the answers we found on the internet are contradictory. Some defined this as an "aggregate" in GPL term, which means we don't have to make our source code GPL. But I am not sure on that for the case of runtime-dependent software.
    – vtcon
    Apr 7 '21 at 13:34
  • 1
    Well, as far as Linux is concerned, your own software shouldn't be affected if it is just a regular program (as opposed to a device driver, for example). The GPL used by Linux has a preamble stating as much. However, you still have to comply with the GPL when distributing the device, because it will contain GPL licensed software. You should also be aware that the Linux kernel won't be the only GPLed software on your device, because you use an entire distribution (which includes tons and tons of software besides the kernel itself)
    – Felix G
    Apr 7 '21 at 13:53
  • Can you be more precise about what you mean by "runtime-dependent software"?
    – MadHatter
    Apr 7 '21 at 13:54
  • Hi @MadHatter , i meant that without the dotnet runtime my software can not run. The question here is if dotnet runtime is GPLed, does my software get GPLed? ---- Edit: I just checked, dotnet is under MIT license
    – vtcon
    Apr 7 '21 at 14:53

You have written some application code de novo. This code is linked to the Microsoft .net runtime libraries, which are themselves under an MIT licence (as you, and others, note above). You intend to distribute this as part of a commercially-available appliance, running on a Raspberry Pi which will itself be running Raspbian (now known as Raspberry Pi OS). You want to know what your licensing obligations are, and particularly whether you have any obligation to distribute your code under a free licence. You also want to know whether you have any obligation to pay the upstream providers (of, eg, Raspbian).

Looking first at your executable, the MIT licence on the .net core libraries does not oblige you to open up the source of your application. The mere fact of your application being distributed alongside GPL code (including, but not limited to, the Linux kernel) doesn't extend GPL obligations to your code, which is either merely aggregated with it for the purposes of distribution, or falls under exceptions such as the kernel's syscall exception.

However, you are still distributing a whole selection of free software, some GPL, some under more permissive licences, when you distribute your appliance. This will impose certain obligations on you with respect to provision of source for that free software, labelling, preservation of notices, and the like. We cannot possibly list all those obligations here; it's your responsibility to know and comply with them.

You are not obliged to buy any sort of commercial licence to use Raspbian or Chromium in this way.

And finally, of course, IANAL/IANYL; if you're going to bet a business on this strategy, you should consult a lawyer professionally.


It is up to whoever makes the purchase, but it is better to notify him before the sale process ... that the source code will remain with you to work on developing it, provided that you take a percentage of the program's profits upon each new discovery, and God bless.

  • 3
    For your reference: this answer is entirely wrong in the context of open source. If you use open source software, the vendor (strictly, the distributor) must comply by the terms of the open source licenses. Neither they, nor the purchaser, get full control over the terms of distribution. Apr 7 '21 at 17:29

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.