Home > GNU/Linux, Libero vs Proprietario, Riflessioni > Siamo abbastanza forti per avere un GNU/Linux del tutto libero?

Siamo abbastanza forti per avere un GNU/Linux del tutto libero?

Forse alcuni miei lettori avranno letto in giro del rilascio, da parte di Microsoft, di 20mila linee di codice per il kernel Linux.

Per chi non conoscesse la vicenda, in sostanza Microsoft ha realizzato dei driver al fine di migliorare il supporto di GNU/Linux (in particolare SUSE, ma in genere qualsiasi distro) sulla macchina virtuale di Redmond, chiamata Hyper-V.

Chi ha mai usato Virtualbox, ad esempio, sa che alcune funzioni sono attivabili solo se si installano le “guest addictions”. In pratica è più o meno lo stesso.

La cosa interessante è che Microsoft è stata costretta a rilasciare questo codice sotto la licenza del kernel stesso, ovvero la GNU GPL versione 2.

Pare che inizialmente non fosse questa l’intenzione, ma l’uso, all’interno dei driver, di una funzione del kernel segnalata come “GPL” ha obbligato MS a questa scelta.

Per chi non lo sapesse, nel kernel Linux alcune funzioni interne sono segnate come “only GPL” ovvero usabili solo da software sotto licenza libera. Altre invece no.  E’ una forzatura degli sviluppatori del kernel Linux per consentire la creazione di alcuni driver e proprietari.

Purtroppo per lei, però, Microsoft è incappata proprio in una funzione “only GPL”. E quindi, in base alla legge, ha dovuto sottostare a quella licenza che una volta definì un “cancro”.

Allora mi viene da pensare… e domandarmi un po’ di cose.

  • MS poteva semplicemente decidere di non rilasciare affatto il codice, negando a GNU/Linux piena cittadinanza su Hyper-V. Ma non l’ha fatto.
  • Poteva provare ad aggirare l’uso di quel particolare simbolo “only GPL”. Ma non l’ha fatto.

Perché?

La mia risposta è che Microsoft, o qualsiasi altro grande colosso dell’informatica, non può più permettersi di snobbare GNU/Linux. Ormai da qualche anno a questa parte. Almeno per il lato server, cioè quello che frutta i contratti davvero grossi con megacorporation ed enti governativi.

Questo fatto dimostra un paio di cose:

  1. La GNU GPL è uno strumento molto potente, la vera arma legale in mano al mondo del software libero
  2. L’ecosistema GNU/Linux è talmente forte da aver piegato anche la più grande azienda informatica del mondo alle sue leggi

Bene.

Ora però la domanda nasce spontanea: perché non usare quest’arma per piegare anche altri colossi? In altre parole: basterebbe che gli sviluppatori del kernel Linux, Torvalds in testa, eliminassero l’ambiguità dei simboli non “only GPL”, rendendo tutto il kernel usabile solamente da driver liberi.

L’effetto coinvolgerebbe molte aziende, in primis Nvidia e ATI.

Conosco l’obiezione: se si facesse così, queste aziende semplicemente smetterebbero di rilasciare driver per GNU/Linux.

Ma non sono così convinto. Mettiamo in fila un po’ di fatti.

  1. Atheros s’è convinta a sviluppare driver liberi per Linux ed ha addirittura assunto lo sviluppatore che li faceva prima non ufficialmente; è il caso più eclatante, ma ce ne sono altri simili
  2. anche altre aziende prima totalmente indifferenti adesso, più o meno ufficialmente, supportano o suggeriscono l’uso di certi driver, o almeno li tollerano, fregandosene se chi li scrive usa l’oscilloscopio per scoprire i loro “segreti”
  3. ATI sta già collaborando attivamente allo sviluppo di driver liberi per le sue schede grafiche e sta rilasciando progressivamente le specifiche delle sue schede
  4. Nvidia no, ma sta investendo molto, moltissimo su GNU/Linux e Xorg, perché intende guadagnarci, chiaramente: VDPAU e CUDA sono gli esempi lampanti di quanto questo produttore si sta dando da fare per supportare al meglio il pinguino, in vista di applicazioni come render farm e simili.

Alla fine, quindi, quella da costringere a “liberare” il suo codice è Nvidia. E’ realistico pensare che, dopo aver speso tanti soldi e tanto tempo, decida di buttare tutto all’aria per non dover cambiare licenza?

Io sospetto di no. E quando Nvidia dice che non vuole rilasciare driver liberi per non svelare segreti industriali, mi chiedo perché invece ATI abbia direttamente pubblicato le specifiche del suo hardware.

Mi chiedo quali siano tali segreti, visto che in fondo le specifiche di un’interfaccia e un po’ di codice che la comanda non dicono poi moltissimo di un hardware e che comunque sono sempre conoscibili, sia pure a prezzo di un grosso lavoro di reverse engineering.

