This is an overview of licensing options for software. The focus lies on code that is developed for and used in research and that should be made available free of charge to other researchers and the general public.
In case programmer(s), group leader, or the department consider to commercially exploit the software or have other needs, such as sharing the software with a specific academic partner, please stop here and get in touch with the Empa-Eawag Technology Transfer Office (TTO) *internal
If you create computer programs in the course of an employment relationship at Eawag, Eawag has far-reaching rights with regard to dissemination and use of these programs.
Eawag supports highest standards of research integrity and and champions Open Science. Therefore, Eawag makes it easy for researchers to publish software developed in the course of their work as Free/Libre Open Source Software.
Software developed at Eawag can be published freely, as long as the following conditions are met:
The rest of this guide is supposed to help researchers fulfil condition 2 easily, correctly and with minimal effort. If you have special requirements though, you can use any of the OSI-approved licenses or the CC0 Public Domain Dedication.
YES ⟶ Continue to "2. Do you use third-party code as part of your program?"
NO ⟶ talk to them and get their agreement!
YES ⟶
check for complications!
NO ⟶ Continue to "Choose and apply the license"!
Find the terms under which you obtained the code. There might be a file "LICENSING", "COPYING", "RIGHTS", "USAGE" or similar in the distribution. If that fails, have a look at the website where you downloaded it.
✅ If the third-parts software is in the public domain, you are all good.✅
Public domain software can often be recognised by the CC0 Public Domain Dedication or the Public Domain Mark. Software created by US federal government institutions such as NASA, NOAA, EPA, ... is usually in the public domain. Check the respective website.
✅ If the third-party software is licensed under one of the common Open Source Licenses recommended here, you are all good if you publish the combined program under the AGPL v3.✅
Common Open Source Licenses recommended here are:
The Affero GNU Public License (AGPL v3) is the most compatible one among the popular Open Source Licenses.✅ If the third-party software is licensed under a different Open Source License, which is listed as GPL-compatible, you are all good if you publish the combined program under the AGPL v3.✅
The Free Software Foundation maintains a list of GPL-compatible licenses. The Affero GNU Public License (AGPL v3) is the most compatible one among the popular Open Source Licenses.
❌ If you can't find a license or a
public-domain dedication, you can't
re-distribute the software as part of your
work. ❌
Get in touch with
the vendor or programmer of the third-party
software and obtain permission.
❌ If you obtained the software under a
proprietary license, you usually can't
re-distribute the software as part of your
work. ❌
Proprietary licenses are
most often attached to software you had to buy
and they usually prohibit re-distribution. Get
in touch with
the Eawag RDM
Team to try find a workaround.
There are three broad categories of license type that can be applied to research software. Eawag recommends to use the Affero GNU General Public License Version 3 (AGPL v3). This strong Copyleft license is the most compatible Open Source license and can be applied to most programs that incorporate third-party code under Open Source licenses.
The AGPL v3 guarantees the sustainable availability of the source code of your work as well as that of future derivatives, improvements and adaptions. Therefore it is best suited to support Open Science, reproducibility and transparency.
Other type of licenses suited for research software are permissive licenses and a copyright waiver that places your work in the public domain.
"Copyleft" licenses usually refer to the family of GNU Licenses published by the Free Software Foundation. The recommended version for researchers is the GNU Affero General Public License (AGPL) v3. These licenses aim to guarantee that the licensed software is and remains Free in the sense that "users have the freedom to run, copy, distribute, study, change and improve the software". The GNU/Linux operating system (commonly called "Linux") is Free Software.
COPYING
in the top directory
of your software distribution.
Copyright ©, <YEAR>, Eawag, <AUTHOR NAME(S)>, <AUTHOR E-MAIL ADDRESS(ES)>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public
License along with this program. If not, see
<https://www.gnu.org/licenses/>.
If you put software in the "Public Domain", you cede all rights (the "copyright") to the software and donate it to the world. This was the dominant mode of publishing research software from the beginning of research software into the 1990ies. Software developed by US federal employees has to be published in the Public Domain. Publishing research software into the Public Domain is still popular with researchers who do not want to have anything to do with legal issues and believe that research output should belong to humanity. Note: Technically this is not a "license" but rather a "waiver".
Include the following notice at the top of each file:
Written in <YEAR> by <AUTHOR NAME> <AUTHOR E-MAIL ADDRESS>
[other author/contributor lines as appropriate]
To the extent possible under law, the
author(s) have dedicated all copyright and
related and neighboring rights to this
software to the public domain worldwide. This
software is distributed without any warranty.
You should have received a copy of the CC0 Public Domain
Dedication along with this software. If not, see
http://creativecommons.org/publicdomain/zero/1.0/.
It is also recommended that you include a file called COPYING containing the CC0 legalcode as plain text in root directory of the distribution.
This recommendation was taken from the Creative Commons Wiki which is made available under the Creative Commons Attribution 4.0 license.
"Permissive licenses" have gained a lot popularity since the 2010s, but not necessarily among researchers. The main practical difference, compared to the Public Domain, when applied to research software, is the legal requirement to give the original creator of the software credit in the form of a retained copyright statement when the software or derived works are re-distributed.
There are a large number of licenses in this category but the two most popular ones should be sufficient to cover the vast majority of use cases:
Copyright ©, <YEAR>, Eawag, <AUTHOR NAME(S)>, <AUTHOR E-MAIL ADDRESS(ES)>
[other author/contributor lines as appropriate]
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Copyright ©, <YEAR>, Eawag, <AUTHOR NAME(S)>, <AUTHOR E-MAIL ADDRESS(ES)>
[other author/contributor lines as appropriate]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Include a file called COPYING containing the Apache 2.0 legalcode as plain text in root directory of the distribution.
Proprietary software is all software that is made available under conditions that do not allow free use, modification and re-distribution. Using proprietary software to generate research results is a problem because it usually prohibits or hinders reproducibility and transparency, which are core scientific principles.
Software written by researchers often becomes proprietary by accident: If you do not license your software, copyright law ("Urheberrecht") applies automatically. Any software encumbered with full copyright restrictions is practically not usable for other researchers. It is important that you license your software or waive the copyright!.
Even if the copyright restrictions of your software are not mitigated by a licence or a copyright waiver, everybody can run it as they see fit.
If your software provides you a competitive advantage and you do not want other researchers to profit from it, you have to keep it secret. There is no obvious way to keep part of your methods (the software) secret and at the same time have your results recognised as valid scientific output.