Policies/Licensing Policy/Draft: Difference between revisions

From KDE Community Wiki
Line 266: Line 266:
* Links to SPDX licences
* Links to SPDX licences


Reasons for CC-BY-SA 4: language more tested, designed to be international, doesn't include silly stuff about honour, backed by a body which will argue for it and its intended uses, works can be converted to LGPL/GPL
Reasons for CC-BY-SA 4: language more tested, designed to be international, doesn't include silly stuff about honour which some distros consider non-free, backed by a body which will argue for it and its intended uses, works can be converted to LGPL/GPL


Counter argument: CC-BY-SA 3 more common and can be upgraded to 4
Counter argument: CC-BY-SA 3 more common and can be upgraded to 4

Revision as of 12:05, 3 May 2017

This licence policy is designed to allow maximum code reuse with the community of KDE and beyond while making exceptions for the few cases which need it.

All new source code and related data files in KDE repositories (SVN, GIT) must meet the following requirements:

  1. All files must be in their preferred modifiable form, or alongside the file which is the preferred modifiable form. In the 'alongside' case, there must be clear instructions for how to build using the preferred modifiable form.
  2. All source files must contain a copyright header which identifies the copyright holder(s) together with an e-mail address that can be used to reach the copyright holder.
  3. Each source file must contain one of the licence headers listed below to state under which terms the software may be used, modified and redistributed.
  4. Source files that are part of a library with a public API which is part of the KDE Platform (kdelibs, kdepimlibs, kde-runtime and KDE Frameworks) must be licensed under one of the following terms:
    • LGPL version 2.1, or version 3 or later versions approved by the membership of KDE e.V. [preferred]
    • LGPL version 2.1 or later
    • BSD license as listed below.
      Ensure that the BSD license does not contain the so called 'advertisement clause'.
    • MIT license as listed below.
    • X11 license as listed below.
    Note: each bulletpoint above is a single option, it can not be licenced under just part of one bulletpoint option
    Note: code may not be copied from Qt into KDE Platform as Qt is LGPL 3 only which would prevent it being used under LGPL 2.1
    Note: the LGPL 2.1, 3 or approved by e.V. option is preferred and should be used unless there are special needs to improve code shareability
  5. Any other source files must be licensed under one of the terms listed under 4) or one of the following terms:
    • GPL version 2 or version 3 or later versions approved by the membership of KDE e.V. [preferred]
    • GPL version 2 or later
    • GPL version 3 or later
    • GPL version 3 or later versions approved by the membership of KDE e.V.
    • Code copied from Qt may be licenced under GPL version 2 or later versions or under GPL version 3 or later versions depending on the licence of the relevant Qt code
    Note: each bulletpoint above is a single option, it can not be licenced under just part of one bulletpoint option
    Note: where a KDE repository contains files which are GPL 3+ it must be clearly marked by adding the full licence in a file called COPYING.GPL3 in the top directory of the repository
    Note: the GPL 2, 3 or approved by e.V. option is preferred and should be used unless there are special needs to improve code shareability
    Note: Qt modules are either GPL2+ or GPL 3+, ensure the licence is compatible with your code before copying code from Qt
  6. Applications which are intended to be run on a web server may be licenced under the GNU AGPL 3.0 or later
    Note: the GNU AGPL is the recommended licence for web server software in KDE
  7. Translations of text from the files described in section 4 must be licenced under one of the terms in sections 4. Translations of text from other files must be licenced under one of the terms in sections 4 or 5.
  8. Media files such as images may be licensed under the CC-BY-SA-4.0 or compatible licence
    Note: CC-BY-SA 4.0 can be one-way converted to LGPL 3.
  9. Icons in oxygen-icons and breeze must be licenced under the LGPL 3 or later versions approved by KDE e.V. Icons elsewhere can be licenced under any of the terms in section 4 or 5 or 8. Using CC-BY-SA 4.0 as listed in section 8 is preferred.
  10. Content on collaborative edited websites such as wikis must be licensed under the Creative Commons Attribution-Sharealike 4.0 International or compatible licence.
  11. Documentation must be licensed under the CC-BY-SA-4.0 or compatible licence
    Note: CC-BY-SA 4.0 can be one way converted to LGPL 3.
  12. Documentation started before 2016 can be licensed under one of the following terms:
    • FDL versions 1.2 or later versions with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
    • FDL versions 1.2 or later versions approved by KDE e.V. with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
    Note each bulletpoint above is a single option, it can not be licenced under just part of one bulletpoint option
    Documentation may additionally be licensed under any of the terms in section 4 or 5.
  13. CMake modules must be licenced under the BSD licence listed below
  14. Windows installer files using the WiX Toolset may be licenced under the Common Public Licence 1.0
  15. Other data included in KDE's codebase must be licenced under one of the terms in sections 4 or 5.
  16. Contributors who have signed the Fiduciary License Agreement with KDE e.V. may licence files described in section 3 under LGPL 2.1 & 3 only and may licence other source files under GPL 2 & 3 only.
  17. As new versions of GNU licenses are published they will be discussed by the membership of KDE e.V. and accepted via an announcement on http://ev.kde.org whether we will adopy it. This will depend on if adopting the licence would harm the future distribution of KDE, if the licence preserves freedom for our developers & users and a vote by the membership agrees to the acceptance of the new licence version.

GPL Header

GPL-2.0+

Copyright <year>  <name of author> <e-mail>

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 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 General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

or for later versions approved by KDE e.V.

Copyright <year>  <name of author> <e-mail>

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License or (at your option) version 3 or any later version
accepted by the membership of KDE e.V. (or its successor approved
by the membership of KDE e.V.), which shall act as a proxy 
defined in Section 14 of version 3 of the license.

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 General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

GPL 3 or later

GPL-3.0+

Any repository which has this must be clearly marked with a copy of the GPL 3 in a file called COPYING.GPL3 in the top directory

Copyright <year>  <name of author> <e-mail>

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU 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 General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

or for later versions approved by KDE e.V.

Copyright <year>  <name of author> <e-mail>

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 3 of
the License or any later version accepted by the membership of 
KDE e.V. (or its successor approved by the membership of KDE
e.V.), which shall act as a proxy defined in Section 14 of
version 3 of the license.

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 General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

LGPL Header

LGPL-2.1+

Copyright <year>  <name of author> <e-mail>

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either 
version 2.1 of the License, or (at your option) any later version.

This library 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
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public 
License along with this library.  If not, see <http://www.gnu.org/licenses/>.

or for later versions approved by KDE e.V.

Copyright <year>  <name of author> <e-mail>

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
successor approved by the membership of KDE e.V.), which shall
act as a proxy defined in Section 6 of version 3 of the license.

This library 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
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public 
License along with this library.  If not, see <http://www.gnu.org/licenses/>.

BSD License

BSD-2-Clause

Copyright <year>  <name of author> <e-mail>

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

A third requirement is sometimes included: "3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission."

The advertising clause requiring mention in adverts must never be included.

X11 License

X11

Copyright <year>  <name of author> <e-mail>

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
X CONSORTIUM 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.

Except as contained in this notice, the name of the X Consortium shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from the X Consortium.

MIT license

MIT

Copyright <year>  <name of author> <e-mail>

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.

Changelog

February 2017 WIP

  • Note that Qt is LGPL 3 not 2.1
  • Code copied from Qt can be GPL 3 as well as GPL 2, check comparible with your code
  • Allow AGPL for web apps
  • Encourage AGPL for web apps
  • Allow icons to be CC-BY-SA 4
  • Allow media files to be CC-BY-SA 4 and no longer allow CC-BY-SA 3
  • Note CC-BY-SA 4 is LGPL 3 compatible
  • Documentation to be CC-BY-SA 4
  • MIT text now one of the more standard variants (modern style with sublicence)
  • Links to SPDX licences

Reasons for CC-BY-SA 4: language more tested, designed to be international, doesn't include silly stuff about honour which some distros consider non-free, backed by a body which will argue for it and its intended uses, works can be converted to LGPL/GPL

Counter argument: CC-BY-SA 3 more common and can be upgraded to 4

Reasons to deprecate FDL: incompatible with other sources such as wikipedia, poor reputation tarnished by non-free variants, given minimal attention by FSF so nobody to back up its uses

Counter argument: makes FDL-only docs in KDE incompatible with newer CC ones

Reasons for AGPL: we care about freedom, it ensures online services are kept free and open (if the project wishes)

Counter argument: causes faff for web users and scares away companies