E se proprio vuole mantenere i suoi segreti, può rilasciare solo il codice, tenendo le specifiche sotto un “Non Disclosure Agreement” (NDA), un accordo di non rivelazione. Persino Stallman è d’accordo a firmarli, se serve a rilasciare driver liberi (chi ha detto che Stallman è un estremista? Ah sì… Linus Torvalds… bah).

In definitiva la domanda è: GNU/Linux è abbastanza forte, noi come comunità siamo abbastanza forti da imporre le nostre regole, anche ai superbig dell’industria? Be’, questo episodio dice di sì.

Forse è il caso di smetterla di pensarci come nerd sfigati e prendere atto che siamo potenza contro potenza. E possiamo vincere.

  1. Jonky
    29 luglio 2009 alle 7:57

    Hasta la victoria siempre!🙂

  2. pi3tr0
    29 luglio 2009 alle 10:30

    a me da molto più fastidio che la licenza linux permetta di utilizzare codice linux per dispositivi embedded permettendo ai costruttori di rilasciare software per interfacciare questi dispositvi al PC, ma solo software per windows

    non conosco tutte le licenze, ma esistono dispositivi come SAT-BOX, telefonini, navigatori satellitari basati su Linux e non c’è una ca**o di licenza che obblighi questi signori a rilasciare gli equivalenti software che metteno nei CD per Windows, anche per Linux

    io ad esempio ho un motorola linux, ma se voglio usare tutte le sue funzioni col PC devo installare il software per Windows fornito nel CD allegato al telefono, questo è assurdo considerando che in futuro Linux dominerà i dispositivi embedded

  3. aytin
    29 luglio 2009 alle 10:44

    Io non vorrei che tutto si dovesse misurare in base alla grossezza e alla quantità dei muscoli.

    E’ indubbio come la GPL, nelle sue varie emanazioni, sia una delle più grandi creazioni di Stallman, con buona pace dei suoi detrattori che vedono in lui solo un folle o un visionario quando invece, e mi sembra che i fatti lo abbiano dimostrato ampiamente, sia stato a mio parere molto, molto lungimirante.

    Microsoft poteva aggirare il vincolo imposto dalla GPL?
    Mah… forse sì, forse no… non so.

    E’ una domanda molto interessante a cui non è semplice dare una risposta.
    Ragionando per ipotesi, Microsoft poteva anche tirare in ballo la vecchia storia dei famosi 235 brevetti violati e “suggerire” di chiudere un occhio, ma così sarebbe stata una tale forzatura che avrebbe indotto ogni membro della FSF a prendere a calci nel sedere il vecchio Bill, anche se in pensione.
    Certo, la necessità di entrare nel mondo enterprise era un’occasione troppo ghiotta e il rospo, per quanto grosso e indigesto, è dovuto andare giù.
    Speriamo solo che non sia l’inizio di un nuovo “abbraccio”.

    Per quel che riguardo il “non-only GPL”, comprendo la necessità evitare un embargo tecnologico rassicurando in qualche modo i grossi produttori che si avvicinano al pinguino ormai con sempre maggiore frequenza, ma non vorrei che l’abuso di questa clausola possa stravolgere la natura fondamentalmente GPL del kernel.
    Ecco.
    Non vorrei dire “fondamentalmente””, vorrei poter dire “completamente GPL”
    La mia domanda a questo punto non è tanto se come comunità ci sentiamo abbastanza forti ma la sfumo un pò: ci sentiamo abbastanza convinti? Ci fidiamo abbastanza della GPL?

  4. 29 luglio 2009 alle 12:11

    Ottimo articolo come sempre!!!
    Linko sul mio blog!!

  5. 29 luglio 2009 alle 12:15

    Articolo molto forte e deciso…mi piace!

  6. 29 luglio 2009 alle 16:09

    Splendido articolo.
    Lo posto sul mio blog.

  7. 29 luglio 2009 alle 20:04

    Ritenho non sia solo una questione di forza, o di piegare qualcuno.

    Se Microsoft è arrivata a rilasciare roba in GPL vuol dire che si è fatta i suoi bravi conti.

    Certo, piacerebbe anche a me parlare di un kernel completamente libero, nel senso GNU del termine. Ma “Rome wasn’t build in a day”, e per far aprire le ditte all’ottica di GNU/Linux o delle varie GPL ci vuole tempo, e non un lavoro “di forza”.

    Non seguo molto il discorso ATI, e non conosco quanto pubblicato da loro, ma so che in casa NVIDIA sono molto gelosi del loro lavoro sia che sia hardware che software.

    In compenso c’è nouveau, che è l’implementazione libera per schede NVIDIA, anche se al momento il supporto 3D e in fase di testing.

    Ricordiamoci inoltre che il kernel Linux nasconde di base al suo interno, numerosi BLOBS, che, se pur rilasciati in GPLv2 sono pezzi di cui non si ha il codice.

    Questo porterebbe in alto il numero di aziende da convincere con la forza, tattica a mio avviso sbagliata e controproducente, dato che ci potrebbe riportare indietro di anni sul supporto driver. Queste cose devono crescere con il tempo e con lo sviluppo. Questo non preclude assolutamente che bisogna comunque fare attivismo per il SL, e rompere un po’ le scatole ai produttori per avere l’agognato codice.

    • 29 luglio 2009 alle 21:37

      Guarda, secondo me no.
      Ovviamente il tutto andrebbe fatto in modo graduale, con dei periodi di transizione in cui certi simboli diventano gpl e altri no, magari inducendo a rendere libero solo una parte del driver. Poi, piano piano…

  8. vaino
    29 luglio 2009 alle 21:25

    Leggere il tuo blog fa sempre piacere, articolo interessante quando passo di qui imparo sempre qualcosa di nuovo e di bello, complimenti x l’articolo, come sempre molto ben fatto e scorrevole da leggere

  9. 30 luglio 2009 alle 2:12

    Se fossi la Microsoft non credo che riscriverei 20’000 righe di codice, più altrettante per la riscrittura di certe funzioni. Non credere che questo sia stato un “passo fondamentale verso l’opensource visto dalle grandi società”, è stata una mera considerazione finanziaria. Dopotutto quel codice non sarà mai utilizzabile tranne forse che per prender spunto per un’improbabile implementazione di rete: non ha né capo né coda.

    Perché dare tanto scalpore ad una notizia del genere? Anche tu stesso hai citato che la decisione presa è stata presa perché “pizzicati” ad usare codice GPL in software proprietario. Quando la MS rilascerà codice opensource perché avrà voglia di farlo, allora sì che dovrai far squillare le trombe ed urlare all’opensource! Ma prima è inutile, serve solo per un “+1” al tuo blog…

    • 30 luglio 2009 alle 13:59

      secondo me è ancora più importante il fatto che sono stati costretti dalla licenza. E’ di questo che parlo nell’articolo, ovvero che la GPL è un’arma per il mondo libero.

      • aytin
        30 luglio 2009 alle 16:09

        Pienamente d’accordo.
        Ma “arma” mi sa di minaccioso.
        E’ più uno strumento per evitare furti, un bel cane da guardia🙂

  10. 30 luglio 2009 alle 12:12

    Mi permetto di dire che il discorso in base al quale obbligare qualcuno a rilasciare codice secondo questa o quella licenza (nella fattispecie, parlando di moduli per il kernel, GPL2) non implica che in questa maniera anche altri si convinceranno a farlo (leggasi NVIDIA).
    Il punto di forza di Linux è la cooperazione, è un software (anzi un sistema), che non nasce dall’esigenza di questa o quella compagnia di attaccare un determinato segmento di mercato, ma in primis come esercizio stilistico, e poi come comunità che si è storicamente impegnata ad adattarlo (e quindi riplasmarlo) secondo gli usi ed i gusti di ciascuno.
    Obbligare qualcuno a lavorare in una certa maniera (e quindi obbligarlo a sottostare a certe regole, che, per quanto giuste, sempre paletti sono), non significa certo attirarlo dentro la comunità. Questo qualcuno parteciperà fin tanto e come gli converrà, per poi salutare baracca e burattini in favore di un nuovo sistema (Linux è un sistema attuale, e non è detto che duri 20 anni).
    La forza della comunità Opensource è sempre stata l’apertura, il dialogo, e soprattutto la capacità di “ascoltare” qualsiasi opinione e contributo, indipendentemente dal quanto e dal come e dal quando.
    Perciò obbligare qualcuno a fare le cose in una certa maniera, sperando così di obbligarlo a far parte di una realtà (la comunità) in cui non ha scelto liberamente di appartenere, sarebbe un po’ come se si chiedesse agli sviluppatori della suddetta comunità di abbracciare in toto gli ideali opensource e lavorare esclusivamente a codice GPL, sempre e cmq gratuitamente… peccato che la gente debba anche mangiare…

    • 30 luglio 2009 alle 14:01

      e chi dice che deve lavorare gratuitamente? Intel, che rilascia quasi tutto sotto GPL, è un’associazione benefica?

      • Ichigo
        5 agosto 2009 alle 17:06

        Scusa, ma Intel non guadagna soldi con il software…

  1. 29 luglio 2009 alle 12:20
  2. 5 agosto 2009 alle 14:52
  3. 8 luglio 2010 alle 16:51

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: