Vždyť se tady o tom mluví pořád dokolečka: ten GPL kód musí být s tím non-GPL kódem SLINKOVANÝ. To je něco, na čem se shodnou všichni. Jestli to stačí nebo je potřeba ještě nějaké další podmínky, o tom si myslí každý něco jinýho. Ale tahle podmínka je určitě nutná.
Takže jestli se nějaký ovladač instaluje "do systému" a tvůj SW s ním není slinkovaný, nemají ty dva kusy kódu nic společného a můžou být bez problému pod jakoukoliv licencí.
> svůj SW nemohu distribuovat pod GPL, i když jsem víceméně jeho autor
Tohle je zajímavý moment. Tak si uvědom, že ta licence, která způsobuje problémy, **je GPL**, protože je virální, není to ta druhá. "Normální" situace je taková, že licence se vztahuje k nějakému konkrétnímu zdrojovému souboru. Říká, co s tím souborem můžeš dělat. A neříká, co můžeš dělat s jinými soubory (v rámci toho jednoho programu). Takže jeden .c zdroják může být pod WTFPL licencí, jiný pod BSD licencí a není v tom žádný problém. GPL je ale v tomhle anomální, protože vyžaduje nějaká pravidla pro **jiné zdrojáky**.
Čili pokud sis vybral GPL a máš problém, tak máš problém právě proto, že sis vybral GPL. Není to vina té druhé licence, je to tvoje chyba. Je to asi tak, jako by sis vybral licenci, která požaduje, aby se autor programu po pěti letech zastřelil a nadával bys na to, že po tobě někdo chce, aby ses zastřelil. No tak si vyber nějakou licenci, která to po tobě nechce a problem solved, ne?!
Ještě jsem teda zapomněl, že pokud jsi jediný autor toho tvého softu, nebo vlastník všech práv (někdo to pro tebe napsal za peníze apod.), tak tě ani GPL nijak nesvazuje, protože ty si se svým dílem můžeš dělat co chceš. Licence jenom stanovuje podmínky, jak se mají chovat jiní lidi, za jakých podmínek jim ty, jako autor, uděluješ jaká práva na nakládání s tvým dílem.
Takže klidně můžeš ten svůj soft poskytovat na webu pod GPL a zároveň s ním můžeš dělat věci, které (ostatním lidem) GPL zakazuje.
"vytvořím nějaký SW, nějaký SW, ve kterém použiju, např. non-GPL ..." + "tak svůj SW nemohu distribuovat pod GPL, i když jsem víceméně jeho autor"
- Tyto dvě věty mohou být v rozporu. Záleží například, jakým způsobem je onen non-GPL použit. Může to znamenat, že ty NEJSI autorem toho, co nazýváš "svůj SW" - že autorem jsi Ty a autoři těch "ovladačů", pokud to vydáš jako celek.
To platí obecně, např. i pro C runtime knihovny.
Abys Ty mohl užít cizí kusy, musíš k tomu mít licenci. Proto se, obvykle, věci jako ovladače, konkrétní standardní knihovny jazyka a podobně, vydávají pod licencí, která Ti dává široké možnosti běhu programu. Obvykle. (GPL s tím má problém právě proto, že omezuje styl užití a vynucuje si /licenčně/ věci navíc, ne nutně potřebné pouze pro vlastní běh programu, ale týkající se i zdrojáků).
Takže problém je pouze, pokud si Ty pro svůj kód zvolíš licenci, která dává (určuje) i práva nad rámec cizího díla, ke kterým nemáš dostatečné oprávnění. Pokud si vybereš, pro svůj kód, třeba public domain like, nebo GPL, jsi to _TY_ kdo musí zajistit, abys měl dostatečná práva k veškerému použitému kódu tak, aby vyhovovala _TVOJÍ_ vybrané licenci. Řešením je:
- vybrat svůj kód pod takovou licencí, aby vyhovovala všem stávajícím licencím použitých cizích děl
- požádat autory cizích děl, zda Ti jej neposkytnou (ať už za úplatu či jinak) pod takovou licencí, která by byla vyhovovala té Tvé vysněné