The software in this repository is under a number of licenses: # parabola sources bin/ GPL v2+ build-aux/ AGPL v3+ go/src/nshd/ GPL v2+ go/src/git.lukeshu.com/go/libgnulinux/crypt/ LGPL v2.1+ go/src/git.lukeshu.com/go/libgnulinux/dl/ GPL v2+, with documentation output clarification go/src/git.lukeshu.com/go/libgnulinux/getgr/ LGPL v2.1+ go/src/git.lukeshu.com/go/libnslcd/ LGPL v2.1+ go/src/git.lukeshu.com/go/libsystemd/ Apache v2.0 common.mk WTFPL 2 # third-party sources go/src/github.com/pkg/errors/ 2-clause BSD license go/src/golang.org/x/sys/unix/ 3-clause BSD license go/src/gopkg.in/check.v1/ 2-clause BSD license go/src/gopkg.in/yaml.v2/ Apache v2.0 The general notion is that the build system is AGPL (v3+), the core application is GPL (v2+), while supporting libraries that might be useful outside of this specific application are LGPL (v2.1+), with the exceptions: - The systemd package is Apache licensed because of code taken from CoreOS and Docker. - The dl package is GPL v2+ licensed because of wording in comments taken from the Linux Programmer's Manual. - pkg/errors, sys/unix, Gocheck, and YAML libraries use other licenses because they are 3rd-party libraries, and that's how the authors licensed them. The effective license of the 'nshd' program as a whole is GPL v3+; it links together code that is GPL v2+ with code that is Apache v2.0; the GPL v2 and Apache v2.0 are incompatible; while the GPL v3 (and presumably future versions) is compatible with Apache v2.0; so one is forced to take the "any later version" option on the GPL v2+ code. For more details, see each individual file.