NVIDIA ATI e le violazioni della GPL

linux GPL

Ecco qua un chiaro e semplice sguardo sui driver ATI e NVIDIA…
sul perché ci sono tanti casini a metterli su
sul perché i distributori Linux (okkey… le distribuzioni) non possono (non dovrebbero) darli subito installati, ma è necessario che lo faccia l’utente..
http://kororaa.org/static.php?page=gpl

In breve si riassume così :
Il kernel è GPL (v2)
se scrivi un modulo per il kernel questo deve essere GPL. Altrimenti non lo puoi fare (potresti).

I driver ATI escono con licenza ATI ed i driver NVIDIA con licenza NVIDIA che nn sono GPL.
In teoria i driver ATI ed NVIDIA non dovrebbero essere scritti in questo modo, poichè essedno un lavoro derivato derivated work, dovrebbero rimanere compatibili con la GPL ed essere rilasciati come GPL.
Per non violare la licenza ATI e NVIDIA non danno il precompilato, perché in questo modo violerebbero la licenza, ma danno la possibilità di compilarlo.
Ed il trucco è tutto qui.

Chi compila il driver, linkandolo ai sorgenti del proprio kernel praticamente viola la licenza.

ATI e NVIDIA si guardano bene dal farlo, i distributori vorrebbero farlo per venire incontro agli utenti, ma non possono farlo, a meno di non violare la licenza ed essere intimati dagli sviluppatori del kernel a desistere (vedi caso Kororaa).
E allora?

Allora è l’utente finale che, compilando il modulo e linkandolo al kernel, viola la GPL del kernel.

Quindi se il nostro utente vuole l’accelerazione 3D, come è giusto che sia, visto che ha pagato per quel pezzo di hardware, è costretto a violare la GPL, pena accelerazione 3D disabilitata.

Ci sono altri modi o vie per avere la 3D abilitata senza violare la GPL?
In teoria si, in pratica no.
A livello ATI ci sono i radeon, i driver open che escono con il kernel… che però coprono solo alcun delle funzionalità ed alcuni giochi semplicemente non funzionano con questi, per quel che riguarda NVIDIA non lo so perché non ho una NVIDIA.

Il problema è quindi alla fonte. Se la ATI e la NVIDIA rilasciassero dei driver GPL tutto questo non avverrebbe. Le posizioni delle due case è:
non rilasciamo i driver GPL perché dobbiamo proteggere le nostre proprietà intellettuali.
La posizione degli sviluppatori del kernel è:
nessuno ti obbliga ad utilizzare LINUX ed il suo kernel.
Se lo fai, devi allinearti con le sue regole.

Chi perde, alla fine, è sempre l’utente finale.

2 Comments

  1. La GPL non è violata dall’utente in quanto non distribuisce a terzi i moduli compilati

    • Ottimo! Grazie per la chiarificazione, quindi compilazione non viola, distribuzione si.

      P.S. l’articolo è stato scritto nel 2006, quindi le cose potrebbero essere cambiate riguardo quanto scritto..

Leave a Reply