TIL: @tuxedocomputers released #Linux #kernel drivers for their machines under the #GPLv3, which makes it impossible for competitors and distros to ship them pre-compiled, as that license is incompatible with the #LinuxKernel's #GPLv2 only license.
They did this purposely, allegedly to "keep control of the upstream pacing" – and want to re-license the code while upstreaming.
https://github.com/tuxedocomputers/tuxedo-keyboard/issues/61
https://gitlab.com/tuxedocomputers/development/packages/tuxedo-drivers/-/issues/137
https://gitlab.com/tuxedocomputers/development/packages/tuxedo-drivers/-/issues/138
2/ side note: wondering if they require a CLA that allows re-licensing for any meaningful contributions, otherwise they can not upstream contributed code (and wouldn't be allowed to ship the drivers pre-compiled themselves).
3/ It got even stranger: it seems @tuxedocomputers provided the wrong license to the #LinuxKernel's MODULE_LICENSE()[1] macro either by accident or on purpose.
@waldi pointed that out earlier today elsewhere in this thread; PWM maintainer Uwe Kleine-König a little later submitted a bug report asking this to be fixed:
https://gitlab.com/tuxedocomputers/development/packages/tuxedo-drivers/-/merge_requests/21
[1] they proclaim it's GPL, which according to the #Linux #kernel's docs means "GPLv2" (either -only or -or-later), when in fact the code is GPLv3
4/ TWIMC and for the record:
Werner Sembach from @tuxedocomputers now merged Uwe's proposed changes that make the drivers provide the right license to the #Linux #kernel's MODULE_LICENSE()[1] macro.
(side note: I suspect the kernel will now taint itself as "proprietary" when loading these drivers, but haven't tried)
CC: @waldi
5/ TWIMC and for the record:
Werner Sembach from @tuxedocomputers *reverted* Uwe's changes that made the drivers provide the right license to the #Linux #kernel's MODULE_LICENSE()[1] macro "until the legal stuff is sorted out":
Wondering why that happened – did they only notice now that the drivers do not compile any more because they use GPL-onlyed symbols, which are inaccessible for any non-GPLv2-compatible module?
CC: @waldi
6/ To follow up:
There are now patches under discussion upstream to '"teach the [#Linux #Kernel's] module loader that these modules [from @tuxedocomputers ] are proprietary despite their declaration to be GPLv2 compatible "until the legal stuff is sorted out". "'
https://lore.kernel.org/all/20241114103133.547032-4-ukleinek@kernel.org/t/#u
CC: @waldi #LinuxKernel
6/ To follow up once more:
@tuxedocomputers relicensed all full inhouse code in their driver package to GPLv2+ : https://gitlab.com/tuxedocomputers/development/packages/tuxedo-drivers/-/commit/dd34594ab880ed477bb75725176c3fb9352a07eb
They are working on doing the same for the remaining drivers.
They also submitted a updated version of the patchset making the #Linux #Kernel's module loader treat some of the modules as proprietary; the list of modules handled that way is much shorter now:
https://lore.kernel.org/all/20241115130139.1244786-1-wse@tuxedocomputers.com/
CC: @waldi
7/ To follow up once more, likely for the last time:
Werner Sembach relicensed the last of the formerly GPL3+ed #Linux #kernel drivers from @tuxedocomputers to #GPLv2 about an hour ago after all external contributors have agreed to that move.
https://gitlab.com/tuxedocomputers/development/packages/tuxedo-drivers/-/commits/main
Cc: @waldi #LinuxKernel
@kernellogger @tuxedocomputers @waldi that's pretty cool actually
i guess they technically were right that the relicensing can't happen overnight, but they are pretty close