Skip to main content


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.

github.com/tuxedocomputers/tux…

gitlab.com/tuxedocomputers/dev…

gitlab.com/tuxedocomputers/dev…

gitlab.com/tuxedocomputers/dev…

This entry was edited (4 weeks ago)
in reply to Thorsten Leemhuis (acct. 1/4)

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).
This entry was edited (4 weeks ago)
in reply to Thorsten Leemhuis (acct. 1/4)

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:

gitlab.com/tuxedocomputers/dev…

[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

This entry was edited (4 weeks ago)
in reply to Thorsten Leemhuis (acct. 1/4)

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. 👏

gitlab.com/tuxedocomputers/dev…

(side note: I suspect the kernel will now taint itself as "proprietary" when loading these drivers, but haven't tried)

CC: @waldi

This entry was edited (3 weeks ago)
in reply to Thorsten Leemhuis (acct. 1/4)

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":

gitlab.com/tuxedocomputers/dev…

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

in reply to Thorsten Leemhuis (acct. 1/4)

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". "'

lore.kernel.org/all/2024111410…

CC: @waldi #LinuxKernel

This entry was edited (2 weeks ago)
in reply to Thorsten Leemhuis (acct. 1/4)

6/ To follow up once more:

@tuxedocomputers relicensed all full inhouse code in their driver package to GPLv2+ : gitlab.com/tuxedocomputers/dev… 👍

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:

lore.kernel.org/all/2024111513…

CC: @waldi