xref: /freebsd/contrib/xz/COPYING (revision 7899f917b1c0ea178f1d2be0cfb452086d079d23)
1
2XZ Utils Licensing
3==================
4
5    Different licenses apply to different files in this package. Here
6    is a summary of which licenses apply to which parts of this package:
7
8      - liblzma is under the BSD Zero Clause License (0BSD).
9
10      - The command line tools xz, xzdec, lzmadec, and lzmainfo are
11        under 0BSD except that, on systems that don't have a usable
12        getopt_long, GNU getopt_long is compiled and linked in from the
13        'lib' directory. The getopt_long code is under GNU LGPLv2.1+.
14
15      - The scripts to grep, diff, and view compressed files have been
16        adapted from GNU gzip. These scripts (xzgrep, xzdiff, xzless,
17        and xzmore) are under GNU GPLv2+. The man pages of the scripts
18        are under 0BSD; they aren't based on the man pages of GNU gzip.
19
20      - Most of the XZ Utils specific documentation that is in
21        plain text files (like README, INSTALL, PACKAGERS, NEWS,
22        and ChangeLog) are under 0BSD unless stated otherwise in
23        the file itself. The files xz-file-format.txt and
24        lzma-file-format.xt are in the public domain but may
25        be distributed under the terms of 0BSD too.
26
27      - Translated messages and man pages are under 0BSD except that
28        some old translations are in the public domain.
29
30      - Test files and test code in the 'tests' directory, and
31        debugging utilities in the 'debug' directory are under
32        the BSD Zero Clause License (0BSD).
33
34      - The GNU Autotools based build system contains files that are
35        under GNU GPLv2+, GNU GPLv3+, and a few permissive licenses.
36        These files don't affect the licensing of the binaries being
37        built.
38
39      - The 'extra' directory contains files that are under various
40        free software licenses. These aren't built or installed as
41        part of XZ Utils.
42
43    For the files under the BSD Zero Clause License (0BSD), if
44    a copyright notice is needed, the following is sufficient:
45
46        Copyright (C) The XZ Utils authors and contributors
47
48    If you copy significant amounts of 0BSD-licensed code from XZ Utils
49    into your project, acknowledging this somewhere in your software is
50    polite (especially if it is proprietary, non-free software), but
51    it is not legally required by the license terms. Here is an example
52    of a good notice to put into "about box" or into documentation:
53
54        This software includes code from XZ Utils <https://tukaani.org/xz/>.
55
56    The following license texts are included in the following files:
57      - COPYING.0BSD: BSD Zero Clause License
58      - COPYING.LGPLv2.1: GNU Lesser General Public License version 2.1
59      - COPYING.GPLv2: GNU General Public License version 2
60      - COPYING.GPLv3: GNU General Public License version 3
61
62    A note about old XZ Utils releases:
63
64        XZ Utils releases 5.4.6 and older and 5.5.1alpha have a
65        significant amount of code put into the public domain and
66        that obviously remains so. The switch from public domain to
67        0BSD for newer releases was made in Febrary 2024 because
68        public domain has (real or perceived) legal ambiguities in
69        some jurisdictions.
70
71        There is very little *practical* difference between public
72        domain and 0BSD. The main difference likely is that one
73        shouldn't claim that 0BSD-licensed code is in the public
74        domain; 0BSD-licensed code is copyrighted but available under
75        an extremely permissive license. Neither 0BSD nor public domain
76        require retaining or reproducing author, copyright holder, or
77        license notices when distributing the software. (Compare to,
78        for example, BSD 2-Clause "Simplified" License which does have
79        such requirements.)
80
81    If you have questions, don't hesitate to ask for more information.
82    The contact information is in the README file.
83
84