GNU General Public License

Da Wikipédia, a enciclopédia livre.
Ir para a navegação Ir para a pesquisa
GNU General Public License
GPLv3 Logo.svg
logotipo da última versão, o GNU GPLv3
Autor Richard Stallman
Versão 3
editor Free Software Foundation, Inc.
Data de publicação 1989
Compatível com DFSG sim
Software grátis sim
OSI aprovado sim
Copyleft sim
Vinculando a partir de código sob licença diferente Não (exceto link GNU AGPLv3 com GNU GPLv3)

A GNU General Public License (comumente denotada pelo ' acrônimo GNU GPL ou simplesmente GPL) é um copyleft forte licenciado para software livre , originalmente espalhado em 1989 por Richard Stallman para patrocinar programas criados para o sistema operacional GNU . Na verdade, ao contrário de outras licenças livres não copyleft, uma obra protegida pela GNU GPL deve permanecer livre, ou seja, com as seguintes alterações deve continuar garantindo aos seus usuários as chamadas quatro liberdades . [1]

A Free Software Foundation pode publicar novas revisões ou versões, a última das quais foi publicada em 29 de junho de 2007 com o nome de GNU GPL v3. [1] O nome da licença ( Público Geral ) se deve ao fato de que o autor de qualquer software pode aplicar a licença no estado em que se encontra. [2] O editor de texto Emacs e o kernel do Linux são exemplos populares de software que adotou esta licença pela primeira vez.

História

Stallman falando na Wikimania 2005 ( Frankfurt am Main )

O problema do GNU Emacs

Nos primeiros anos do Projeto GNU , cada programa de software individual era publicado sob uma licença específica, válida apenas para aquele programa. Qualquer pessoa que quisesse reutilizar uma licença teria que copiar o texto alterando os parâmetros específicos (por exemplo, o nome do software, o autor, etc.).

Em 1984 , Richard Stallman foi ordenado pela UniPress a cessar a distribuição do editor de texto GNU Emacs , que reutilizou o código Gosling Emacs. Na verdade, Gosling havia inicialmente distribuído o software sem restrições, só depois vendendo para a Unipress. Stallman é forçado a substituir as partes protegidas por direitos autorais por um novo código. Porém, pela primeira vez, a experiência negativa aproximou-o da ideia de uma licença que impediria tal apropriação de software livre. [3]

Versão 1

Eben Moglen , co-autor com Stallman do primeiro texto da GNU GPL

Em 1989, Stallman, pegando o conteúdo de licenças de software GNU (em particular GNU Emacs), juntamente com Eben Moglen , realiza a primeira versão da Licença Pública Geral GNU (GNU GPLv1), aplicável sem modificação a qualquer pessoa que a declare no programa em si. Essa primeira versão é publicada justamente no dia 25 de fevereiro do mesmo ano e impede que os distribuidores de software limitem as liberdades que definem o software livre. Na verdade, os distribuidores só podiam publicar arquivos binários, executáveis, mas não legíveis ou modificáveis ​​por humanos. Para evitar isso, a GPLv1 afirma que qualquer fornecedor, ao distribuir arquivos binários, também deve tornar o código-fonte legível e disponível sob os mesmos termos de licença (pontos de licença 3a e 3b).

O segundo problema era que os distribuidores podiam adicionar restrições adicionais, adicionando restrições de licença ou combinando o software com outro software que tinha outras restrições em sua distribuição. Neste caso, seguiu-se a união das duas séries de restrições aplicadas ao trabalho combinado, podendo, portanto, ser acrescentadas restrições inaceitáveis. Para evitar isso, a GPLv1 estipula que as versões modificadas, como um todo, devem ser distribuídas nos termos da GPLv1 (Seções 2b e 4 do título). Portanto, o software distribuído sob os termos da GPLv1 poderia ser combinado com o software em termos mais brandos, pois isso não mudaria as condições sob as quais todo o pacote poderia ser distribuído. Por outro lado, o software distribuído sob a GPLv1 não poderia ser combinado com o software distribuído sob uma licença mais restritiva, pois isso seria contrário ao requisito de que todo o objeto seja distribuível sob a GPLv1.

Versão 2

Em 1991, a GNU GPLv2 é publicada. Segundo Richard Stallman , a modificação mais importante dessa versão é a cláusula que ele chamou de "Liberdade ou morte" . Esta cláusula exige que, se houver restrições de qualquer tipo à distribuição gratuita do software de acordo com os termos indicados na licença, o software não poderá ser distribuído de forma alguma. Por exemplo, se uma lei impede que você distribua o código-fonte , todos os softwares protegidos pela GNU GPLv2 não podem ser distribuídos. A esperança é tornar menos atraente para as empresas recorrer a ameaças de patentes ou exigir pagamento de desenvolvedores de software livre.

Desde 1990 tornou-se evidente que o uso de uma licença menos restritiva seria estrategicamente mais útil para bibliotecas C e para aquelas bibliotecas de software que agora, na prática, funcionavam como se fossem do tipo proprietário [4] ; quando, em junho de 1991, a versão 2 da GPL (GPLv2) foi lançada e, portanto, uma segunda licença foi introduzida - a "Licença Pública Geral de Biblioteca" - que, considerando a complementaridade, manteve o mesmo nome com o único acréscimo da letra " L "(LGPLv2).

A numeração da versão diferiu a partir de 1999, quando a versão 2.1 da LGPL foi lançada, que foi renomeada para GNU Lesser General Public License para manter sua filosofia original.

A difusão

Arrows-folder-categorize.svg Os itens individuais estão listados na Categoria: software licenciado GNU GPL v2

A GNU GPLv2 teve algum sucesso no mundo do software livre.

Em 1997, ele aparece entre as licenças em conformidade com o Debian Free Software Guidelines (DFSG), ou com os guidelines do projeto Debian. Em 1998, com o nascimento da Open Source Initiative, ela aparece na primeira lista de licenças de código aberto.

Versão 3

Arrows-folder-categorize.svg Os itens individuais estão listados na Categoria: software licenciado GNU GPL v3

No final de 2005, a Free Software Foundation (FSF) anunciou que está trabalhando na versão 3 da GPL (GPLv3). Em 16 de janeiro de 2006, foi publicado o primeiro "draft para discussão" da GPLv3, seguido da consulta pública inicialmente programada para nove ou quinze meses, mas que se estendeu para dezoito meses com quatro projetos em espera.

O processo de consulta pública foi coordenado pela Free Software Foundation com a assistência do Software Freedom Law Center, da Free Software Foundation Europe e de outros grupos de software livre. Os comentários foram coletados do público por meio do portal da web gplv3.fsf.org. Esse portal executou um software especialmente escrito chamado stet.

Durante o processo de consulta pública, foram enviados 962 comentários para a primeira versão. No final, um total de 2636 comentários foram enviados.

O terceiro rascunho foi publicado em 28 de março de 2007. Este rascunho limita as cláusulas anti- tivoização a uma definição legal de "usuário" ou "produto de consumo". Também retirou explicitamente a secção "Limites Geográficos", cuja provável supressão foi anunciada no início da consulta pública.

O quarto e último rascunho da discussão foi publicado em 31 de maio de 2007. Introduziu a compatibilidade da Licença Apache , esclareceu a função de contratantes externos e abriu uma exceção para evitar problemas percebidos em um acordo como o Microsoft - Novell, declarando de fato na seção 11 (6) que você não pode distribuir um programa coberto se você for parte de um contrato com um terceiro que está no negócio de distribuição de software [...]. A intenção era tornar essas ofertas ineficazes no futuro.

Alguns desenvolvedores de kernel Linux de alto nível comentaram publicamente sobre suas objeções ao rascunho das partes 1 e 2 da discussão.

Em 29 de junho de 2007, a Free Software Foundation finalmente publica a versão 3 da licença (GNU GPLv3), que introduz medidas contra a tivoização, contra alguns efeitos do gerenciamento de direitos digitais, bem como maior proteção contra patentes de software e a definição de "fonte código ". Outras mudanças estão relacionadas à internacionalização, como as violações de licença são tratadas e como permissões adicionais podem ser concedidas pelo detentor dos direitos autorais.

A versão Affero

Arrows-folder-categorize.svg Os itens individuais estão listados na Categoria: software licenciado GNU AGPL

Durante a gestação da GPLv3, foi discutida a introdução da obrigação de distribuir o código para programas executados em um computador remoto (como um site). A decisão final foi não incluir a obrigação na GPLv3, mas criar uma nova licença que a preveja, a GNU Affero General Public License ( GNU AGPL ), compatível com esta versão.

Recursos

A Free Software Foundation (FSF) detém os direitos autorais do texto da GNU GPL, mas não tem direitos sobre o software coberto por ela. A GNU GPL não é editável livremente: apenas cópia e distribuição são permitidas. A FSF permite que você crie novas licenças baseadas na GNU GPL, contanto que essas licenças não usem o mesmo preâmbulo sem permissão. Uma vez que a nova licença geralmente não é compatível com a GNU GPL, a FSF não recomenda a criação de versões modificadas.

Ele garante aos usuários finais, como organizações, empresas ou indivíduos, o uso, compartilhamento e até mesmo modificar o software (esta última operação não era garantida pelas licenças de software proprietário ).

A GPL é uma licença copyleft , o que significa que trabalhos derivados só podem ser distribuídos sob os mesmos termos de licença. GPL foi a primeira licença copyleft de uso geral. Para tornar um programa gratuito, a GPL convida os programadores a declará-lo em domínio público, portanto livre de direitos autorais.

A GNU GPL foi projetada para ser facilmente aplicada a programas se você possuir os direitos sobre eles. Para fazer isso, você não precisa modificá-lo, mas apenas adicionar uma nota no programa que se refere a ele.

Para manter o título atualizado, a licença GPL inclui uma cláusula opcional "qualquer versão posterior", que permite aos usuários escolher entre os termos ou condições originais nas novas versões atualizadas pela FSF.

No projeto GNU, as condições de distribuição específicas usadas estão contidas na GNU General Public License, na GNU Lesser General Public License e na GNU Free Documentation License .

Contente

Como qualquer licença de software, a GPL é um documento legal associado ao programa publicado sob essa licença. Como qualquer licença de software livre, concede aos licenciados permissão para modificar o programa, copiá-lo e redistribuí-lo com ou sem modificação, gratuitamente ou mediante pagamento. Este último ponto distingue a GPL das licenças de software que proíbem a distribuição comercial. A FSF argumenta que o software livre não deve colocar restrições ao uso comercial, enquanto a GPL afirma explicitamente que os trabalhos da GPL podem ser vendidos a qualquer preço.

Os distribuidores são obrigados a disponibilizar o código-fonte do software às pessoas que receberam uma cópia ou, alternativamente, a acompanhar o software com uma oferta por escrito para disponibilizar o código-fonte mediante solicitação a um preço nominal.

A GPL também afirma que um distribuidor não pode impor "outras restrições aos direitos concedidos pela GPL". Isso proíbe atividades como distribuição de software sob um acordo ou contrato de não divulgação. No entanto, está claro que a FSF não possui os direitos autorais de um trabalho publicado sob a GPL, a menos que um autor explicitamente atribua os direitos autorais à FSF (o que acontece raramente, exceto para programas que fazem parte do projeto GNU). Apenas os detentores de direitos individuais têm autoridade para processar em caso de violação de licença.

A GPL impõe condições a qualquer pessoa que redistribua software. A base legal para isso está na licença específica: se o usuário não aceitar as condições especificadas, ela se torna nula e, portanto, não concede nenhuma permissão. Em particular, uma vez que o software é protegido por leis de direitos autorais e leis internacionais de direitos autorais, quem quer que obtenha o software não tem o direito de modificá-lo, copiá-lo ou redistribuí-lo fora dos concedidos pela licença.

Em comparação com outras licenças de software livre, a GPL pode ser classificada como:

O c invertido dentro de um círculo é o símbolo do copyleft .
  • "persistente" porque impõe uma restrição à redistribuição: se o usuário distribui cópias do software, ele deve fazê-lo nos termos da própria GPL. Na prática, ele deve distribuir o texto GPL junto com o software e acompanhá-lo com o código-fonte ou as instruções para obtê-lo a um custo nominal. Essa é a principal característica da GPL, conceito idealizado por Richard Stallman e batizado por ele de copyleft . O efeito que atinge é manter um programa livre depois de colocado sob a GPL, mesmo que seja melhorado corrigindo-o e expandindo-o. Observe que, excluindo a possibilidade de que a saída seja um trabalho derivado do programa, o copyleft se aplica apenas ao software e não à sua saída, a menos que ele mesmo contenha código distribuído sob a GPL. [5]
  • "propagativo" porque define no texto uma interpretação particular de "código derivado", de modo que, em geral, a união de um programa coberto pela GPL com outro programa coberto por outra licença pode ser distribuída sob a GPL ou, alternativamente, não pode ser distribuída em tudo. No primeiro caso, a outra licença é considerada "compatível com a GPL"; no segundo caso, não. Esse recurso é conhecido como copyleft forte na terminologia da FSF. Seu objetivo é evitar que a persistência seja gradualmente enfraquecida ao fazer alterações cobertas por outra licença menos livre, invalidando assim o propósito de manter o software coberto pela GPL gratuito.

Tal como acontece com outras licenças livres normalmente em uso, as versões modificadas de um programa sob a GNU GPL estão sujeitas à restrição de copyleft apenas no caso de distribuição , ou seja, quando o software é transferido de uma entidade legal para outra. Em nenhuma circunstância existe qualquer obrigação de distribuição.

A GPL é incompatível com patentes de software , porque proíbe explicitamente qualquer restrição de distribuição além das definidas na própria licença. A rigor, portanto, o software GPL protegido por patente não pode ser distribuído onde essas patentes estão em vigor, a menos que os proprietários dessas patentes permitam seu uso incondicional para a finalidade de execução desse software.

garantia

Tal como acontece com outras licenças gratuitas e, em geral, como outras licenças de software, o fornecedor do software não oferece nenhum tipo de garantia para o programa. Em caso de avaria ou qualquer outro defeito, será o próprio comprador quem deverá providenciar as reparações por sua conta.

Na verdade, o fornecedor declara explicitamente na licença que não é responsável por falhas, mau funcionamento ou danos sofridos pelo comprador (desde corrupção e perda de dados, até a impossibilidade de usar o programa corretamente), a menos que exigido pelas leis locais ou de outra forma .contrato separado estabelece o contrário.

Recursos introduzidos com GPLv3

A GPL versão 3 esclarece alguns conceitos usados ​​no texto da licença para torná-la mais facilmente aplicável a outras leis que não a americana.

As inovações mais significativas da GPLv3 são [6] :

  • defesa contra um desvio GPLv2 conhecido como tivoization . Consiste em distribuir o código-fonte em conjunto com um programa que roda em plataforma proprietária e que impede via hardware a execução de versões modificadas de um determinado programa, anulando efetivamente a liberdade de modificação.
  • a neutralização de alguns efeitos negativos sobre a liberdade do software pelas leis de gerenciamento de direitos digitais (DRM), como a Lei de Direitos Autorais do Milênio Digital e a Diretiva Europeia de Direitos Autorais . A GPLv3 não impede o uso de tecnologias DRM por autores de software livre, mas impede que quaisquer restrições introduzidas sejam automaticamente impostas a todos os usuários, mesmo de versões modificadas, do software. Em outras palavras, o software sob GPLv3 permite que qualquer desenvolvedor subsequente insira ou remova tecnologias DRM, respeitando sua liberdade.
  • uma proteção legal mais forte para os autores e usuários de software livre coberto pela nova licença, de possíveis ataques por aqueles que trazem ações judiciais por supostas violações de patentes de software . Em particular, os desenvolvedores de software coberto pela GPLv3 também devem distribuir quaisquer licenças de patentes necessárias para exercer os direitos sob a licença junto com o software. Isso impedirá que um dos desenvolvedores processe usuários ou desenvolvedores subsequentes por infringir um direito de patente.
  • o esclarecimento de uma compatibilidade de facto , ou seja, todas as licenças que acrescentam restrições "fáceis de respeitar" são compatíveis (como a não utilização de uma determinada marca registada , que não pode ser utilizada em caso algum).
  • a indicação de novas licenças compatíveis e novos métodos de distribuição do código-fonte, em particular para compartilhamento via BitTorrent .
  • a eliminação da obrigação de distribuir componentes facilmente disponíveis, como bibliotecas de suporte comuns (por exemplo, biblioteca C , Python e Ruby ).

Termos e Condições

Como usar

O software sob a GPL pode ser executado para todos os fins, incluindo fins comerciais e até mesmo como uma ferramenta para a criação de software proprietário, por exemplo, ao usar compiladores licenciados GPL. Os usuários ou empresas que distribuem trabalhos licenciados pela GPL (por exemplo, software) podem receber uma comissão pelas cópias ou distribuí-las gratuitamente. Isso distingue a GPL das licenças de software shareware que permitem a cópia para uso pessoal, mas proíbem a distribuição comercial. A GPL afirma explicitamente que as obras GPL podem ser vendidas a qualquer preço.

Em uso puramente privado (ou interno), sem ser vendido ou distribuído, o código do software pode ser modificado e reutilizado sem exigir que o código-fonte seja publicado. Para venda ou distribuição, todo o código-fonte é necessário para que o software seja disponibilizado aos usuários, incluindo quaisquer alterações e adições de código.

No entanto, o software executado como um programa aplicativo em um sistema operacional licenciado pela GPL, como o Linux, não precisa ser publicado sob a GPL; neste caso, o licenciamento depende apenas das bibliotecas utilizadas e dos componentes de software e não da plataforma subjacente. Somente se porções GPL forem usadas em um programa (e o programa for distribuído), todos os outros códigos-fonte do programa devem ser disponibilizados sob os mesmos termos de licença. A GNU Lesser General Public License (LGPL) foi criada para obter um copyleft fraco em relação à GPL, uma vez que não requer que um código-fonte desenvolvido sob medida (diferente das partes LGPL) seja disponibilizado sob as mesmas condições de licença.

A maioria dos programas licenciados GPLv2 usa o seguinte texto aprovado pela FSF: “Este programa é software livre; você pode redistribuí-lo e / ou modificá-lo sob os termos da GNU / General Public License publicada pela Free software Foundation; tanto a versão 2 da Licença, ou (na sua opinião) qualquer versão posterior ". Este texto não significa que os programas mudarão automaticamente para a próxima versão da licença, apenas que esses programas obterão automaticamente as permissões adicionais da próxima licença e não quaisquer cláusulas restritivas. Portanto, se o desenvolvedor quiser aplicar totalmente a próxima licença, ele terá que alterar o texto para "[...] a versão 3 da Licença ou (na sua opinião) qualquer versão posterior".

No entanto, outros programas especificam explicitamente o uso da versão 2 da GPL (entre eles, o kernel do Linux) ou apenas a versão 3 para manter o controle explícito sobre a licença usada e para evitar o suporte implícito da evolução futura da GNU GPL nas próximas versões .

Copyleft

Os direitos de distribuição concedidos pela GPL para versões modificadas da obra não são incondicionais. Quando alguém distribui um trabalho GPL com suas modificações, os requisitos para distribuir todo o trabalho não podem de forma alguma exceder os requisitos encontrados na GPL.

Esse requisito é conhecido como copyleft. Ele ganha seu poder legal com o uso de direitos autorais em programas de software. Uma vez que um projeto GPL é protegido por direitos autorais, um licenciado não tem o direito de redistribuí-lo, mesmo na forma modificada, exceto sob os termos da licença. Você só é obrigado a cumprir os termos da GPL se quiser exercer os direitos normalmente restritos por direitos autorais, como redistribuição. Por outro lado, se você distribuir cópias do projeto sem cumprir os termos da licença GPL (por exemplo, mantendo o código-fonte em segredo), você pode ser citado pelo autor original sob direitos autorais .

O Copyleft usa então o copyright para realizar o oposto de seu propósito usual: em vez de impor restrições, ele concede os direitos de outras pessoas, de forma a garantir que esses direitos não possam ser posteriormente anulados.

Muitos distribuidores de programas GPL agrupam o código-fonte com executáveis. Um método alternativo de satisfazer o copyleft é fornecer uma oferta por escrito para fornecer o código-fonte em um meio físico (como um CD) mediante solicitação. Na prática, muitos programas GPL são distribuídos na Internet e o código-fonte é disponibilizado via FTP ou HTTP , o que está de acordo com a licença.

Copyleft só se aplica quando uma pessoa tenta redistribuir o programa. Você tem permissão para modificar o software de forma privada sem qualquer obrigação de divulgar as modificações até que o software modificado seja distribuído externamente.

Licença e contrato

A GPL foi projetada como uma licença ao invés de um contrato. Em algumas jurisdições de common law , a distinção legal entre uma licença e um contrato é importante: os contratos são executáveis ​​pela lei contratual, enquanto as licenças são executadas pela lei de direitos autorais. No entanto, essa distinção não é útil em muitas jurisdições onde não há diferenças entre contratos e licenças, como sistemas de direito civil.

Aqueles que não aceitam os termos e condições da GPL não têm permissão sob os direitos autorais para copiar ou distribuir o software ou trabalhos derivados sob a licença GPL. No entanto, se eles não redistribuírem o programa GPL, eles ainda poderão usar o software dentro de sua organização, e os trabalhos (incluindo programas) desenvolvidos com o uso do programa não precisam ser cobertos por esta licença.

Derivações

O texto da GPL é protegido por direitos autorais, e os direitos autorais pertencem à Free Software Foundation .

A FSF permite que indivíduos criem novas licenças baseadas na GPL, desde que os títulos derivados não usem o preâmbulo GPL sem permissão. No entanto, isso não é recomendado, pois essa licença pode ser incompatível com a GPL.

Outros títulos criados pelo projeto GNU incluem a GNU Lesser General Public License e a GNU Free Documentation License.

O texto da GPL não está sob a GPL. O copyright da licença não permite modificação da licença em si. A cópia e distribuição da licença são permitidas, pois a GPL exige que os destinatários obtenham "uma cópia desta Licença junto com o Programa". De acordo com o FAQ da GPL, qualquer pessoa pode fazer uma nova licença usando uma versão modificada da GPL, desde que use um nome diferente para a licença e não mencione "GNU".

Links e trabalhos derivados

De acordo com a FSF, "A GPL não exige que você publique a versão modificada ou qualquer parte dela. Você é livre para fazer modificações e usá-las de maneira privada, sem nunca publicá-las." No entanto, se você distribuir um projeto licenciado pela GPL ao público, há um problema de link: ou seja, se um programa proprietário usa uma biblioteca GPL, o programa proprietário viola a GPL?

A GPL é clara ao exigir que todos os projetos de código sob a GPL estejam sob a GPL. A ambigüidade surge em relação ao uso de bibliotecas GPL e ao empacotamento do software GPL em um pacote maior (talvez misturado em um binário via link estático). Em última análise, esta é uma questão não da GPL em si, mas de como os direitos autorais definem os trabalhos derivados.

Comunicação e empacotamento com programas não GPL

O mero ato de se comunicar com outros programas não exige, por si só, que todo o software seja GPL. No entanto, as condições menores devem ser observadas, que garantem que os direitos de software GPL não sejam violados. O que se segue é uma citação do FAQ GPL de gnu.org, que descreve até que ponto o software está autorizado a comunicar-se com programas GPL:

Texto original
Qual é a diferença entre um "agregado" e outros tipos de "versões modificadas"?
Um "agregado" consiste em vários programas separados, distribuídos juntos no mesmo CD-ROM ou outra mídia. A GPL permite que você crie e distribua um agregado, mesmo quando as licenças do outro software não são gratuitas ou são incompatíveis com a GPL. A única condição é que você não pode liberar o agregado sob uma licença que proíbe os usuários de exercer os direitos que a licença individual de cada programa concederia a eles.
Onde está a linha entre dois programas separados e um programa com duas partes? Esta é uma questão legal, que em última instância os juízes decidirão. Acreditamos que um critério apropriado depende tanto do mecanismo de comunicação (exec, pipes, rpc, chamadas de função dentro de um espaço de endereço compartilhado, etc.) e da semântica da comunicação (quais tipos de informação são trocados).
Se os módulos estiverem incluídos no mesmo arquivo executável, eles serão definitivamente combinados em um programa. Se os módulos são projetados para serem executados juntos em um espaço de endereço compartilhado, isso quase certamente significa combiná-los em um programa.
Em contraste, pipes, soquetes e argumentos de linha de comando são mecanismos de comunicação normalmente usados ​​entre dois programas separados. Portanto, quando são usados ​​para comunicação, os módulos normalmente são programas separados. Mas se a semântica da comunicação for íntima o suficiente, trocando estruturas de dados internas complexas, isso também poderia ser uma base para considerar as duas partes combinadas em um programa maior.

Tradução italiana
Qual é a diferença entre um "agregado" e outros tipos de "versões modificadas"?
Um "agregado" consiste em vários programas separados, distribuídos juntos no mesmo CD-ROM ou outra mídia. A GPL permite que você crie e distribua um agregado, mesmo quando as licenças de outro software não são gratuitas ou são incompatíveis com a GPL. A única condição é que não seja possível distribuir o agregado sob uma licença que impeça os usuários de exercer os direitos de licença que um único programa teria concedido a eles.
Onde está a linha entre dois programas separados e um programa de duas partes? Trata-se de uma questão jurídica, que caberá aos juízes resolver. Acreditamos que um critério adequado depende tanto do mecanismo de comunicação (exec, pipes, rpc, chamadas de função dentro de um espaço de endereço compartilhado, etc.) e da semântica da comunicação (quais tipos de informações são trocadas).
Se os módulos estiverem incluídos no mesmo arquivo executável, eles serão combinados permanentemente em um programa. Se os módulos são projetados para trabalhar juntos em um espaço de endereço compartilhado, isso quase certamente significa que eles são mesclados em um programa.
Al contrario, pipes, sockets e gli argomenti della riga di comando sono meccanismi di comunicazione normalmente utilizzati tra due programmi separati. Quindi quando sono utilizzati per la comunicazione, i moduli normalmente sono programmi separati. Ma se le semantiche della comunicazione sono abbastanza vicine, lo scambio di complesse strutture dati interne, anche questo potrebbe essere una base per considerare le due parti combinate in un programma più ampio.

Compatibilità

Guida della compatibilità delle licenze con GPL

Un software licenziato sotto altre licenze può essere combinato con un programma sotto GPL senza conflitti, almeno finché tale combinazione non pone ulteriori limitazioni rispetto a quanto la GPL permette. In aggiunta ai normali termini della GPL, ci sono restrizioni e autorizzazioni aggiuntive che si possono applicare:

1) Se un utente vuole combinare codice concesso in licenza sotto diverse versioni di GPL, questo è consentito solo se il codice con la versione precedente GPL include una dichiarazione "ogni versione successiva". Ad esempio, la libreria GNU LibreDWG licenziata GPLv3 non può essere più utilizzata da LibreCAD e FreeCAD che sono solo licenziate GPLv2.

2) Al codice sotto licenza LGPL è permesso essere collegato con qualsiasi altro codice al di là della licenza che il codice possiede, anche se la LGPL fa aggiungere ulteriori requisiti per il lavoro combinato. LGPLv3 e solo-GPLv2 non possono quindi essere collegate comunemente. Codice sotto licenza LGPLv2.x senza la dicitura "ogni versione successiva" può essere pubblicato solo se tutto il lavoro combinato è concesso in licenza GPLv2 o GPLv3.

FSF possiede una lista di licenze di software libero compatibili con la GPL con molte delle licenze di software libero più comuni, come la licenza originale MIT/X, la licenza BSD (nella sua forma 3-clause corrente) e la Licenza Artistica 2.0.

David A. Wheeler ha sostenuto che gli sviluppatori di software libero/open source utilizzano licenze compatibili solo GPL, perché fare diversamente rende difficile per gli altri partecipare e contribuire al codice.

Un certo numero di aziende utilizzano la multi-licenza per distribuire una versione GPL e vendere una licenza proprietaria per le aziende che desiderano combinare il pacchetto con il codice proprietario, utilizzando o meno il collegamento dinamico.

Le critiche di Linus Torvalds

Linus Torvalds nel 2002.

Linus Torvalds , autore della prima versione del kernel Linux, è stato ad esempio inizialmente contrario alla licenza GPLv3 per la rigida determinazione etica delle prime bozze della licenza, da lui ritenuta di "crociata" contro la tivoization . «Secondo me uno dei motivi per cui Linux ha avuto tanto successo è la qualità del progetto, non certo l'atteggiamento di crociata che molti gli vogliono attribuire» ha dichiarato Linus Torvalds. Infine ha ribaltato la posizione di Richard Stallman : «non è la GPL ad aver reso famoso Linux, ma è Linux ad aver reso "presentabile" la GPL, essendo dannatamente meno integralista di quello che la FSF vuole». [7] Pur dopo la pubblicazione della nuova versione della licenza, Torvalds è rimasto scettico, dichiarando che Linux non verrà distribuito con licenza GPLv3 [8] . Stallman nel settembre 2007 ha commentato riguardo alla posizione di Torvalds ritenendola una conseguenza della posizione filosofica che differenzia in modo decisivo la comunità che promuove il software libero da chi favorisce l' open source :

«Il termine open source è stato promosso nel 1998 da gente che non voleva dire libero o libertà. Associavano quel termine ad una filosofia che riguarda solo valori di convenienza pratica [...] Non dico che sbaglino ma non colgono il punto. Se si negano i valori della libertà e della solidarietà, e si apprezza soltanto software potente ed affidabile, si compie un errore terribile. [...] Il fatto che Torvalds dica open source invece di software libero dimostra da dove viene. Ho scritto la GNU GPL per difendere la libertà di tutti gli utenti di tutte le versioni di un programma. Ho sviluppato la versione 3 per farlo meglio e per proteggerla contro nuove minacce [..] Torvalds dice che non persegue questo obiettivo; e questo è probabilmente il motivo per il quale non apprezza la GPL versione 3. Rispetto il suo diritto di esprimere le proprie idee, anche se penso che siano folli. Comunque, se non vogliamo perdere la nostra libertà, è meglio non seguirlo. [9] »

Utilizzo

I programmi di software libero di spicco sotto licenza GPL includono il kernel Linux e il GNU Compiler Collection (GCC). In altri programmi di software libero ( MySQL è un esempio lampante) che hanno licenze multiple, spesso una delle licenze è di tipo GPL.

È possibile usare la GPL per documenti di testo invece che per programmi per computer, o più in generale per tutti i tipi di mezzi di comunicazione, nel caso in cui sia chiaro cosa costituisce il codice sorgente. Per i manuali e libri di testo, però, la FSF raccomanda la GNU Free Documentation License (GFDL) invece, che è stata creata per questo scopo.

Se il GPL viene utilizzato per i font, i documenti o le immagini realizzate con tali caratteri potrebbero dover essere distribuiti sotto i termini della licenza GPL.

Dati statistici

Secondo la Black Duck Software, i dati del sito web dimostrano che la famiglia di licenze GPL viene utilizzata nel 54% dei software open-source, in particolare: 33% GPLv2, 12% GPLv3, 6% LGPL 2,1, 3% LGPL 3,0.

Matthew Aslett, un analista, ha sostenuto (in base alle statistiche di Black Duck Software) che le licenze "copyleft" sono andate in declino mentre le licenze permissive in aumento. Tuttavia, uno studio successivo ha mostrato che il software sotto licenza GPL è aumentato, e anche i dati della Black Duck Software hanno mostrato un incremento complessivo di progetti software sotto licenza GPL. Daniel German, professore presso il Dipartimento di Computer Science presso l'Università di Victoria in Canada, durante un intervento nel 2013 ha presentato le sfide metodologiche per determinare quali sono i titoli FOSS più diffusi, e ha mostrato come non riusciva a replicare il risultato da Black Duck Software [10] .

A partire dall'agosto 2007, il GPL ha rappresentato quasi il 65% dei 43.442 progetti di software libero quotati in FreeCode, e nel gennaio 2006 circa il 68% dei progetti elencati su SourceForge .net. Allo stesso modo, nel 2001 un'analisi di Red Hat Linux 7.1 ha trovato che il 50% del codice sorgente è stato pubblicato sotto GPL [11] . Nel 2011, quattro anni dopo la pubblicazione della GPLv3, secondo i dati Black Duck Software il 6,5% di tutti i progetti di licenza open-source usava GPLv3 mentre il 42,5 % usava GPLv2. Il direttore dell'ufficio “programmi open-source” di Google, Chris DiBona, ha riferito che il numero di progetti open-source software su licenza che si erano trasferiti a GPLv3 da GPLv2 nel 2009 è stata del 50% [12] .

Note

  1. ^ a b ( EN ) 9 giugno 2016 , su gnu.org .
  2. ^ Traduzione non ufficiale della GNU GPLv3 , su katolaz.homeunix.net . URL consultato il 9 giugno 2016 (archiviato dall' url originale il 28 maggio 2016) .
  3. ^ ( EN ) RMS lecture at KTH (Sweden), 30 October 1986 (Conferenza di Richard Stallman al Royal Institute of Technology (Svezia), 30 ottobre 1986), URL visitato il 22 aprile 2012
  4. ^ Per maggiori approfondimenti, vedere il Progetto GNU
  5. ^ GNU Bison è un esempio di programma la cui uscita contiene software GPL. Per togliere la copertura GPL all'uscita di Bison, la sua licenza comprende un'apposita liberatoria.
  6. ^ ( EN ) Brett Smith, A Quick Guide to GPLv3 (Una guida veloce alla GPLv3), GNU Operating System.
  7. ^ LinuxHelp.It, Torvalds riapre alla GPL3, ma con riserva , su CyberCultura . URL consultato il 10 aprile 2016 .
  8. ^ ( EN ) Linux non verrà distribuito con licenza GPLv3 , Linux Kernel Mailing List.
  9. ^ Punto Informatico , 13 settembre 2007. Stallman: Torvalds? Non seguitelo. Se avete a cuore le libertà, spiega mr. GNU, il papà di Linux non fa per voi. Lui dice open source, noi diciamo software libero
  10. ^ ( EN ) Surveying open source licenses [LWN.net] , su lwn.net . URL consultato il 9 maggio 2020 .
  11. ^ ( EN ) Richard Fox, Information Technology: An Introduction for Today's Digital World , CRC Press, 2013, p. 226. URL consultato il 9 maggio 2020 .
  12. ^ ( EN ) GPLv3 hits 50 percent adoption - CNET , su cnet.com . URL consultato il 9 maggio 2020 .

Voci correlate

Altri progetti

Collegamenti esterni