Licenze e modifiche open source

3

Vedo nelle Domande frequenti sulla licenza GPL :

Does the GPL require that source code of modified versions be posted to the public? (#GPLRequireSourcePostedPublic)

The GPL does not require you to release your modified version, or any part of it. You are free to make modifications and use them privately, without ever releasing them. This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization.

Ho sempre visto la licenza GPL come una licenza più restrittiva di MIT, BSD, ecc., e come un modo per essere sicuro che se le modifiche / miglioramenti sono fatti (e / o usati in un contesto commerciale), i miglioramenti andrebbero a beneficio dell'autore originale e dell'intera comunità . A causa della risposta alle FAQ qui menzionata, sembra che mi fossi sbagliato.

Domanda:

La licenza GPL non aiuta a garantire che i miglioramenti di un software possano beneficiare dell'intera comunità? In tal caso, ci sono altre licenze ben note che si interessano di questa domanda?

Facciamo un esempio. Esiste una licenza open source che richiede che se qualcuno fa un nuovo JSBIN riutilizzando parti del link , allora questo nuovo "servizio online" "avrebbe bisogno di essere open-source? Sembra che GPL non lo offra, secondo il punto discusso nella prima parte di questa domanda.

    
posta Basj 02.12.2014 - 01:20
fonte

1 risposta

8

Sì, i miglioramenti non distribuiti non hanno bisogno di avere il codice sorgente rilasciato. Questa è stata una decisione intenzionale durante la progettazione della GPL; ti è permesso modificare il codice per i tuoi scopi senza dover dire a nessuno quello che stai facendo, o per distribuire qualcosa ad esso correlato. La GPL non ha mai inteso dire "se si migliora il codice, è necessario rilasciare i miglioramenti", ma piuttosto "se fa rilascia i miglioramenti, devi rilasciarli come software libero."

L'obiettivo della GPL è sicuramente non per garantire che qualsiasi miglioramento avvantaggi l'intera comunità. Invece, la GPL è progettata per aiutare a fornire agli utenti le quattro libertà definite dalla FSF. Con licenze permissive, il software open source può essere incorporato in software closed-source con restrizioni che la FSF non ritiene siano etiche (in alcuni casi, un programma closed-source può spostare completamente il programma FOSS da cui è derivato, e la FSF certamente non vuole che accada); quindi, la GPL richiede che chiunque distribuisca software GPLed o derivati del software GPLed per dare agli utenti quelle libertà. In caso contrario, il software closed-source potrebbe utilizzare il codice open-source, ma non viceversa, dando a closed-source un vantaggio competitivo.

Questo vale solo per gli utenti del software; mentre gli utenti devono essere in grado di distribuirlo, i non utenti non hanno il diritto di ottenerlo (devono trovare un utente che vuole distribuirlo a loro). Freedom 3 afferma che gli utenti devono essere in grado di consentire alla community di trarre vantaggio dai propri cambiamenti, ma se non si desidera che la comunità lo faccia, sei libero di non distribuirli. L'unica regola è che qualsiasi utente delle tue modifiche deve anche ottenere le quattro libertà, quindi devi GPL il tuo lavoro derivato se lo rilasci. I non utenti non hanno diritti relativi al tuo software; questo non è solo ciò che la GPL è per. L'uso interno aziendale è un po 'speciale (perché le persone dell'helpdesk probabilmente non hanno accesso al codice del sistema di gestione dei biglietti GPL modificato per motivi amministrativi); lì, dal momento che i dipendenti sono impiegati come parte del loro lavoro, la FSF considera "utente" la società , non i dipendenti. Allo stesso modo, l'utilizzo di un chiosco pubblico non ti rende utente del software a scopo di software libero, quindi non ottieni il codice sorgente.

Questo era lo scopo originale: la community spesso ottiene miglioramenti, ma questo è un effetto collaterale di garantire la libertà dell'utente. Qualcuno che vuole solo fare qualcosa per i propri scopi non deve preoccuparsi. Tuttavia, con Internet, la linea era confusa tra "uso interno" e "condivisione con il mondo" - in senso stretto è simile ai chioschi pubblici, ma sembra un po 'diverso. Con Internet, puoi usare il tuo programma come parte di qualcosa che stai offrendo al mondo intero, senza mai distribuirlo sotto il significato della GPL. Mentre le modifiche generalmente vengono distribuite sotto GPL, Internet significa che molti tipi di software (ad es. Software di database) possono facilmente essere usati per fornire un servizio al pubblico senza essere distribuiti sotto GPL (penso questo contro i chioschi è principalmente una questione di scala e contesto), quindi la FSF ha aggiunto una licenza diversa (la AGPL) che dice che se si ospita un programma AGPL per le persone con cui interagire (ma solo eseguendolo sul server), e lo modifichi, devi condividere le modifiche. L'AGPL non è quello comunemente usato, però.

    
risposta data 02.12.2014 - 03:36
fonte

Leggi altre domande sui tag