I have a specific case here for which I could not find a clear answer here or on other pages. I am working for a company that is interested in using an open source code licensed under GPL v2.1. The software has machine learning and database components. The machine learning models are used, often in combination with the database, to solve specific tasks. My employer would like to use it internally for its own research. However, we would like to update it so that it works better for us. The modification would aim at improving the models and the database content, so that they are more accurate for the company. This will of course also force us to change the original source code so as to make use of the models. The modified version would be made available on an internal service platform that scientists will use only for internal research. There is no intention of selling/redistributing the software commercially.

  1. Does the company have to release the updates, since technically, the models and the database will be plugged into the source code?
  2. If we were to (a) refactor the code to make it flexible so that it would allow any user for dynamically plugging their own sets of machine learning models they train and a modified version of the database, and (b) release the refactored source code under GPL v2.1: Would we have to release the ML models or any addition to the database content. Your help would be appreciated.

Best, D

2 Answers 2


Lets take a look at what the GPLs creator, GNU, thinks about this:

Is making and using multiple copies within one organization or company “distribution”?

No, in that case the organization is just making the copies for itself. As a consequence, a company or other organization can develop a modified version and install that version through its own facilities, without giving the staff permission to release that modified version to outsiders.

However, when the organization transfers copies to other organizations or individuals, that is distribution. In particular, providing copies to contractors for use off-site is distribution.

Gnu GPL Frequently Asked Questions


There are requirements when the company distributes the app. And what distribution constitutes, that's not always quite clear.

Giving it to people outside the company is obviously distribution. Giving it to employees, quite possibly not. Giving it to a contractor - that's not at all obviously.

So you'd have to be very, very careful about what exactly you are doing.

If the company gives me a copy, together with source code, then I have the right to distribute it. They can of course tell me there will be consequences if I do. And others don't get any rights.

If the company gives me a copy, without the source code, then everyone in the world has the right to receive the source code. What I do is then quite irrelevant.

  • "They can of course tell me there will be consequences if I do.". The question is about the GPL, and the GPL specifically forbids that. "non-permissive additional terms are considered further restrictions ... you may remove that term".
    – MSalters
    Apr 17, 2020 at 15:07
  • Thank you all for your answers.
    – Yann
    May 22, 2020 at 16:12

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .