Pali Rohár ha cambiato la licenza del progetto libopenaptx, che offre un'implementazione del codec aptX (Audio Processing Technology) utilizzato nel profilo Bluetooth A2DP. Il pacchetto include la libreria libopenaptx.so e strumenti per la codifica e decodifica dell'audio. La licenza è stata modificata da LGPLv2.1 a GPLv3+, il che comporterà l'impossibilità di utilizzare il codice libopenaptx in progetti distribuiti solo sotto licenza GPLv2 senza ri-licenziare il codice collegato alla libreria a GPLv3. In questo modo, sarà raggiunta la compatibilità con progetti sotto licenza Apache 2.0.
Il cambio di licenza è stata una risposta a un conflitto con gli sviluppatori del progetto Freedesktop e l'azienda Collabora, che secondo il creatore di Libopenaptx hanno violato il contratto di licenza e abusato del codice di condotta adottato. In particolare, secondo Pali, gli sviluppatori di Freedesktop e Collabora hanno trasferito il suo codice in PulseAudio, senza indicare informazioni sull'autore.
Come prova, l'autore di libopenaptx ha citato la funzione decode_buffer da lui scritta, in cui coincidono persino i commenti, ma secondo Pali gli sviluppatori di Freedesktop hanno dichiarato che si tratta del loro codice originale. In risposta all'indignazione e al tentativo di discutere il fatto che tale azione costituisse una violazione dell'accordo di licenza, gli sviluppatori di Freedesktop hanno semplicemente rimosso il messaggio sul problema con la scusa che tale discussione violava il codice di condotta adottato nel progetto.
Rendendosi conto dell'impossibilità di risolvere il problema pacificamente, l'autore di libopenaptx ha cambiato la licenza in GPLv3 e ha aggiunto una nota che vieta l'uso del codice nei progetti di Freedesktop. La modifica della licenza è entrata in vigore a partire dalla versione libopenaptx 0.2.1, che è già stata aggiunta dagli sviluppatori di Freedesktop nella lista nera, vietando l'uso nel codice di PipeWire a causa di incompatibilità di licenza.
Daniel Stone, ex membro del consiglio di amministrazione della X.Org Foundation e uno dei principali sviluppatori di Wayland e PipeWire, attualmente responsabile dei progetti grafici presso Collabora, ha dichiarato che la modifica della licenza di libopenaptx è discutibile dal punto di vista legale. Libopenaptx non è un progetto personale di Pali Rohar, ma è semplicemente un fork del codice del progetto FFmpeg, che inizialmente era fornito con la licenza LGPLv2.1, e Pali Rohar non può modificare unilateralmente la licenza delle parti di codice che non gli appartengono, tanto meno imporre ulteriori restrizioni sull'uso.
Per la ri-licenza è necessario il consenso esplicito degli autori originali del codice da cui è stato creato il fork. In conformità con i termini della LGPL, l'aggiornamento della licenza senza il consenso degli altri autori è possibile solo a una versione più recente della LGPL, ovvero fino alla LGPL v3.0, ma non alla GPLv3, che include ulteriori restrizioni. Pali Rohar ha risposto che non ha imposto ulteriori restrizioni, il progetto ora è fornito con una licenza GPLv3 pura, e i riferimenti a Freedesktop e Collabora sono solo una spiegazione nel file README su ciò che i progetti in violazione della GPLv3 non possono utilizzare il codice.
Per quanto riguarda l'affermazione che Freedesktop abbia violato la licenza di Libopenaptx, secondo Daniel Stone, essa non corrisponde alla realtà, poiché il codice è stato trasferito dal sviluppatore al progetto PulseAudio accettando i termini del contratto di licenza e ulteriori tentativi dello sviluppatore di Libopenaptx di revocare i diritti concessi sul codice non hanno validità. È infondato anche stabilire un legame tra il rispetto del codice di condotta e la violazione della licenza, così come l'affermazione di violazione della licenza da parte di Collabora, che non ha alcun legame con le azioni che hanno portato al bando di un partecipante.
Daniel Stone ha dichiarato di aver rimosso quella discussione e di aver bloccato lo sviluppatore di Libopenaptx, ma lo ha fatto per iniziativa personale al di fuori dell'orario lavorativo e non come dipendente di Collabora. La rimozione è avvenuta dopo ripetute violazioni del codice di condotta accettato da tutti i partecipanti alle discussioni. Paragonare la rimozione dovuta a un comportamento alla violazione della licenza è ridicolo, poiché le licenze open source non regolano il diritto di sviluppare solo su piattaforme non moderate e non richiedono l'accesso illimitato a tutte le piattaforme di sviluppo.
Fonte: opennet.ru
