atar-axis / xpadneo

Advanced Linux Driver for Xbox One Wireless Controller (shipped with Xbox One S)
https://atar-axis.github.io/xpadneo/
GNU General Public License v3.0
1.92k stars 111 forks source link

Is xpadneo licensed with the optional "or later" GPL license clause? #289

Open kira-bruneau opened 3 years ago

kira-bruneau commented 3 years ago

I can't find any mention of the GPL3 "or later" license clause. This is usually indicated in the license headers in source files or in the README, but I could only find licensing information in LICENSE. The LICENSE file by itself doesn't specify this since it's an optional clause.

See the difference between the GPL-3.0-or-later & GPL-3.0-only license header:

kakra commented 3 years ago

I don't think this optional clause was added by @atar-axis back that time.

Also, I wonder what this means in context of maybe porting this over to the kernel at some later time.

kakra commented 3 years ago

@kira-bruneau What would it need to change the license to GPL3+? Do I need to check with every author, or can I just change it?

atar-axis commented 3 years ago
kira-bruneau commented 3 years ago

Is there any specific use case for that? There is no GPL4 around, right?

Yeah, there's not really a specific use case yet (until a new GPL license is released), but most package managers treat GPL-3.0-only & GPL-3.0-or-later as separate licenses. I was mostly just curious if I was using the right license in the nixpkgs package that I maintain: https://github.com/NixOS/nixpkgs/blob/master/pkgs/os-specific/linux/xpadneo/default.nix#L35.

What would it need to change the license to GPL3+? Do I need to check with every author, or can I just change it

If this is still (partly) my decision (from a legally point of view): I would be fine if @kakra should decide to switch to GPL3+.

I don't know too much about the legal details, but I don't think there would be any problems since you'd just be changing an optional clause. A lot of project specify this by providing a copyright notice in each source file, but it should be enough to mention the copyright header in README.md.

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.

See https://github.com/jtojnar/nixpkgs-hammering/blob/master/explanations/unclear-gpl.md.

I really wish that these were entirely separate licenses, because it was pretty confusing to figure out the difference at first. :confused:

seancmonahan commented 2 years ago

I don't think this optional clause was added by @atar-axis back that time.

Also, I wonder what this means in context of maybe porting this over to the kernel at some later time.

If I'm reading the Linux kernel licensing rules correctly, in order for xpadneo to be incorporated into the Linux kernel, it would need to be relicensed down to GPL-2.0 or GPL-2.0-or-later.

Neither GPL-3.0+ nor GPL-3.0-only are listed as being compatible with the Linux kernel, which is licensed under GPL-2.0-only.

Kernel-compatible licenses are listed as:

(Dual-licensed code with a more permissive license is also allowed as long as one of the licenses is from the above list.)

kakra commented 2 years ago

Then maybe it would be good to re-license down to a kernel-compatible license, so we can keep that option open for the future. I've never done something like that. Do we need to ask all past contributors for permission? Or would it be sufficient to send an informal note to all contributors? Do we need to take any of those steps at all?