RE: [PATCH v11 1/2] LICENSES: Add the copyleft-next-0.3.1 license

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Luis Chamberlain <mcgrof@xxxxxxxxxxxxx> On Behalf Of Luis Chamberlain
> Subject: [PATCH v11 1/2] LICENSES: Add the copyleft-next-0.3.1 license
> 
> Add the full text of the copyleft-next-0.3.1 license to the kernel
> tree as well as the required tags for reference and tooling.
> The license text was copied directly from the copyleft-next project's
> git tree [0].
> 
> Discussion of using copyleft-next-0.3.1 on Linux started since June,
> 2016 [1]. In the end Linus' preference was to have drivers use
> MODULE_LICENSE("GPL") to make it clear that the GPL applies when it
> comes to Linux [2]. Additionally, even though copyleft-next-0.3.1 has
> been found to be to be GPLv2 compatible by three attorneys at SUSE and
> Redhat [3], to err on the side of caution we simply recommend to
> always use the "OR" language for this license [4].
> 
> Even though it has been a goal of the project to be GPL-v2 compatible
> to be certain in 2016 I asked for a clarification about what makes
> copyleft-next GPLv2 compatible and also asked for a summary of
> benefits. This prompted some small minor changes to make compatibility
> even further clear and as of copyleft 0.3.1 compatibility should
> be crystal clear [5].
> 
> The summary of why copyleft-next 0.3.1 is compatible with GPLv2
> is explained as follows:
> 
>   Like GPLv2, copyleft-next requires distribution of derivative works
>   ("Derived Works" in copyleft-next 0.3.x) to be under the same license.
>   Ordinarily this would make the two licenses incompatible. However,
>   copyleft-next 0.3.1 says: "If the Derived Work includes material
>   licensed under the GPL, You may instead license the Derived Work under
>   the GPL." "GPL" is defined to include GPLv2.
> 
> In practice this means copyleft-next code in Linux may be licensed
> under the GPL2, however there are additional obvious gains for
> bringing contributions from Linux outbound where copyleft-next is
> preferred. A summary of benefits why projects outside of Linux might
> prefer to use copyleft-next >= 0.3.1 over GPLv2:
> 
> o It is much shorter and simpler
> o It has an explicit patent license grant, unlike GPLv2
> o Its notice preservation conditions are clearer
> o More free software/open source licenses are compatible
>   with it (via section 4)
> o The source code requirement triggered by binary distribution
>   is much simpler in a procedural sense
> o Recipients potentially have a contract claim against distributors
>   who are noncompliant with the source code requirement
> o There is a built-in inbound=outbound policy for upstream
>   contributions (cf. Apache License 2.0 section 5)
> o There are disincentives to engage in the controversial practice
>   of copyleft/ proprietary dual-licensing
> o In 15 years copyleft expires, which can be advantageous
>   for legacy code
> o There are explicit disincentives to bringing patent infringement
>   claims accusing the licensed work of infringement (see 10b)
> o There is a cure period for licensees who are not compliant
>   with the license (there is no cure opportunity in GPLv2)
> o copyleft-next has a 'built-in or-later' provision
> 
> The first driver submission to Linux under this dual strategy was
> lib/test_sysctl.c through commit 9308f2f9e7f05 ("test_sysctl: add
> dedicated proc sysctl test driver") merged in July 2017. Shortly after
> that I also added test_kmod through commit d9c6a72d6fa29 ("kmod: add
> test driver to stress test the module loader") in the same month. These
> two drivers went in just a few months before the SPDX license practice
> kicked in. In 2018 Kuno Woudt went through the process to get SPDX
> identifiers for copyleft-next [6] [7]. Although there are SPDX tags
> for copyleft-next-0.3.0, we only document use in Linux starting from
> copyleft-next-0.3.1 which makes GPLv2 compatibility crystal clear.
> 
> This patch will let us update the two Linux selftest drivers in
> subsequent patches with their respective SPDX license identifiers and
> let us remove repetitive license boiler plate.
> 
> [0] https://github.com/copyleft-next/copyleft-next/blob/master/Releases/copyleft-next-0.3.1
> [1] https://lore.kernel.org/lkml/1465929311-13509-1-git-send-email-mcgrof@xxxxxxxxxx/
> [2] https://lore.kernel.org/lkml/CA+55aFyhxcvD+q7tp+-yrSFDKfR0mOHgyEAe=f_94aKLsOu0Og@xxxxxxxxxxxxxx/
> [3] https://lore.kernel.org/lkml/20170516232702.GL17314@xxxxxxxxxxxxx/
> [4] https://lkml.kernel.org/r/1495234558.7848.122.camel@xxxxxxxxxxxxxxx
> [5] https://lists.fedorahosted.org/archives/list/copyleft-
> next@xxxxxxxxxxxxxxxxxxxxxx/thread/JTGV56DDADWGKU7ZKTZA4DLXTGTLNJ57/#SQMDIKBRAVDOCT4UVNOOCRGBN2UJIKHZ
> [6] https://spdx.org/licenses/copyleft-next-0.3.0.html
> [7] https://spdx.org/licenses/copyleft-next-0.3.1.html
> 
> Cc: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
> Cc: Kuno Woudt <kuno@xxxxxxx>
> Cc: Richard Fontana <fontana@xxxxxxxxxxxxxxx>
> Cc: copyleft-next@xxxxxxxxxxxxxxxxxxxxxx
> Cc: Ciaran Farrell <Ciaran.Farrell@xxxxxxxx>
> Cc: Christopher De Nicolo <Christopher.DeNicolo@xxxxxxxx>
> Cc: Christoph Hellwig <hch@xxxxxx>
> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> Cc: Jonathan Corbet <corbet@xxxxxxx>
> Cc: Thorsten Leemhuis <linux@xxxxxxxxxxxxx>
> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>
> Signed-off-by: Luis Chamberlain <mcgrof@xxxxxxxxxx>
> ---
>  LICENSES/dual/copyleft-next-0.3.1 | 236 ++++++++++++++++++++++++++++++

I'm OK with this license going into the LICENSES/dual directory, and being used
as an "OR" along with GPL-2.0.

>  1 file changed, 236 insertions(+)
>  create mode 100644 LICENSES/dual/copyleft-next-0.3.1
> 
> diff --git a/LICENSES/dual/copyleft-next-0.3.1 b/LICENSES/dual/copyleft-next-0.3.1
> new file mode 100644
> index 000000000000..c81acf710657
> --- /dev/null
> +++ b/LICENSES/dual/copyleft-next-0.3.1
> @@ -0,0 +1,236 @@
> +Valid-License-Identifier: copyleft-next-0.3.1
> +SPDX-URL: https://spdx.org/licenses/copyleft-next-0.3.1
> +Usage-Guide:
> +  copyleft-next-0.3.1 is explicitly compatible with GPLv2 (or later) and
> +  can therefore be used for kernel code. Though the best and recommended
> +  practice is to express this in the SPDX license identifier by
> +  licensing the code under both licenses expressed by the OR operator.
> +  To use the copyleft-next-0.3.1 license put the following SPDX tag/value
> +  pair into a comment according to the placement guidelines in the
> +  licensing rules documentation:
> +    SPDX-License-Identifier: GPL-2.0-only OR copyleft-next 0.3.1
> +    SPDX-License-Identifier: GPL-2.0-or-later OR copyleft-next-0.3.1

Sounds good.  It's good to cover both cases.

> +License-Text:
> +
> +=======================================================================
> +
> +                      copyleft-next 0.3.1 ("this License")
> +                            Release date: 2016-04-29
> +
> +1. License Grants; No Trademark License
> +
> +   Subject to the terms of this License, I grant You:
> +
> +   a) A non-exclusive, worldwide, perpetual, royalty-free, irrevocable
> +      copyright license, to reproduce, Distribute, prepare derivative works
> +      of, publicly perform and publicly display My Work.
> +
> +   b) A non-exclusive, worldwide, perpetual, royalty-free, irrevocable
> +      patent license under Licensed Patents to make, have made, use, sell,
> +      offer for sale, and import Covered Works.
> +
> +   This License does not grant any rights in My name, trademarks, service
> +   marks, or logos.
> +
> +2. Distribution: General Conditions
> +
> +   You may Distribute Covered Works, provided that You (i) inform
> +   recipients how they can obtain a copy of this License; (ii) satisfy the
> +   applicable conditions of sections 3 through 6; and (iii) preserve all
> +   Legal Notices contained in My Work (to the extent they remain
> +   pertinent). "Legal Notices" means copyright notices, license notices,
> +   license texts, and author attributions, but does not include logos,
> +   other graphical images, trademarks or trademark legends.
> +
> +3. Conditions for Distributing Derived Works; Outbound GPL Compatibility
> +
> +   If You Distribute a Derived Work, You must license the entire Derived
> +   Work as a whole under this License, with prominent notice of such
> +   licensing. This condition may not be avoided through such means as
> +   separate Distribution of portions of the Derived Work.
> +
> +   If the Derived Work includes material licensed under the GPL, You may
> +   instead license the Derived Work under the GPL.
> +
> +4. Condition Against Further Restrictions; Inbound License Compatibility
> +
> +   When Distributing a Covered Work, You may not impose further
> +   restrictions on the exercise of rights in the Covered Work granted under
> +   this License. This condition is not excused merely because such
> +   restrictions result from Your compliance with conditions or obligations
> +   extrinsic to this License (such as a court order or an agreement with a
> +   third party).
> +
> +   However, You may Distribute a Covered Work incorporating material
> +   governed by a license that is both OSI-Approved and FSF-Free as of the
> +   release date of this License, provided that compliance with such
> +   other license would not conflict with any conditions stated in other
> +   sections of this License.
> +
> +5. Conditions for Distributing Object Code
> +
> +   You may Distribute an Object Code form of a Covered Work, provided that
> +   you accompany the Object Code with a URL through which the Corresponding
> +   Source is made available, at no charge, by some standard or customary
> +   means of providing network access to source code.
> +
> +   If you Distribute the Object Code in a physical product or tangible
> +   storage medium ("Product"), the Corresponding Source must be available
> +   through such URL for two years from the date of Your most recent
> +   Distribution of the Object Code in the Product. However, if the Product
> +   itself contains or is accompanied by the Corresponding Source (made
> +   available in a customarily accessible manner), You need not also comply
> +   with the first paragraph of this section.
> +
> +   Each direct and indirect recipient of the Covered Work from You is an
> +   intended third-party beneficiary of this License solely as to this
> +   section 5, with the right to enforce its terms.
> +
> +6. Symmetrical Licensing Condition for Upstream Contributions
> +
> +   If You Distribute a work to Me specifically for inclusion in or
> +   modification of a Covered Work (a "Patch"), and no explicit licensing
> +   terms apply to the Patch, You license the Patch under this License, to
> +   the extent of Your copyright in the Patch. This condition does not
> +   negate the other conditions of this License, if applicable to the Patch.
> +
> +7. Nullification of Copyleft/Proprietary Dual Licensing
> +
> +   If I offer to license, for a fee, a Covered Work under terms other than
> +   a license that is OSI-Approved or FSF-Free as of the release date of this
> +   License or a numbered version of copyleft-next released by the
> +   Copyleft-Next Project, then the license I grant You under section 1 is no
> +   longer subject to the conditions in sections 3 through 5.
> +
> +8. Copyleft Sunset
> +
> +   The conditions in sections 3 through 5 no longer apply once fifteen
> +   years have elapsed from the date of My first Distribution of My Work
> +   under this License.
> +
> +9. Pass-Through
> +
> +   When You Distribute a Covered Work, the recipient automatically receives
> +   a license to My Work from Me, subject to the terms of this License.
> +
> +10. Termination
> +
> +    Your license grants under section 1 are automatically terminated if You
> +
> +    a) fail to comply with the conditions of this License, unless You cure
> +       such noncompliance within thirty days after becoming aware of it, or
> +
> +    b) initiate a patent infringement litigation claim (excluding
> +       declaratory judgment actions, counterclaims, and cross-claims)
> +       alleging that any part of My Work directly or indirectly infringes
> +       any patent.
> +
> +    Termination of Your license grants extends to all copies of Covered
> +    Works You subsequently obtain. Termination does not terminate the
> +    rights of those who have received copies or rights from You subject to
> +    this License.
> +
> +    To the extent permission to make copies of a Covered Work is necessary
> +    merely for running it, such permission is not terminable.
> +
> +11. Later License Versions
> +
> +    The Copyleft-Next Project may release new versions of copyleft-next,
> +    designated by a distinguishing version number ("Later Versions").
> +    Unless I explicitly remove the option of Distributing Covered Works
> +    under Later Versions, You may Distribute Covered Works under any Later
> +    Version.
> +
> +** 12. No Warranty                                                       **
> +**                                                                       **
> +**     My Work is provided "as-is", without warranty. You bear the risk  **
> +**     of using it. To the extent permitted by applicable law, each      **
> +**     Distributor of My Work excludes the implied warranties of title,  **
> +**     merchantability, fitness for a particular purpose and             **
> +**     non-infringement.                                                 **
> +
> +** 13. Limitation of Liability                                           **
> +**                                                                       **
> +**     To the extent permitted by applicable law, in no event will any   **
> +**     Distributor of My Work be liable to You for any damages           **
> +**     whatsoever, whether direct, indirect, special, incidental, or     **
> +**     consequential damages, whether arising under contract, tort       **
> +**     (including negligence), or otherwise, even where the Distributor  **
> +**     knew or should have known about the possibility of such damages.  **
> +
> +14. Severability
> +
> +    The invalidity or unenforceability of any provision of this License
> +    does not affect the validity or enforceability of the remainder of
> +    this License. Such provision is to be reformed to the minimum extent
> +    necessary to make it valid and enforceable.
> +
> +15. Definitions
> +
> +    "Copyleft-Next Project" means the project that maintains the source
> +    code repository at <https://github.com/copyleft-next/copyleft-next.git/>
> +    as of the release date of this License.
> +
> +    "Corresponding Source" of a Covered Work in Object Code form means (i)
> +    the Source Code form of the Covered Work; (ii) all scripts,
> +    instructions and similar information that are reasonably necessary for
> +    a skilled developer to generate such Object Code from the Source Code
> +    provided under (i); and (iii) a list clearly identifying all Separate
> +    Works (other than those provided in compliance with (ii)) that were
> +    specifically used in building and (if applicable) installing the
> +    Covered Work (for example, a specified proprietary compiler including
> +    its version number). Corresponding Source must be machine-readable.
> +
> +    "Covered Work" means My Work or a Derived Work.
> +
> +    "Derived Work" means a work of authorship that copies from, modifies,
> +    adapts, is based on, is a derivative work of, transforms, translates or
> +    contains all or part of My Work, such that copyright permission is
> +    required. The following are not Derived Works: (i) Mere Aggregation;
> +    (ii) a mere reproduction of My Work; and (iii) if My Work fails to
> +    explicitly state an expectation otherwise, a work that merely makes
> +    reference to My Work.
> +
> +    "Distribute" means to distribute, transfer or make a copy available to
> +    someone else, such that copyright permission is required.
> +
> +    "Distributor" means Me and anyone else who Distributes a Covered Work.
> +
> +    "FSF-Free" means classified as 'free' by the Free Software Foundation.
> +
> +    "GPL" means a version of the GNU General Public License or the GNU
> +    Affero General Public License.
> +
> +    "I"/"Me"/"My" refers to the individual or legal entity that places My
> +    Work under this License. "You"/"Your" refers to the individual or legal
> +    entity exercising rights in My Work under this License. A legal entity
> +    includes each entity that controls, is controlled by, or is under
> +    common control with such legal entity. "Control" means (a) the power to
> +    direct the actions of such legal entity, whether by contract or
> +    otherwise, or (b) ownership of more than fifty percent of the
> +    outstanding shares or beneficial ownership of such legal entity.
> +
> +    "Licensed Patents" means all patent claims licensable royalty-free by
> +    Me, now or in the future, that are necessarily infringed by making,
> +    using, or selling My Work, and excludes claims that would be infringed
> +    only as a consequence of further modification of My Work.
> +
> +    "Mere Aggregation" means an aggregation of a Covered Work with a
> +    Separate Work.
> +
> +    "My Work" means the particular work of authorship I license to You
> +    under this License.
> +
> +    "Object Code" means any form of a work that is not Source Code.
> +
> +    "OSI-Approved" means approved as 'Open Source' by the Open Source
> +    Initiative.
> +
> +    "Separate Work" means a work that is separate from and independent of a
> +    particular Covered Work and is not by its nature an extension or
> +    enhancement of the Covered Work, and/or a runtime library, standard
> +    library or similar component that is used to generate an Object Code
> +    form of a Covered Work.
> +
> +    "Source Code" means the preferred form of a work for making
> +    modifications to it.
> --
> 2.35.1

I reviewed the license placement and usage guide, but not the wording (content)
of the license text file itself.

FWIW,
Reviewed-by: Tim Bird <tim.bird@xxxxxxxx>

 -- Tim





[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux