sabato, Luglio 27, 2024
HomeTecnologiaRedHat, profitto e comunicazione. La crisi dell'open source

RedHat, profitto e comunicazione. La crisi dell’open source

di Fabio De Sicot

Redhat, con una decisione che ha spiazzato molti utenti, ha deciso che, da ora in poi, rilascera’ il codice sorgente soltanto attraverso il repository di Centos Stream, mentre il codice di RHEL sara’ disponibile attravero il portale di RedHat accessibile con un account registrato. In questo articolo proveremo ad analizzare le conseguenze che questa decisione rappresenta per tutta la comunita’ opensource.

INTRO

Una stanzetta, una luce accesa ed una finestra semi aperta. Era il lontano settembre del 1999 ed un bambino, che amava scienza e tecnologia, si apprestava ad installare la sua prima distribuzione Linux. Dopo molte ore, e dopo molti tentativi, sul monitor apparve la scritta “kernel panic”. Inconsapevole di cosa stava leggendo, e intestarditosi nel voler risolvere il problema, quel bambino non si scoraggio’ e continuo’ a provare e riprovare finche’ non apparve una schermata nera con la richiesta di login. Nessun server grafico, nessun accesso ad internet, tante man pages da consultare. Quando il sole fu alto nel cielo, il padre lo trovo’ ancora davanti al computer e gli chiese “hai fatto colazione”? Per inciso, quel bambino ero io, e quella distribuzione era una RedHat 6.0. Ora pero’ mi chiedo: dov’e’ finito il mio set di dadi? E dov’e’ finito l’ultimo libro della serie Lupo Solitario?

LEGAMI AFFETTIVI INVOLONTARI

In quelle prime notti insonni imparai una cosa: poter leggere il codice sorgente di un software, poter attivare o disattivare un modulo del kernel, poter creare un link simbolico, poter navigare liberamente fra i file di configurazione, modificarli e potenzialmente distruggerli facendo danni(!), era straordinariamente importante. Stavo, in sostanza, “imparando cose” grazie all’open source, un’idea sviluppatasi negli anni ’80 grazie alla Free Software Foundation di Richard Stallmann che poi diede vita a licenze come la GPL, la MIT, la Apache, la MPL e cosi’ via. Il kernel Linux, appunto, era rilasciato proprio sotto licenza GPL, e quella era una distribuzione GNU/Linux.

Sviluppai quasi immediatamente una sorta di legame affettivo con la RedHat. Un po’ perche’ (forse) il primo amore non si scorda mai, un po’ perche’ quel terminale mi faceva capire quanto fossi ignorante. E la cosa mi piaceva tanto (masochismo uber alles).

RedHat Linux (aka RHL), insieme a Slackware, Debian e altre, era una delle distribuzioni piu’ popolari a quei tempi. La sua prima versione stabile venne pubblicata nel lontano 1995 e resistette fino alla fine del 2003, anno dell’ultima release numerata come 9.0.

A quel punto della storia, comparvero pero’ i primi tre attori in campo di cui ci occuperemo. Il primo si chiama RedHat Enterprise Linux (aka RHEL) , l’altro Fedora e il terzo (l’attore principale) CentOS .

RHEL, OPENSOURCE E PROFITTO

RedHat Enterprise Linux e’ una distribuzione GNU/Linux, nata negli anni 2000 e sviluppata principalmente per utilizzo aziendale. Per poterla utilizzare a lungo termine – discorso diverso e’ il programma developer che e’ gratuito fino a 16 nodi – una azienda deve acquistare una licenza d’uso che, per esperienza, definirei non esattamente economica. E’ basata sul codice sorgente open source di Fedora, ha un ciclo di vita del prodotto che solitamente è di dieci anni, e fornisce una serie di certificazioni hardware e software che possono essere rilevanti in campo professionale. Per narrare un po’ di storia, RHEL nacque a seguito della decisione da parte di RedHat di fornire un servizio “premium” alle aziende che avevano bisogno di supporto IT per sistemi Linux e a seguito – giusto un anno dopo – della sua prima quotazione in borsa con il simbolo RHAT. Quando si dice: i conti contano.

Va detto, ad onor del vero, che il sistema RHEL e’ da sempre estremamente stabile. Tanto per essere chiari, giusto il CERN di Ginevra (non uno qualunque) utilizza RHEL per gestire i dati provenienti dagli esperimenti effettuati col Large Hadron Collider. Inoltre, pacchetti come Ansible, Cockpit, Satellite, OpenShift, Virtualization e altri, forniscono spesso un incentivo alle aziende per rimanere all’interno del costoso(!) ecosistema Redhat.

Si puo’ dunque far business con l’opensource? Si, si puo’.

UPSTREAM, DOWNSTREAM

Per spiegare il concetto di “upstream” e “downstream” provero’ a fare una analogia. Immaginate di essere in procinto di scrivere un libro. La vostra bozza, piena di correzioni, verifiche, magari anche appunti. la chiameremo upstream. La copia della versione finale, magari con una differente introduzione o una differente copertina, la chiameremo invece downstream.

Fedora e’ tradizionalmente considerata una distribuzione upstream rispetto a RHEL. Cio’ significa che Fedora e’ un ambiente di sviluppo in cui vengono introdotte nuove funzionalita’ che, successivamente, vengono integrate in RHEL. Allo stesso modo, CentOS Linux era una distribuzione downstream rispetto ad RHEL, e cioe’ aveva l’obiettivo di fornire una versione gratuita di RHEL, senza le componenti proprietarie, ma mantenendo la piena compatibilita’ binaria. Questo significa che CentOS manteneva la stabilita’ tipica di RHEL, e inoltre tutte le applicazioni sviluppate primariamente per RHEL potevano essere eseguite 1:1, senza problemi, anche su CentOS.

UN ATTO DI RIBELLIONE (parte 1/2)

La distribuzione CentOS nacque nel 2004 come un tentativo, da parte di alcuni sviluppatori fra cui Gregory Kurtzer, di creare un clone di RHEL, disponibile per tutti, stabile e, sopratutto gratuito. Questo dava un vantaggio competitivo a piccole aziende e singoli sviluppatori che, potendo usufruire della stabilta’ del codice RHEL senza impattare sulle proprie finanze, potevano fornire servizi, creare progetti e sviluppare applicazioni completamente compatibili.

Questa operazione era permessa dal fatto che tutto il codice sorgente di RHEL, linea per linea, tarball per tarball, rispettando una consuetudine ormai consolidata nel mondo open source, era disponibile pubblicamente per il download.

CentOS, inoltre, era un sistema stabile e sicuro anche a livello desktop, e quindi molti utenti cominciarono ad usarlo come rpm-based distro anche in aternativa alla upstream Fedora, mentre i due team cominciarono ad interagire e collaborare insieme. Fu cosi’ che RHEL rimase, per anni, relegato alle ricche aziende che potevano permettersi una salata e costosa sottoscrizione.

Intorno al 2014, a seguito delle statistiche che mostravano come CentOS fosse una delle distribuzioni Linux piu’ utilizzate a livello server, RedHat decise di supportare finanziariamente CentOS con l’intento di integrare il lavoro che i due team realizzavano separatamente. Sembrava una buona notizia, e forse lo era, ma non lo fu per molto. CentOS divenne un progetto direttamente controllato da RedHat e circa 6 anni dopo, A.D 2020, RedHat comunico’ la morte di CentOS in luogo di un nuovo progetto, upstream stavolta, chiamato CentOS Stream. CentOS Stream non era un clone 1:1 di RHEL, e l’ultimo supporto ufficiale per CentOS 7 si sarebbe interrotto nel 2024.

CentOS e’ morto, lunga vita a CentOS.

UN ATTO DI RIBELLIONE (parte 2/2)

La comunita’ opensource, usando un eufemismo, non la prese benissimo. Molti collegarono la decisione di chiudere il progetto ad una storica acquisizione che aveva riempito le pagine dei giornali appena un anno prima. IBM infatti, nel 2019, aveva acquisito RedHat pagandola una cifra pari a 34 milioni di dollari. In una intervista rilasciata a The Register, lo sviluppatore Brian Exelbierd dichiaro’ che il progetto CentOS stava finendo semplicemente perche’ Red Hat aveva rifiutato di investirci sopra poiche’ non aderiva piu’ al suo modello di business. Come si dice in gergo “business is business”, ma evidentemente non per tutti.

A questo punto della storia, quando tutto sembra andare male, come in una favola dove ci sono i buoni e i cattivi, gli eroi tornano alla ribalta e rimescolano tutte le carte in tavola. Uno di quegli eroi lo abbiamo gia’ incontrato: si chiama Gregory Kurtzer ed e’ uno dei fondatori di CentOS. Kurtzer, a seguito dell’infausta decisione di RedHat, decise di creare la distribuzione Rocky Linux con lo scopo di ricominciare laddove CentOS si era fermata, e cioe’ avere un clone 1:1 completamente compatibile con RHEL e sopratutto gratuito. Inoltre, unendo al danno anche la beffa, Rocky creo’ uno script su github per poter migrare automaticamente tutti i server con Centos 8 a Rocky. Quasi contemporaneamente, altri progetti, aderendo alla filosofia del free e open source, nacquero con lo stesso scopo, il piu’ popolare dei quali era certamente Alma Linux.

CentOS dunque non era morto, lunga vita a CentOS.

DUE PAROLE SULLA LIBERTA’

Prima di entrare sulla mera attualita’, vi chiedo un attimo di pazienza per poter, perlomeno, introdurre i concetti essenziali del FOSS (Free and Open Source Software). Generalmente, quando si parla di software libero, si parla della licenza GPL ma questo e’ tristemente molto riduttivo. Le licenze sono molte e ogni distribuzione puo’ aderire a differenti licenze. La stessa RockyLinux aderisce non alla GPLv2 come RHEL ma alla BSDv3, AlmaLinux aderisce alla GPLv2 e cosi’ via. Ed e’ ancora piu’ complicato di cosi’: ogni pacchetto interno alla distro potrebbe essere rilasciato secondo una licenza differente. Cio’ nonostante, tutte le licenze opensource sottostanno a quattro pilastri fondamentali formulati dalla Free Software Foundation circa 30 anni fa.

Liberta’ 0: liberta’ di utilizzare il programma

Liberta’ 1: liberta’ di studiare il programma e di modificarlo

Liberta’ 2: liberta’ di distribuire copie del programma originale

Liberta’ 3: liberta’ di distribuire copie del programma con i suoi miglioramenti

Tenendo a mente questi pilastri…

RHEL CHIUDE IL CODICE. MA DAVVERO DAVVERO?

Con un post da appena 2046 caratteri intitolato “Furthering the evolution of CentOS Stream“, RedHat comunica che “CentOS Stream sara’ da ora in poi l’unico repository per le versioni pubbliche di codice sorgente relative a RHEL. Per i clienti e i partner di Red Hat, il codice sorgente rimarra’ disponibile tramite il Red Hat Customer Portal”.

Ok, facciamo un passo indietro. Vi ricordate quando abbiamo detto, parlando di Centos come clone originale 1:1, che questa operazione era permessa dal fatto che tutto il codice sorgente di RHEL, linea per linea, tarball per tarball, era disponibile pubblicamente per il download ? Bene, il problema sta tutto qua. Se l’unico codice aperto per RHEL, da ora in poi, sara’ quello di Centos Stream, che e’ una versione upstream di RHEL, vuol dire il codice sorgente di RHEL sara’ disponibile solo sul portale RedHat con accesso chiuso ai clienti. Ora, stante il fatto che si puo’ creare un account sul portale RedHat senza dover pagare un centesimo, il problema e’ la “user agreement“. Infatti, se RedHat identificasse un utilizzo non appropriato del proprio codice, in base alle clausole che si accettano in ambito di registrazione, avrebbe tutto il diritto di chiudere l’account incriminato.

Ma, come specifica la Software Freedom Conservancy riguardo la licenza GPLv3:

Non è possibile imporre ulteriori restrizioni all’esercizio dei diritti concessi o confermati ai sensi della presente licenza. Per esempio, non si puo’ imporre un canone di licenza, royalty o altro addebito per l’esercizio dei diritti concessi ai sensi della presente licenza.

La situazione dunque e’ un gioco di legalese molto complesso. Tanto complesso che le reazioni prese da RockyLinux e da AlmaLinux non sono dello stesso tono. Anzi

https://almalinux.org/blog/impact-of-rhel-changes/

Questo cambiamento significa che noi, in qualità di costruttori di un clone RHEL, saremo ora responsabili delle licenze e degli accordi intorno alle interfacce di RedHat. Purtroppo il modo in cui lo comprendiamo oggi, gli accordi di interfaccia utente di Red Hat indicano che la ripubblicazione delle fonti acquisite attraverso il portale clienti sarebbe una violazione di tali accordi.

https://rockylinux.org/news/2023-06-22-press-release/

Mentre questa decisione cambia l’automazione che usiamo per la costruzione di RockyLinux, abbiamo già creato una mitigazione a breve termine e stiamo sviluppando la strategia a lungo termine. Non ci saranno interruzioni o modifiche per gli utenti, collaboratori o partner di RockyLinux.

La comunita’ opensource ha reagito in maniera non univoca e sullo storico portale LWN.net, i commenti degli utenti non tardano a segnalare dettagli, pareri popolari e impopolari, e prospettive per un incerto futuro. Il problema e’ che, a mio ( e non richiesto) parere, questo e’ un precedente molto pericoloso che se passasse senza conseguenze potrebbe aprire la strada alla fine dell’opensource per come noi lo conosciamo. Viviamo in tempi interessanti.

QUANDO LA TOPPA E’ PEGGIO DEL BUCO

In un tentativo, direi raffazionato, di mettere una pezza al disastro comunicativo degli ultimi giorni, il vice presidente delle piattaforme core Mike McGrath decide di scrivere un altro post sul blog RedHat. E qui le cose si chiariscono. In peggio. Dopo essersi opportunamente lamentato del fatto che la comunita’ opensource ha cominciato ad appellare RedHat come “maligna” e “contro l’opensource” (qui alcune delle reazioni) ecco che arrivano alcune frasi capolavoro:

gran parte della rabbia per la nostra recente decisione proviene da coloro che non vogliono pagare per il tempo, gli sforzi e le risorse che entrano in RHEL o da coloro che vogliono riconfezionarlo per il proprio profitto

E poi:

la semplice ricostruzione del codice, senza aggiungere valore o modificarlo in alcun modo, rappresenta una vera minaccia per le aziende open source ovunque. questa è una vera minaccia per l’open source ed ha il potenziale di riportare l’open source in un’attività riservata soltanto agli hobbisti e agli hacker

Di grazia: da quando e’ diventato un problema che l’opensource sia una attivita’ per hobbisti e hacker? Se non fosse per gli hobbisti e gli hacker, Linux neanche esisterebbe e IBM non pagherebbe neanche un lauto stipendio a McGrath. Cosi’, per ricordare l’ovvio eh…

UNA COMUNICAZIONE FATTA MALE

Negli ultimi anni, RedHat ha davvero datto un calcio alla reputazione che, durante questi anni si era guadagnata nel mondo opensource. RedHat da sempre sponsorizza progetti per la promozione dell’opensource: iniziative, portali, podcast, convegni, chi piu’ ne ha piu’ ne metta. Inoltre RedHat e’ ad oggi il secondo contributore al mondo per quanto riguarda la scrittura del codice Linux. Ergo: sostenere che RedHat e’ contro l’opensource non e’ soltanto ingeneroso, ma, dati alla mano, e’ anche falso. Nonostance cio’, le decisioni di killare CentOS prima e tentare di killare Almalinux e RockyLinux poi, non sono proprio nel suo stile. Anzi.

Cara RedHat, sei meglio di cosi’, e lo sai. La comunita’ ha bisogno di te come tu hai bisogno della comunita’. Torna ad essere quello che sei sempre stata e smetti di essere arrogante. Sta casa ‘spietta a’ te.

Fabio De Sicot

RELATED ARTICLES

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui

ARTICOLI CORRELATI