Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

License #1

Closed
Legorooj opened this issue Apr 14, 2020 · 7 comments
Closed

License #1

Legorooj opened this issue Apr 14, 2020 · 7 comments
Assignees
Labels
discussion Please add your opinion and rationale @high This is high priority

Comments

@Legorooj
Copy link
Member

Legorooj commented Apr 14, 2020

Which license shall we use? I'd suggest either MIT or LGPL. (We can't use GPL; we need (some) of these hooks to go within bundled pyinstaller packages.)

@htgoebel
Copy link
Member

Summary

  • all hooks shall be GPL-2.0-or-later
  • new run-time hooks shall become Apache-2.0
  • existing run-time hooks are "GPL-2.0-or-later WITH Bootloader-exception"
    • I'm going to ask the authors whether a license change is okay.

All hooks which are now part of PyInstaller are "GPL-2.0-or-later WITH Bootloader-exception" and need to keep this licence - except the author(s) of the respective hooks agree to a license change. The hooks within this repo are just build-tools and will not become part of any frozen application (except run-time hooks, see below), thus the exact licence of the hooks does not matter for the frozen application.

So for this repo I suggest to either keep "GPL-2.0-or-later WITH Bootloader-exception" or specify it more precisely.

With "more precisely" I mean: Strictly speaking the "Bootloader-exception" only applies to the bootloader, not the run-time hooks, which go into the frozen package. We might need a new license which states this.

For the runtime-hooks I suggest to port the principle of the "Bootloader-exception" to the run-time hooks: to be used without restrictions even in your proprietary program. Reading the GPL FAQ, I suggest to use the Apache License 2.0 for the run-time hooks:

Rational:

  • Creating a new licence is to much effort.
  • LGPL is not appropriate: Section 4 for the LGPL requires the application to include a copy of the LGPL licence and to enable the user to replace the LGPL-ed code (the run-time hook) by a different (modified) version of that code. This is neither practical nor what the "Bootloader-exception" means.
  • The FSE recommends using APL for short works, which terms to prevent contributors and distributors from suing for patent infringement.

@matysek @rasky @bjones1 Comments?

@Legorooj
Copy link
Member Author

Legorooj commented Apr 14, 2020

Good suggestion. GPL+APL sounds good.

@matysek
Copy link
Member

matysek commented Apr 14, 2020

I am ok with using Apache License for runtime hooks and change license for existing runtime hooks.

@bjones1
Copy link

bjones1 commented Apr 14, 2020

Sounds good to me.

@Legorooj Legorooj added @high This is high priority discussion Please add your opinion and rationale labels Apr 15, 2020
@Legorooj
Copy link
Member Author

@htgoebel are these headers alright?

Standard hook header

# ------------------------------------------------------------------
# Copyright (c) 2020 PyInstaller Development Team.
#
# This file is distributed under the terms of the GNU General Public
# License (version 2.0 or later).
#
# The full license is available in LICENSE.GPL.txt, distributed with
# this software. 
#
# SPDX-License-Identifier: GPL-2.0-or-later
# ------------------------------------------------------------------

I've not bothered with WITH bootloader exception; these files aren't and never were the bootloader, so technically (legally) they are already under the standard GPL-2.

Runtime hook header:

# ------------------------------------------------------------------
# Copyright (c) 2020 PyInstaller Development Team.
#
# This file is distributed under the terms of the Apache License 2.0
#
# The full license is available in LICENSE.APL.txt, distributed with
# this software.
#
# SPDX-License-Identifier: Apache-2.0
# ------------------------------------------------------------------

License files:

@htgoebel
Copy link
Member

I commented on #2.

@Legorooj
Copy link
Member Author

Dealt with in #2. We still need to contact people for rthooks though.

@pyinstaller pyinstaller locked as resolved and limited conversation to collaborators Apr 20, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
discussion Please add your opinion and rationale @high This is high priority
Projects
None yet
Development

No branches or pull requests

4 participants