summaryrefslogtreecommitdiff
path: root/LICENSES
diff options
context:
space:
mode:
authorLuca Boccassi <luca.boccassi@microsoft.com>2021-09-29 18:42:57 +0100
committerLuca Boccassi <luca.boccassi@microsoft.com>2021-10-01 17:27:34 +0100
commit7fe57498de875396d989813fc2068442cf2c24ab (patch)
tree92f831893abbb03419b3c178df8f72b873182580 /LICENSES
parentf4d74c610584784a6b066d65239abdd00e2252e5 (diff)
downloadsystemd-7fe57498de875396d989813fc2068442cf2c24ab.tar.gz
add LICENSES/README.md explaining the license situation
Diffstat (limited to 'LICENSES')
-rw-r--r--LICENSES/README.md61
1 files changed, 61 insertions, 0 deletions
diff --git a/LICENSES/README.md b/LICENSES/README.md
new file mode 100644
index 0000000000..bbe05a06f2
--- /dev/null
+++ b/LICENSES/README.md
@@ -0,0 +1,61 @@
+# systemd Project Licensing
+
+## Main License
+
+The systemd project uses single-line references to Unique Licese Identifiers as
+defined by the Linux Foundation's SPDX project (https://spdx.org/). The line in
+each individual source file identifies the license applicable to that file.
+
+The current set of valid, predefined SPDX identifiers can be found on the SPDX
+License List at https://spdx.org/licenses/.
+
+The 'LICENSES/' directory contains all the licenses used by the sources included in
+the systemd project source tree.
+
+Unless otherwise noted, the systemd project sources are licensed under the terms
+and conditions of the **GNU Lesser General Public License v2.1 or later**.
+
+New sources that cannot be distributed under LGPL-2.1-or-later will no longer
+be accepted for inclusion in the systemd project to maintain license uniformity.
+
+## Other Licenses
+
+The following exceptions apply:
+
+ * some udev sources under src/udev/ are licensed under **GPL-2.0-or-later**, so the
+ udev binaries as a whole are also distributed under **GPL-2.0-or-later**.
+ * the header files contained in src/basic/linux/ and src/shared/linux/ are copied
+ verbatim from the Linux kernel source tree and are licensed under **GPL-2.0 WITH
+ Linux-syscall-note** and are used within the scope of the Linux-syscall-note
+ exception provisions
+ * the src/shared/initreq.h header is licensed under original license,
+ **LGPL-2.0-or-later**.
+ * the src/shared/linux/bpf_insn.h header is copied from the Linux kernel
+ source tree and is licensed under either **BSD-2-Clause** or **GPL-2.0-only**,
+ and thus is included in the systemd build under the BSD-2-Clause license.
+ * The src/basic/linux/wireguard.h header is copied from the Linux kernel
+ source tree and is licensed under either **MIT** or **GPL-2.0 WITH Linux-syscall-note**,
+ and thus is included in the systemd build under the MIT license.
+ * the following sources are licensed under the **MIT** license (in case of our
+ scripts, to facilitate copying and reuse of those helpers to other projects):
+ - hwdb.d/parse_hwdb.py
+ - man/glib-event-glue.c
+ - src/basic/linux/batman_adv.h
+ - src/basic/sparse-endian.h
+ - tools/catalog-report.py
+ * the following sources are licensed under the **CC0-1.0** license:
+ - src/basic/siphash24.c
+ - src/basic/siphash24.h
+ - src/systemctl/systemd-sysv-install.SKELETON
+ - tools/check-includes.pl
+ - all examples, code and scripts, under man/ except where otherwise noted
+ * the following sources are under **Public Domain** (LicenseRef-murmurhash2-public-domain):
+ - src/basic/MurmurHash2.c
+ - src/basic/MurmurHash2.h
+ * the following sources are under **Public Domain** (LicenseRef-lookup3-public-domain):
+ - src/libsystemd/sd-journal/lookup3.c
+ - src/libsystemd/sd-journal/lookup3.h
+ * the tools/chromiumos/gen_autosuspend_rules.py script is licensed under the
+ **BSD-3-Clause** license.
+ * any files under test/ without an explicit license we assume non-copyrightable
+ (eg: computer-generated fuzzer data)