. FACULDADE FARIAS BRITO CIÊNCIA DA COMPUTAÇÃO ELIDIANE MARTINS FREITAS UMA ANÁLISE DOS MODELOS DE LICENÇAS DE SOFTWARE VOLTADA À ADMINISTRAÇÃO PÚBLICA Fortaleza, 2010 ELIDIANE MARTINS FREITAS UMA ANÁLISE DOS MODELOS DE LICENÇAS DE SOFTWARE VOLTADA À ADMINISTRAÇÃO PÚBLICA Monografia apresentada ao Curso de Graduação em Ciência da Computação da Faculdade Farias Brito, como requisito parcial para obtenção do Grau de Bacharel em Ciência da Computação. Orientador: Roberto de A. Façanha. Msc Fortaleza, 2010 UMA ANÁLISE DOS MODELOS DE LICENÇAS DE SOFTWARE VOLTADA À ADMINISTRAÇÃO PÚBLICA Elidiane Martins Freitas NOTA FINAL(0-10): _____ Aprovada em JUNHO de 2010 BANCA EXAMINADORA Prof. Msc. Roberto de Almeida Façanha Orientador Prof. Msc. Sérgio Araújo Yunes Examinador Prof. Dr. Mateus Mosca Viana Examinador Fortaleza-Ce 2010 “Sempre que houver conflito entre direitos humanos e direitos de propriedade, os direitos humanos devem prevalecer." - Abraham Lincoln À Deus acima de tudo. Agradecimentos Ao meu professor e orientador, Msc. Roberto Façanha, pela paciência e apoio durante esses últimos anos, desde a elaboração do TCC I até a conclusão deste trabalho. À FUNCAP por financiar esta pesquisa. À toda minha família, que me fornece todo o carinho necessário para que eu supere as dificuldades que surgem: minha mãe, Luciene Lima; minhas irmãs, Elivândia, Elionete, Ednete e Elidivânia; e meu irmão, Macole. Aos meus amigos, pois constituem o elo para uma vida de sucesso; Vinicius Lima, Godva Grace, Alyne Castro e Mauro Neres. Aos colegas de trabalho da COETI, com os quais compartilho os mesmos interesses profissionais; Lícia Viana, Regina Estela, Ana Lúcia, Ricardson Sampaio, Auri Freitas, Pedro Ferreira, Thais Leite e Caroline Siqueira. Ao professor Dr. Francisco Heron, pelo incentivo e apoio à minha formação pessoal e profissional, durante o período em que trabalhamos juntos no Projeto de Software Livre do Estado do Ceará. E por fim, não menos importante, ao Thales Jones, por toda sua compreensão e carinho dedicados à mim. Resumo Nos últimos anos, o conceito de compartilhamento de informações se tornou uma forma de alcançar a melhoria de processos e soluções. Mais especificamente na área de informática, é um meio de aumentar a oferta de soluções a baixo custo ou, até mesmo, a custo zero. Partindo do conceito de compartilhamento, surgiram termos como Software Livre, Open Source e Software Público. Este último, que é reflexo direto das necessidades da Administração Pública, não está vinculado a ideologias ou restrições orçamentárias, mas aos aspectos de eficiência, publicidade, moralidade, impessoalidade e legitimidade – princípios administrativos constitucionais fundamentais da Administração Pública no Brasil. Neste trabalho são analisados os termos das principais licenças de software, com ênfase nos modelos de software livre, e sua adequação aos princípios constitucionais administrativos, tendo em vista a perspectiva de implantação de uma Política de Software Público para o Estado do Ceará. Abstract In the past few years, information sharing represented a way to achieve process and solutions improvements. In informatics, it represents a way to increase the number of computer solutions with low cost or with no cost at all. Based on the ideia that sharing means improvements, terms like free, open, public software became reality. The term "Public Software"reflects the Public Administration needs about computer software solutions and is not binded to any political ideology ou budget restrictions. The key aspects in this fields are the five Brazilian constitucional principles: Eficiency, Publicity, Morality, Impersonality and Legitimacy. In this work, we analyse the most relevant models of software licences, emphasizing the free models, and their adherence to the the Brazilian constitucional principles in order to elaborate the Public Software Policy of the state of Ceará. Sumário Lista de Tabelas ix 1 Referencial Teórico 6 1.1 Software Livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.1.1 Histórico do Software Livre . . . . . . . . . . . . . . . . . . . . 7 1.1.2 As liberdades do Software Livre . . . . . . . . . . . . . . . . . . 9 Código Aberto (Open Source) . . . . . . . . . . . . . . . . . . . . . . . 11 1.2.1 História do Open Source . . . . . . . . . . . . . . . . . . . . . . 12 1.2.2 A Open Source Initiative . . . . . . . . . . . . . . . . . . . . . . 13 Software Público . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.3.1 O Software Público Brasileiro . . . . . . . . . . . . . . . . . . . 15 1.4 A Lei do Software Brasileira . . . . . . . . . . . . . . . . . . . . . . . . 18 1.5 Resumo do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.2 1.3 2 Licenças de Software Livre 21 2.1 General Public License . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.1.1 General Public License Versão 1 . . . . . . . . . . . . . . . . . . 24 2.1.2 General Public License Versão 2 . . . . . . . . . . . . . . . . . . 26 2.1.3 General Public License Versão 3 . . . . . . . . . . . . . . . . . . 28 Lesser General Public License . . . . . . . . . . . . . . . . . . . . . . . 31 2.2.1 Lesser General Public License Versão 2.1 . . . . . . . . . . . . . 32 2.2.2 Lesser General Public License Versão 3 . . . . . . . . . . . . . . 35 BSD License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.2 2.3 vi 3 2.4 MIT License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 2.5 Apache License Versão 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . 38 2.6 Resumo do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Seleção dos Princípios Constitucionais 42 3.1 Detalhamento dos Princípios Constitucionais . . . . . . . . . . . . . . . 43 3.1.1 O Princípio da Legalidade . . . . . . . . . . . . . . . . . . . . . 43 3.1.2 O Princípio da Impessoalidade . . . . . . . . . . . . . . . . . . . 44 3.1.3 O Princípio da Moralidade . . . . . . . . . . . . . . . . . . . . . 45 3.1.4 O Princípio da Publicidade . . . . . . . . . . . . . . . . . . . . . 45 3.1.5 O Princípio da Eficiência . . . . . . . . . . . . . . . . . . . . . . 46 Resumo do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.2 4 Resultados Alcançados 48 4.1 Características dos Princípios Constitucionais . . . . . . . . . . . . . . . 48 4.2 Métrica: Aderência aos Princípios Constitucionais (APC) . . . . . . . . . 50 4.3 Análise dos modelos de licenças . . . . . . . . . . . . . . . . . . . . . . 52 4.3.1 GPL Versão 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.3.1.1 Legalidade . . . . . . . . . . . . . . . . . . . . . . . . 52 4.3.1.2 Impessoalidade . . . . . . . . . . . . . . . . . . . . . 52 4.3.1.3 Moralidade . . . . . . . . . . . . . . . . . . . . . . . . 53 4.3.1.4 Publicidade . . . . . . . . . . . . . . . . . . . . . . . 53 4.3.1.5 Eficiência . . . . . . . . . . . . . . . . . . . . . . . . 53 4.3.2 Lesser General Public License 3 . . . . . . . . . . . . . . . . . . 54 4.3.3 BSD License . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.3.3.1 Legalidade . . . . . . . . . . . . . . . . . . . . . . . . 54 4.3.3.2 Impessoalidade . . . . . . . . . . . . . . . . . . . . . 54 4.3.3.3 Moralidade . . . . . . . . . . . . . . . . . . . . . . . . 54 4.3.3.4 Publicidade . . . . . . . . . . . . . . . . . . . . . . . 55 4.3.3.5 Eficiência . . . . . . . . . . . . . . . . . . . . . . . . 55 MIT License . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 4.3.4 vii 4.3.4.1 Legalidade . . . . . . . . . . . . . . . . . . . . . . . . 55 4.3.4.2 Impessoalidade . . . . . . . . . . . . . . . . . . . . . 56 4.3.4.3 Moralidade . . . . . . . . . . . . . . . . . . . . . . . . 56 4.3.4.4 Publicidade . . . . . . . . . . . . . . . . . . . . . . . 56 4.3.4.5 Eficiência . . . . . . . . . . . . . . . . . . . . . . . . 57 Apache License Versão 2.0 . . . . . . . . . . . . . . . . . . . . . 57 4.3.5.1 Legalidade . . . . . . . . . . . . . . . . . . . . . . . . 57 4.3.5.2 Impessoalidade . . . . . . . . . . . . . . . . . . . . . 58 4.3.5.3 Moralidade . . . . . . . . . . . . . . . . . . . . . . . . 58 4.3.5.4 Publicidade . . . . . . . . . . . . . . . . . . . . . . . 58 4.3.5.5 Eficiência . . . . . . . . . . . . . . . . . . . . . . . . 59 4.4 Resumo do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 4.5 Resumo do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 4.3.5 5 Conclusões e Trabalhos Futuros 61 5.1 Conclusões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 5.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Anexo A General Public License versão 1 67 Anexo B General Public License versão 2 74 Anexo C General Public License versão 3 82 Anexo D Gnu Lesser General Public License versão 2.1 97 Anexo E Gnu Lesser General Public License versão 3 108 Anexo F BSD License 112 Anexo G MIT License 114 Anexo H Apache License versão 2 115 viii Lista de Tabelas 2.1 Tabela das licenças selecionadas . . . . . . . . . . . . . . . . . . . . . . 23 4.1 Tabela com os valores de APC . . . . . . . . . . . . . . . . . . . . . . . 50 4.2 Definição das variáveis e funções da métrica APC. . . . . . . . . . . . . 51 4.3 Tabela de síntese da análise das licenças . . . . . . . . . . . . . . . . . . 59 4.4 Tabela de síntese da métrica APC . . . . . . . . . . . . . . . . . . . . . . 60 ix Introdução O avanço tecnológico nas últimas décadas permitiu a criação de ferramentas, tais como, a Internet, que favorecem a disseminação do conhecimento através de uma abordagem de construção colaborativa e participativa. Neste cenário a produção do conhecimento é descentralizada entre indivíduos e comunidades que passam a ser capazes de produzir bens intangíveis, como a informação, o conhecimento e até mesmo o próprio software (FREITAS; MEFFE, 2008). A definição de um bem intangível, bem como a sua principal característica, é a inexistência da propriedade física, cujo valor é delineado pelos benefícios futuros conferidos ao proprietário do bem (HENDRIKSEN; BREDA, 2007). Embora o software seja considerado um bem intangível, é importante ressaltar a forte característica rentável provocada por modelos de licenças que ocasionam restrições de acessos e uso do código fonte, marcando-o como um ativo tangível (FREITAS; MEFFE, 2008), o que compromete, significativamente, a sua evolução colaborativa. A utilização de licenças livres em softwares evidencia a característica principal do bem intangível, estimula seu crescimento e desenvolvimento colaborativo, além de desenvolver o domínio tecnológico e proporcionar a interoperabilidade (FREITAS; MEFFE, 2008). Tendo em vista essa perspectiva, o Governo Federal tem incentivado o uso do Software Livre para soluções de Tecnologias da Informação e Comunicação (TIC) nos órgãos da federação, o qual gerou o projeto do Software Público Brasileiro (SPB), cujo propósito é apoiar o compartilhamento de programas de computadores com o objetivo de prover oportunidades para que toda a sociedade possa se beneficiar dos bens públicos (FREITAS; MEFFE, 2008), neste caso, o software. Ao implantar políticas de Software Público, a administração pública participa ativamente no apoio à economia de bens intangíveis, e incentiva a produção colaborativa do conhecimento (MEFFE, 2008). Essa análise é constitucionalmente justificada. Embora a constituição não tenha definições quanto sua adequação a modelos de desenvolvimento de sistemas, toda estatal é vinculada à princípios constitucionais, que indicam os fins e meios para suas ações, tais como, o Princípio da Legalidade, Impessoalidade, Moralidade, Publicidade e Eficiência, que, conforme resultado deste trabalho, são, em sua essência, compatíveis com as quatro liberdades do Software Livre (FALCAO; LEMOS; FERRAZ, 2007). Motivações e Perspectivas Alinhado ao ideal de contribuição e compartilhamento de soluções de software e estimulado pelos resultados da campanha de Software Livre desenvolvida na Federação, o Governo do Estado do Ceará, no ano de 2008, decretou o uso prioritário de soluções livres para a área da Tecnologia da Informação e Comunicação nos órgãos e entidades que compõem o Poder Executivo Estadual. Além do Decreto Estadual, o projeto de software livre está alinhado às metas da Resolução 02/2008, que definem o percentual de migração para tecnologias livres nas estações de trabalho, nos servidores e sistemas legados dos órgãos e entidades do Governo do Estado, dentre outras atividades que justificam o projeto, como a capacitação dos técnicos e usuários, e ações sociais de inclusão digital (CEARA, 1998) . O Projeto de Software Livre é coordenado pela Secretaria do Planejamento e Gestão do Estado do Ceará (SEPLAG), por meio da Coordenadoria de Estratégias de Tecnologia da Informação e Comunicação (COETI) e apoiado pelo Decreto Estadual No 29.255, o qual prioriza o uso do Software Livre nos órgãos / entidades do Governo. No ano de 2008 foi realizado o I Seminário de Planejamento do Projeto, cujo objetivo foi a elaboração do Plano de Ação, que foi publicado na Resolução No 02/2008 do Conselho Superior de Tecnologia da Informação e Comunicação CSTIC (CEARA, 1998). Para o desenvolvimento e implantação do projeto foram adotadas ações 2 básicas, tais como, a formação do Grupo de Trabalho (GT), com o objetivo de definir as diretrizes de Software Livre; a publicação do Decreto Estadual que institui as políticas de Software Livre; a implementação do Comitê Gestor de Software Livre do Estado do Ceará (CGSL), o qual apoia a implementação do projeto; e a elaboração e publicação de normas, metas, procedimentos e orientações técnicas para homologação e padronização de software. No início do ano de 2010 foi realizado, na SEPLAG, o II Seminário de Planejamento do projeto, que teve como objetivo reavaliar as metas antigas e propor mudanças e melhorias para suas realizações. Dentre as metas analisadas, foram classificadas como prioritárias para 2010: a elaboração e execução do Plano de Comunicação do Projeto, que desenvolverá a cultura de Software Livre; a Criação da Comunidade de Software Livre, que tem o objetivo de integrar os órgãos, contribuindo para o trabalho coletivo; a conclusão da migração dos sistemas operacionais das estações de trabalho e dos sistemas legados; a elaboração das políticas de Software Público, cujo foco é apoiar e incentivar o uso do Software Público em prol do benefício de toda a sociedade; e a capacitação dos usuários finais pelo sistema de Ensino à Distância (EAD). Para garantir a realização e acompanhamento das metas, anualmente é reformulado pela equipe de Software Livre do Governo do Estado, o documento do Plano de Ação do Projeto, que contém as atividades a serem desenvolvidas durante o ano. Conforme o Plano de Ação do ano de 2010, faz-se necessária a formulação de Políticas de Software Público com objetivo de fortalecer e incentivar o uso de Software Livre na sociedade cearense. Essa prática não é incipiente, o Governo Federal já tem implantado um projeto nesse nicho, o Software Público Brasileiro (MEFFE, 2008). Objetivos Objetivo Geral Esta pesquisa, desenvolvida com o apoio da Secretaria do Planejamento e Gestão (SEPLAG) do Estado do Ceará, por meio da Coordenadoria de Estratégias de Tecnologia da Informação e Comunicação (COETI), tem o objetivo de analisar a adequação das principais licenças de software livre quanto aos Princípios Constitucionais Admnistrativos. O resultado obtido subsidiará as definições de licenças de Software 3 Livre a serem analisadas pelo Grupo de Trabalho que elaborará as Políticas de Software Público para o Projeto de Software Livre do Estado do Ceará, conforme metas do Plano de Ação para o segundo semestre de 2010. Objetivos Específicos Este trabalho possui os seguintes objetivos específicos: • Conceituar e diferenciar os termos Software Livre, Open Source e Software Público; • Identificar as principais licenças de Software Livre e de código aberto existentes atualmente; • Selecionar, dentre as licenças identificadas, aquelas adequadas ao uso pela administração pública, tendo como referencial os princípios administrativos constitucionais. Metodologia Neste trabalho será realizada uma análise da adequação das principais licenças de software livre aos Princípios Constitucionais Administrativos. A seleção das licenças ocorrerão através de critérios de seleção que foram definidos conforme Free Software Foundation e Open Source Iniciative. O estudo inicia com uma revisão bibliográfica focada nas diferenças entre os conceitos de software livre, software aberto e software público, além do estudo dos termos da Lei 9.609, Lei do Software Brasileira. Em seguida será realizado o estudo dos termos de cada licença selecionada, conforme consulta realizada no sítio da Open Source Iniciative. Os Princípios Constitucionais serão estudados posteriormente, momento em que serão identificadas as características de cada princípio. Após os estudos, serão criadas métricas que definirão o nível de adequação das licenças aos Princípios Constitucionais. As métricas serão aplicadas conforme a adequação dos termos das licenças de software analisadas com as características de cada princípio. 4 Na sequência, os resultados serão sintetizados em uma tabela, objetivando facilitar sua visualização. Organização da Monografia O presente trabalho se encontra organizado como segue. No capítulo 1 são apresentados os Objetivos Geral e os Específicos. No capítulo 2 desenvolve-se o referencial teórico de suporte à pesquisa. As licenças de Software Livre são discutidas no capítulo 3. Os princípios constitucionais relacionados, são apresentados e discutidos no capítulo 4. No capítulo 5 são abordados os resultados alcançados no trabalho. O capítulo 6 encontram-se as conclusões e os trabalhos futuros. 5 Capítulo 1 Referencial Teórico Este capítulo aborda a pesquisa bibliográfica que constitui a fundamentação teórica do projeto. Para seu desenvolvimento, foram realizadas consultas às obras de autores, cuja contribuição na literatura é relevante, além das consultas às comunidades de Software Livre e à Constituição Federal. O capítulo está dividido sequencialmente numa introdução ao conceito, características e principais diferenças do Software Livre (Seção 2.1), Open Source (Seção 2.2), Software Público (Seção 2.3). Na Seção 2.4 encontra-se o estudo aos termos da Lei do Software Brasileira e, finalmente, na Seção 2.5 um breve resumo do capítulo. 1.1 Software Livre Denomina-se Software um conjunto de dados, código-fonte, documentações e configurações necessárias para que um programa de computador possa operar corretamente, ou seja, todo o conhecimento necessário envolvido no projeto, análise e desenvolvimento de programas de computadores (SOMMERVILLE, 2007). O Software Livre, embora detenha esse conjunto de atributos, desenvolve outras propriedades no âmbito intelectual, que incentivam o compartilhamento e a disseminação do conhecimento, conforme pode ser visto na seção 1.1.2 (SILVA, 2004). Sérgio Amadeu (2004) compara o Software Livre a um objeto, o qual se pode emprestar, vender ou doar de tal forma que esse não deixe de lhe pertencer. Assim sendo, o referido “objeto” poderá ser usado quantas vezes forem necessárias para propósitos distintos. Análoga a uma epidemia, a ideia do software livre é disseminar o conhecimento de forma massiva, em que cada usuário possa evoluir e repassá-lo continuamente. Isso é o que pode ser chamado de ciclo evolutivo do conhecimento. 1.1.1 Histórico do Software Livre Na década de 50 os softwares eram produtos que não tinham perspectivas de grandes lucros, pois eram vendidos acoplados ao hardware, o qual detinha uma porção rentável bem maior que os sistemas que os acompanhavam. Baseado nesse modelo de venda, ao adquirir uma solução de software, o usuário poderia adaptá-la de forma a usufruir do melhor desempenho do hardware sem que houvessem limites para isso (CAMPEBELL-KELLY, 2008). A partir de 1970, fundamentada no conceito de que tal compartilhamento não era justo e prejudicaria a qualidade dos sistemas fornecidos aos usuários finais, essa ideia adquiriu uma nova perspectiva para a indústria de software, o que deu início a era do software fechado ou proprietário, bem como suas restrições e limitações de uso (CAMPEBELL-KELLY, 2008). A exemplo dessa perspectiva, pode-se observar o contexto da empresa American Telephone and Telegraph (AT&T), grande empreendedora de telecomunicações nos Estados Unidos da América, que possuía limitações legais, as quais impossibilitavam-na de fabricar seus próprios computadores. Portanto, era preciso adquirir computadores dos mais variados fabricantes para o gerenciamento das suas redes de telefonia. Essa situação era desconfortável, uma vez que computadores de fabricantes diferentes não se comunicavam. Existia pouca ou nenhuma interoperabilidade. Reinava o caos. Identificando essa dificuldade, a AT&T escreveu seu próprio sistema operacional, que seria desenvolvido uma única vez, podendo ser traduzido conforme a necessidade dos padrões utilizados. Consequentemente, este sistema operaria em vários computadores diferentes (FALCAO; LEMOS; FERRAZ, 2007). 7 Nascia o projeto UNIX. Estando a AT&T impossibilitada de vendê-lo devido a restrições legais, começou distribuí-lo livremente. Não havia necessidade de solicitar qualquer permissão a AT&T para obter os fontes do sistema, estudá-los e alterá-los. O UNIX teve grande aceitação nas universidades, as quais aperfeiçoavam e evoluíam o programa conforme as necessidades de uso. Devido a um processo de reestruturação, em 1984 a AT&T foi desmembrada em empresas menores. Tal fato a tornou livre das restrições legais que possuía e contribuiu para seu ingresso no setor computacional. Uma das primeiras decisões da AT&T, após sua reestruturação, foi controlar o UNIX, ou seja, torná-lo fechado. Qualquer pessoa ou empresa que se interessasse em utilizar o sistema deveria obter a permissão através de uma licença de uso cedida pela AT&T (FALCAO; LEMOS; FERRAZ, 2007). Em resumo, pode-se afirmar que nos primórdios da computação estavam presentes as características do software livre, tais como a interoperabilidade e o desenvolvimento colaborativo (FSF, 2010). Em resposta a essa nova perspectiva adotada pela indústria de software, Richard Stallman, até então pesquisador do laboratório de inteligência artificial do Massachusets Institute of Technology (MIT), deu início em 1983 a um marco na história da tecnologia e do software livre. Stallman trabalhava no MIT com computadores ligados em rede que compartilhavam uma impressora. A equipe do MIT desenvolveu um programa para controle da fila de impressão e o utilizava até o início de 1984, momento em que o programa fora substituído pelo software do fabricante da impressora. Identificando algumas melhorias para a evolução do código do novo programa, a fim de que atendessem às necessidades de uso do MIT, Stallman solicitou à empresa que o desenvolveu, o código-fonte para que fosse aperfeiçoado. No entanto, a empresa não atendeu a solicitação do Richard, recusando-se a ceder-lhe o código. Essa atitude foi recebida como forma de uma grave ofensa moral aos usuários, desenvolvedores e todos, que de qualquer forma, fariam uso do sistema desenvolvido pela fabricante de impressoras, visto que todo o conhecimento envolvido para o desenvolvimento do software era produto de esforços coletivos (STALLMAN, 2002). 8 Assim sendo, em 1983, Stallman se desliga do emprego no MIT e dá início ao projeto GNU (uma sigla recursiva para Gnu is Not Unix, ou seja, GNU não é UNIX), ganhando apoio dos programadores e pesquisadores que contribuíam com o UNIX, após a ação do fechamento do seu código, em 1984 pela AT&T. O projeto GNU considerou como princípios básicos para a sua elaboração o compartilhamento e desenvolvimento colaborativo (STALLMAN, 2002). Qualquer pessoa, usuário ou desenvolvedor, poderia contribuir ou utilizar os softwares desenvolvidos no projeto. Richard iniciou o projeto implementando uma série de aplicativos, para que pudesse usufruir de um computador sem precisar usar programas proprietários. Com a consolidação do GNU, outros softwares foram sendo acoplados ao projeto com o objetivo de atender às necessidades de uso dos seus participantes. Esse processo foi significativo para a evolução do sistema. Em 1991, Linus Torvalds, um estudante finlandês, desenvolveu um componente que estava faltando no GNU, o kernel, uma espécie de camada que integra o hardware ao sistema operacional, passando a ser conhecido como GNU/Linux, que desde então vem se fortificando. O GNU/Linux é considerado um dos sistemas operacionais mais usado no mundo, sendo mantido e atualizado pela comunidade de software livre em conjunto com diversas empresas, tendo inclusive, várias e diferentes versões do sistema implementadas (STALLMAN, 2002). 1.1.2 As liberdades do Software Livre Em 1985, após iniciar o projeto GNU, Stallman fundou a Free Software Foundation (FSF), Fundação do Software Livre, uma organização sem fins lucrativos, cujo principal objetivo é incentivar o desenvolvimento de software livre, promover a liberdade e garantir os direitos de todos os usuários e desenvolvedores de software livre (FSF, 2010). Em 1989, surge a necessidade de instituir medidas jurídicas que visassem 9 a garantia de que os softwares, desenvolvidos sob os ideais defendidos pela FSF, fossem mantidos obedecendo a essas regras fundamentais. Essas medidas resultaram em um contrato jurídico chamado de GNU GPL (GNU General Public License ou Licença Pública Geral do GNU), a licença de software livre mais aceita e difundida no mundo (FSF, 2010). Nos termos da GNU GPL foram estabelecidas quatro liberdades básicas que definem um software livre conforme a FSF. Essas liberdades, que formam os pilares de todo o conceito que existe dentro do modelo de compartilhamento do Software Livre (STALLMAN, 2002), são: 0. A liberdade que permite a execução do programa com qualquer finalidade; 1. A liberdade que permite o estudo das funcionalidades do programa. Para o exercício dessa liberdade é necessário o acesso ao código-fonte; 2. A liberdade que permite a livre distribuição de cópias, com o objetivo de que outras pessoas se beneficiem, e; 3. A liberdade que permite aperfeiçoar o programa e distribuir essa evolução. Essa liberdade requer o acesso ao código-fonte do programa. A partir dessas liberdades observa-se que o Software Livre, mesmo não sendo um termo recente, visto que seu projeto existe há mais de 20 anos, é um fenômeno na tecnologia da informação. A evolução do conceito Software Livre vem impactando não somente a indústria do software, como também todas as esferas culturais e sociais (GNU, 2010). Tudo que envolve compartilhamento, distribuição, contribuição e colaboração pode ser classificado como princípios de uma cultura livre, que tem em sua essência os ideais traçados pela FSF. São as liberdades de copiar, reproduzir, distribuir e evoluir que tornam o projeto acessível para comunidades de desenvolvedores em todo o mundo. A participação desses desenvolvedores é intensa a ponto de gerar grandes comunidades distribuídas em todo o planeta, socializando o conhecimento e suas práticas. Os pilares do Software Livre são fundamentados nas premissas básicas da liberdade de expressão, do acesso à informação e do caráter coletivo e distribuído 10 do conhecimento (CASTRO, 2005). Apoiado por essas premissas, Silva (2004) afirma que o conceito do Software Livre é saudável, pois torna-se socialmente correto, economicamente praticável e tecnologicamente sustentável. 1.2 Código Aberto (Open Source) A resistência em aceitar as liberdades do Software Livre por parte dos pequenos, médios e grandes empresários da indústria do software tornou-se comum durante toda sua ascensão. A ideia de distribuir “gratuitamente” todo o conhecimento investido em um determinado produto de software é vista como prejudicial à saúde econômica da empresa (SABINO; KON, 2009). Além disso, a indústria desenvolveu uma espécie de competitividade tecnológica, uma disputa pelo primeiro lugar em inovação. E, consequentemente, o primeiro lugar na preferência dos seus consumidores. Tornar livre todo o conhecimento existente em seus produtos é uma das maiores inseguranças que as empresas possuem, pois receiam que esse conhecimento seja usado pela concorrência. Sabe-se porém, que essa insegurança prejudica a evolução do conhecimento humano na esfera tecnológica. Tal afirmação é justificada ao longo de toda a história da humanidade nas mais diversas áreas sociais (STALLMAN, 2002). Sem o compartilhamento das informações, o conhecimento estaria no passado e certamente a evolução de qualquer que sejam suas variantes, estaria prejudicada (STALLMAN, 2002). A exemplo disso, cita-se o caso dos Violoncelos Stradivarius, os melhores violoncelos já produzidos no mundo. Atualmente existem apenas 60 unidades, pois todo o conhecimento necessário para a produção dos instrumentos findou-se com o seu criador, Antônio Stradivarius, no século XVI. Até hoje toda a comunidade de músicos lamenta que as técnicas de produção de violoncelos do Stradivarius não existam mais (FABER, 2006). Objetivando evitar a perda do conhecimento por causa da insegurança que a indústria de software tem em compartilhar os seus legados, surge em 1998 o conceito Open Source, traduzido para português como Código Aberto (SABINO; KON, 2009). As próximas subseções têm a finalidade de contextualizá-lo a partir do seu histórico e princípios, evidenciando suas finalidades e diferenças em relação ao Software Livre. 11 1.2.1 História do Open Source A história do Open-Source é precedida por toda a história do Unix, Internet, Software Livre e cultura de compartilhamento existente. A partir desses fatos isolados e depois de uma série de outros eventos surgia o Código Aberto (OSI, 2010). Em 1997, Eric Raymond, forte contribuinte do projeto GNU e adepto aos ideais do Software Livre, lança o livro “A Catedral e o Bazar”. O livro de Raymond obteve uma repercussão positiva, esclarecendo o ideal do compartilhamento de forma lucrativa e viável para a indústria do software (RAYMOND, 1998). Raymond exemplificou por meio do seu livro as formas de desenvolvimento colaborativo, evidenciando suas diferenças e vantagens, usando como exemplo o modelo de desenvolvimento da evolução do kernel do Linux, classificado como o modelo Bazar por ser totalmente aberto à comunidade (RAYMOND, 1998). Esse livro foi uma forte contribuição para a Netscape Communications Corporation abrir o código-fonte do Netscape Communicator, aplicativo de navegação web. Considerando a pressão que vinha sofrendo ao perder parcelas significativas no mercado devido ao apoio que o Internet Explorer, seu maior concorrente, recebia da Microsoft, a qual o acoplou ao seu produto, o sistema operacional Windows. A Netscape sentiu-se obrigada a adotar o Open Source como forma estratégica, com o objetivo de recuperar os usuários do seu navegador que estavam migrando para o Internet Explorer (RAYMOND, 1998). Poucas horas após a liberação do código do Netscape Communicator, o projeto já havia recebido vários reparos de erros e sugestões de evolução (OSI, 2010). No dia 3 de Fevereiro de 1998, em Palo Alto – Califórnia, Estados Unidos, foi realizada uma reunião entre Eric Raymond, Todd Anderson, Chris Peterson, John “maddog” Hall, Larry Augustin, Sam Ockman e Michael Tiemann, membros contribuintes da comunidade de Software Livre, com o objetivo de analisar a decisão da Netscape em tornar aberto o seu navegador, viabilizar um planejamento para a publicação 12 do código e mensurar perspectivas futuras. Os presentes na reunião perceberam que a ocasião era ideal para apresentar ao mundo corporativo as vantagens da iniciativa de desenvolvimento de Software Aberto fora dos pilares do Software Livre, que difunde uma posição anti-comércio, a qual causava insegurança e resistência na indústria de software. Surge portanto, o termo Open Source a fim de diferenciar do termo Software Livre, sugerido na ocasião por Chris Peterson (OSI, 2010). 1.2.2 A Open Source Initiative A ideia do anticapitalismo é descartada pelos que defendem o projeto Open Source. Afirma-se porém que, trata-se de uma alternativa ao desenvolvimento de software, aplicada ao negócio da indústria. O modelo colaborativo e compartilhado de produção intelectual. Durante a reunião de Palo Alto, firmou-se a Open Source Iniciative (OSI), que significa a Iniciativa do Código Aberto, organização sem fins lucrativos que tem como objetivo conscientizar e sensibilizar o uso do código aberto, fundamentada por 10 pilares que o definem. A relação abaixo apresenta os princípios do Open Source. São termos que devem existir nas licenças dos softwares que se declaram código aberto (OSI, 2010). 1. Livre distribuição: A licença inclusa no software não deve restringir sua venda ou distribuição, como componente de outro programa ou não; 2. Código-fonte: O código-fonte deve estar incluso no programa, ou deve-se possibilitar sua obtenção livremente, sendo legível por qualquer pessoa; 3. Trabalhos Derivados: A licença deve permitir modificações e trabalhos derivados, e que sejam distribuídos sobre termos da licença original; 4. Integridade do autor do código-fonte: A licença pode restringir o código-fonte de ser distribuído em uma forma modificada. Caso contrário, deve permitir a distribuição do programa a partir do código-fonte modificado e requerer que programas derivados tenham identificadores diferentes do original; 13 5. Não discriminação contra pessoas ou grupos: A licença não pode fazer discriminação de pessoa ou grupo de pessoas; 6. Não discriminação contra áreas de atuação: A licença não deve restringir o uso do programa a um domínio tecnológico, tal como, empresa ou universidade; 7. Distribuição da Licença: Todos que recebem o programa detém os direitos aplicáveis a esse, sem a necessidade de uma licença para isso; 8. Licença não específica a um produto: Os direitos de um programa não dependem de suas partes; 9. Licença não restrinje outros programas: A licença não pode especificar que outros programas distribuídos na mesma unidade de armazenamento estejam sob a mesma licença; 10. Licença neutra em relação à tecnologia: A licença não pode estabelecer vínculo a uma tecnologia. Observa-se que o Código Aberto, também conhecido como Open Source, traz em sua essência parte dos fundamentos do Software Livre, vistos na seção anterior. É comum encontrar na literatura autores que afirmam que o Software Livre é Open Source, porém é possível que sistemas baseados em código aberto não sejam livres, ou seja, não atendam as quatro liberdades que formam os pilares do Software Livre (SABINO; KON, 2009). Da mesma forma, é comum encontrar na literatura softwares que são distribuídos gratuitamente e que por sua vez não são livres, e nem possuem o código aberto, são conhecidos como Softwares Gratuitos (SILVA, 2004). Esses softwares são assim distribuídos como forma de atrair usuários. São também conhecidos como softwares demonstrativos, que trazem parte ou todas as funcionalidades do software, são geralmente liberados para uso por tempo pré-definido. Após esse tempo o usuário deve adquirir a licença do software para usá-lo. Devido a essas divergências de conceitos, entre livre, gratuito e aberto, a FSF chama o software livre de Free Open Source (FOS), ou seja, Código Aberto Livre (STALLMAN, 2002). O Open Source e o Software Livre são alinhados com o mesmo objetivo de compartilhamento e de preservação do conhecimento. As diferenças entre esses 14 dois termos estão em suas abordagens práticas. Enquanto o Software Livre aborda o compartilhamento do conhecimento de forma ideológica, o Open Source o aborda de forma comercial, evidenciando a vantagem rentável que existe no modelo de desenvolvimento distribuído e colaborativo. De certa forma, ambos os termos tratam o conhecimento como um legado humano, que deve ser amplamente difundido, garantindo sua persistência e evolução. 1.3 Software Público Nas seções 1 e 2 deste capítulo foram abordados temas que tratam de compartilhamento e colaboração distribuída. Naquela, foram evidenciados os contextos ideológicos e sociais que existem na essência do compartilhamento. Na outra, a essência do compartilhamento foi abordada em uma versão comercial e lucrativa para o mundo corporativo. Quando se trata de Software Público, entende-se que esses temas convergem de forma abrangente, relacionando o compartilhamento à Administração Pública, favorecendo a comunidade, as corporações e a sociedade como um todo (FREITAS; MEFFE, 2008). 1.3.1 O Software Público Brasileiro As instituições do setor público tentam compartilhar softwares desde 1995, encontrando alguns obstáculos para efetivar essa atividade. Um desses obstáculos é a legalização do software com um modelo de licenciamento capaz de suprir a necessidade de cada envolvido. Além disso, outras razões de ordem administrativas e técnicas impediam o compartilhamento dos softwares (MEFFE, 2007). Tecnicamente a inviabilidade se dava devido à intensa dependência do hardware nos ambientes tecnológicos e à arquitetura centralizada no desenvolvimento de sistemas. No sentido administrativo, a razão era a lentidão dos processos e acordos das parcerias para o compartilhamento de sistemas. Sendo que os acordos proporcionavam mais direitos ao cedente do sistema e não solucionavam as questões de licenciamento, pois caso houvesse quebra de acordo, os envolvidos poderiam ser proibidos de prosseguir com o desenvolvimento (MEFFE, 2007). 15 A evolução tecnológica da arquitetura computacional do ambiente de grande porte para os microcomputadores e sua democratização, influenciaram na independência dos hardwares, tornando os sistemas desenvolvidos compatíveis entre parceiros. Ressalta-se que essa democratização fi consequência da atitude da International Business Machines (IBM) em tornar público, e disponível, o projeto IBM-PC, com o sistema operacional DOS da Microsoft Corporation. Apesar desse avanço, ainda existiam grandes dificuldades para o compartilhamento de sistemas, pois os modelos de licenciamento de software mantinham fortes restrições de uso e distribuição (BRANCO, 2004). Com o crescimento do acesso à internet e às redes sociais, o sentimento de colaboração e compartilhamento invadiu as organizações governamentais e privadas. Esse sentimento iniciou um novo modelo de produção de software: a rede de colaboração. Assim, a Internet e o Software Livre indicaram para o setor público um novo momento de produção compartilhada de software. Neste momento, os entraves da administração pública passam a ser mais de ordem jurídica do que tecnológica (FREITAS; MEFFE, 2008). Em 2001, a Empresa de Processamento de Dados do Rio Grande do Sul (PROCERGS) disponibilizou a ferramenta de groupware, denominada Direto, tornando a primeira tentativa de disponibilização com menores considerações nos acordos formais e maior reforço na licença. Foi utilizada para a disponibilização do software Direto, a licença GPL versão 1. Mudanças na diretoria da instituição iniciaram embates jurídicos, que refletiram de forma negativa para a iniciativa tomada, pois estabeleceu incerteza quanto ao avanço do compartilhamento de sistemas pelo setor público (BALINSK, 2002). No ano de 2005, foi licenciado sob a segunda versão da GPL em português, pelo Governo Federal, a primeira solução de Software Livre. Era uma solução de inventário de hardware e software, o CACIC, desenvolvida pela Dataprev (Empresa de Tecnologia e Informações da Previdência Social), tornando-se posteriormente um exemplo bem sucedido do Software Público Brasileiro. Atualmente, o CACIC tem a maior comunidade de colaboradores cadastrada no Portal do Software Público, com mais de 20.000 usuários que assumiram papéis dinâmicos para a evolução da solução (BRANCO, 2004). 16 Conforme legislação corrente, verifica-se que o software desenvolvido por entidades de direito público é tratado por natureza como um bem público. Essa premissa estabeleceu a primeira base para fundamentar o conceito de Software Público, cujo principal objetivo é o interesse público por determinada solução (FALCAO; LEMOS; FERRAZ, 2007). Como toda cadeia de produção, o Software Público precisa de recursos para ser produzido. Esse recurso pode vir de um órgão governamental, empresas ou parceiros na sociedade com interesses comuns. Nesse sentido, observa-se que o bem software produzido é tratado como um produto de acesso ao público em geral, que precisará utilizar um espaço de produção colaborativa cujo resultado fica disponível para toda a sociedade. Um dos primeiros passos do projeto para sua materialização foi disponibilizar um ambiente que permitisse o compartilhamento das soluções. Portanto, no ano de 2007, foi lançado o Portal do Software Público Brasileiro, cujo objetivo é prover um ambiente no qual vários atores sociais pudessem compartilhar suas soluções e da mesma forma usar as soluções compartilhadas. O portal desenvolve uma economia que tem como base a colaboração, em que a oferta e a procura compartilham o mesmo espaço virtual, destinados não somente aos que estabelecem relações comerciais, mas também à toda sociedade. O Portal já oferece à sociedade mais de 20 soluções de softwares em áreas variadas, tais como, educação, geoprocessamento, administração, saúde, dentre outras (MEFFE, 2007). Atualmente, o portal conta com mais de 29.000 usuários e um número crescente de prestadores de serviços que se beneficiam com os softwares disponibilizados. A ideia do software produzido por entidades publicas ser tratado como bem público vem sendo disseminada e aceita por diversos países. O Brasil tornou-se exemplo com o sucesso do Portal do Software Público (www.softwarepublico.gov.br), exportando esse conceito para países vizinhos (MEFFE, 2007). O conceito do Software Público Brasileiro é ainda incipiente, mas têm revelado resultados promissores para todos os envolvidos. Isso é justificado por meio dos indícios que surgem do forte crescimento do acervo de soluções compartilhadas, da disseminação do uso dos softwares compartilhados no Portal, ou seja do alto índice 17 de download desses softwares, da participação da sociedade na evolução colaborativa e da chegada de inúmeros outros interessados em fortalecer a iniciativa. O Portal é considerado como um ambiente seguro para o compartilhamento de soluções no setor público, no qual toda a sociedade é diretamente favorecida, sendo referência para o que se conhece na economia como bens intangíveis públicos. 1.4 A Lei do Software Brasileira No território brasileiro o uso e comercialização do software são regidos pela Lei 9.609/98 e está submetido à legislação de Direitos Autorais. O registro de software é efetuado junto ao Instituto Nacional da Propriedade Industrial (INPI) e possui validade internacional (BRASIL, 1998). O registro de software é um meio eficiente para a prova da autoria do programa. O prazo de proteção para quem cria um programa e comprova ser o legítimo autor é de 50 anos a partir de 1o de janeiro do ano subsequente à data da sua criação. O registro é essencial para a proteção do software. Além dele, existem outros instrumentos que são utilizados com a mesma finalidade, tais como, as licenças de uso do programa. Por lei, o contrato pelo qual é disponibilizado o software, é conhecido como Contrato de Licença. As licenças não são padronizadas, por isso essas existem em grande variedade. Em 19 de Fevereiro de 1998, foi promulgada a Lei 9.609, que tem como objetivo proteger a propriedade intelectual de programa de computador, bem como sua comercialização no país. Dentre as temáticas tratadas na Lei estão a garantia ao software, as condições de comercialização, a proteção aos direitos do autor e as infrações e penalidades. Quanto à garantia, a Lei é clara, para qualquer que seja o produto de software comercializado em território nacional, o distribuidor deve fornecer a garantia para os usuários / clientes, referente ao bom funcionamento do programa, sendo essa cláusula obrigatória. A obrigação persistirá caso o programa seja retirado de circulação comercial durante o prazo de validade. Para as condições de comercialização, a Lei define que o uso dos 18 programas de computadores se dará por meio de contrato de licença, que devem conter os tributos e encargos exigíveis, a responsabilidade pelos pagamentos e a remuneração do titular dos direitos de programa de computador. A norma reguladora não reconhece as licenças que limitam a produção, a distribuição ou a comercialização, em violação às disposições normativas em vigor, e também, as licenças que dispensam as responsabilidades por quaisquer ações de terceiros, decorrentes de defeitos ou violação de direitos de autorais. Para o repasse de tecnologia a Lei obriga a entrega, por parte do fornecedor, da documentação completa, do código-fonte comentado, especificações, diagramas, fluxogramas e quaisquer outros dados técnicos necessários à absorção da tecnologia. Quanto à proteção aos direitos autorais, a Lei determina que a propriedade intelectual de programa de computador tem o mesmo regime que as obras literárias, além daquelas do disposto na lei. A tutela dos programas de computador estará resguardada pelo prazo de 50 anos. Fica determinado na Lei que os programas de computador podem ser registrados por órgão ou entidade do Poder Executivo. Os direitos quanto as derivações de programa de computador, inclusive sua exploração econômica, pertencerão à pessoa autorizada, exceto para os casos contrários explícitos nos termos do contrato. Finalizando, a Lei informa que, os que violarem os direitos do autor, estarão sujeitos a detenção de seis meses a dois anos ou multa. Caso essa violação seja a reprodução do todo ou parte do programa para uso comercial, conhecido como pirataria, o infrator receberá uma pena de um a quatro anos de reclusão e pagará multa. Com a promulgação da Lei do Software definiu-se que o software recebe o regime jurídico do Direito Autoral para proteção dos interesses dos seus respectivos autores. Para tanto o autor deverá comprovar a autoria do seu trabalho, sendo consideravelmente importante o registro no INPI. O prazo de validade dos direitos é de 50 anos e as penalidades referentes as infrações aos direitos autorais podem chegar a quatro anos de reclusão. Um programa de computador tem seu uso legalizado por meio de seu objeto de licença. No próximo capítulo serão estudadas as principais licenças de software livre existentes no mundo. 19 1.5 Resumo do Capítulo Neste capítulo foi possível verificar a diferença entre os termos software livre, open source e software público. Ressalta-se que, embora esses termos possuam o mesmo objetivo, que é compartilhar conhecimento, trazem abordagens distintas quanto as suas definições. Quanto à abordagem do software livre, vista na seção 1, o compartilhamento do conhecimento é tratado de forma ideológica, visando o benefício social. Por sua vez, o open source tem em sua abordagem o ganho comercial que o compartilhamento pode fornecer para a indústria e para o comércio do software. Já o software público traz um conceito de compartilhamento no âmbito administrativo público. Nesse último foram verificadas as vantagens sociais que existem em compartilhar conhecimento por órgãos públicos. O contexto da participação da administração pública na democratização do conhecimento foi abordado na seção 3, de forma exemplificada, por meio do projeto de Software Público do Governo Federal. O capítulo da revisão bibliográfica foi finalizado com uma análise à Lei do Software Brasileira. Na seção 4 foram verificados os principais artigos da referida norma, observando os direitos e deveres dos usuários e comerciantes de produtos de software no território nacional. 20 Capítulo 2 Licenças de Software Livre No dia 19 de Fevereiro de 1998, a fim de proteger a propriedade intelectual dos programas de computadores, foi promulgada a Lei do Software Brasileira de número 9.609/98, que trata dos conceitos técnicos de programas de computadores, de suas definições, da proteção e criação do programa de computador, dos direitos de titularidade sobre autoria de software e da garantia legal da utilização na forma de licença de uso (BRASIL, 1998). Portanto, entende-se que a Lei em pauta visa o controle e a proteção dos direitos do autor do programa de computador e define as punições àqueles que violá-los. Entendendo a importância da legalização de uso dos softwares e dos direitos autorais, foi visto no capítulo anterior que as organizações defensoras do compartilhamento de conhecimento, Free Software Foundation e Open Source Iniciative, através de termos legais, conhecidos como licenças de uso, buscam garantir os direitos autorais sem prejudicar o compartilhamento do conhecimento e a construção colaborativa de sistemas de software. Existem diversas licenças de software disponibilizadas para a comunidade. Adicionalmente, qualquer pessoa pode confeccionar sua própria licença, embora isso não seja recomendado, devido ao risco de não aceitação da mesma. O mais apropriado é que sejam utilizadas as licenças existentes (GNU, 2010). No entanto, caso o desenvolvedor deseje disponibilizar seu programa sob os termos de uma licença definida por ele próprio, não existem impedimentos. Contudo, a OSI e a FSF disponibilizam as licenças de software (livre ou de código aberto) que são submetidas às suas análises. A exemplo da aplicação de uso de uma licença de software livre, ao disponibilizar o código fonte de um programa no Portal do Software Público Brasileiro, o usuário estará registrando o seu programa sob a versão 2 da licença GPL (SPB, 2010). O uso das licenças de Software Aberto é uma forma de proteger os direitos do autor, além de garantir o repasse de conhecimento. Por essa razão os portais de compartilhamento de conhecimento estão atentos ao fato de que as obras publicadas em seus ambientes devam conter a licença apropriada para tal publicação (GNU, 2010). Em função do número elevado de licenças disponíveis é inviável analisá-las exaustivamente. Por este motivo, consideram-se os seguintes critérios como filtros para redução deste número: 1. São consideradas as licenças mais utilizadas (entenda-se populares), segundo a Open Source Iniciative (OSI, 2010), e; 2. Selecionam-se as licenças de código livre e compatíveis com a GPL, conforme Free Software Foundation (FSF, 2010). Pelo primeiro critério, reduz-se o número de licenças disponíveis, atualmente superior a 50 (cinqüenta), para apenas 8 (oito), a saber: • Apache License 2.0 - (Apache) • New and Simplified BSD licenses - (BSD) • GNU General Public License - (GPL) • GNU Library or "Lesser"General Public License - (LGPL) • MIT license - (MIT) • Mozilla Public License 1.1 - (MPL) • Common Development and Distribution License • Eclipse Public License - (EPL) 22 Sobre conjunto resultante do primeiro critério de seleção, aplica-se então o segundo filtro, isto é, selecionam-se as licenças compatíveis com a GPL, critério este sugerido pela FSF. Deste modo, o conjunto de licenças a ser analisado é novamente reduzido a apenas 5 (cinco), relacionadas abaixo: • GNU General Public License - (GPL) • GNU Library or Lesser General Public License LGPL - (LGPL) • BSD Licenses - (BSD) • MIT Licenses - (MIT) • Apache License 2.0 - (Apache) Destaca-se que somente as versões mais recentes destas licenças são consideradas na análise, isto porque estas mantém todos os termos das versões anteriores e ainda acrescenta novos. A tabela 2.1 apresenta uma síntese da seleção de licenças descritas. Critério 1 Apache v2 BSD GPL LGPL MIT MPL CDDL EPL Critério 2 Apache v2 BSD A GPL LGPL MIT Análise Apache v2 BSD GPLv3 GPL v2.1 MIT Tabela 2.1: Tabela das licenças selecionadas 2.1 General Public License A necessidade de que os direitos do autor fossem preservados e que os Softwares Livres continuassem livres mesmo quando disponibilizados na comunidade, surgiu quando Richard Stallman, fundador da Free Software Foundation, ainda enquanto trabalhava no MIT, desenvolveu um código para um interpretador de LISP. Na mesma época a empresa Symbolics, que funcionava dentro do laboratório no qual Richard trabalhava, teve acesso ao código desenvolvido por Stallman, 23 que concordou em liberar uma versão do código para o domínio público. Posteriormente, a empresa Symbolics estendeu e melhorou o programa que foi disponibilizado. Stallman solicitou que essa melhoria fosse repassada, porém a empresa se negou em atender sua solicitação. A partir desse fato, Stallman percebeu que seria importante proteger os direitos de quem desenvolve e compartilha programas de computadores (STALLMAN, 2002). Para isso seria necessário se apoiar na legislação e não somente mudar o pensamento dos desenvolvedores para a abordagem colaborativa. Surgia o termo copyleft, que foi proposto por um amigo de Richard, Don Hopkins, quando ao lhe escrever uma carta adicionou o termo, “Copyleft – all rights reversed”, ou seja, “Copyleft – todos os direitos revertidos” (STALLMAN, 2002). O nome copyleft tornou-se uma provocação com o nome da lei de copyright, a lei internacional que trata do direito de cópia. Para disponibilizar um trabalho como copyleft, primeiramente registra-se o copyright do trabalho e em seguida são adicionados os termos de distribuição, que garantem os direitos de usar, alterar e distribuir o programa ou qualquer que sejam suas derivações (GNU, 2010). Segundo Stallman, o termo copyleft é apenas um conceito, sendo que os termos específicos de distribuição do programa devem estar contidos em sua licença de uso. Portanto, em 1989, a FSF lança a primeira versão da General Public License – GPLv1, baseada nos termos do copyleft (FSF, 2010). Atualmente a GPL está em sua terceira versão como poderá ser visto nas próximas subseções. 2.1.1 General Public License Versão 1 Em primeiro de fevereiro de 1989, a Free Software Foundation publicara a primeira versão da GNU General Public License, trazendo em seus termos as quatro liberdades do software livre que implicam no direito de usar, estudar, evoluir e distribuir qualquer software que esteja sob sua proteção. A GPL surgiu como uma necessidade à proteção dos direitos de quem desenvolve software livre e para a garantia de que o software, após sua disponibilização à comunidade, continuasse a manter as quatro liberdades defendidas pela Fundação do Software Livre, mesmo quando utilizado como parte de outros projetos de softwares (FSF, 2010). A primeira versão da GPL é constituída de duas seções sendo que a 24 primeira é formada por onze termos, de zero à dez, que tratam respectivamente: do direito de cópia, distribuição, modificação e da garantia de uso; e a segunda seção é um apêndice que exemplifica como devem ser aplicados os termos da primeira seção aos novos programas. Esse apêndice é também utilizado nas outras versões da licença. A primeira seção inicia no termo de número 0, o qual trata a aplicação da licença, ou seja, a quem se aplicam os direitos e deveres dos programas, trabalhos ou suas derivações o qual estará sob os termos da licença. Os termos de número 1, 2 e 3 tratam dos direitos e condições à cópia e distribuição. Conforme esses termos, a licença permite a cópia e a distribuição sem perda de informações, isto é, o programa ou trabalho deve permitir que qualquer pessoa copie e distribua todo ou parte do trabalho licenciado. Para isso é condição obrigatória que o código fonte do trabalho esteja disponível e no formato editável. Os termos de número 4 e 6, da primeira seção, vetam a cópia e distribuição de trabalhos publicados sob a GPLv1 cuja derivação não esteja sob a proteção da referida licença. Ressalta-se que devido a esses termos, a GPLv1 adquire uma característica “viral”, assim sendo, qualquer que seja a obra derivada de uma original que esteja licenciada com a GPL, essa deve permitir os termos 1, 2 e 3 supracitados relacionados à cópia e distribuição. O termo de número 5 deixa claro que todo aquele que copia, distribui e modifica um programa baseado nessa licença estará automaticamente aceitando esses termos. Por sua vez considera-se conforme o termo de número 7, que podem ser incluídas melhorias dos termos nas futuras versões da licença. O termo de número 8 abre uma exceção para os que tem interesse em não disponibilizar as alterações realizadas no trabalho cujo original use a licença GPL. Para tanto, a GPLv1 ratifica que é necessário entrar em contato com o autor solicitando a permissão para essa ação. Os termos de número 9 e 10 identificam respectivamente os responsáveis por falhas e riscos de manipulação do programa como sendo o próprio usuário, retirando qualquer responsabilidade dos autores por danos causados pelo uso do sistema, inclusive as perdas de dados, mesmo que o usuário tenha sido informado de tal possibilidade. Essa 25 prerrogativa é válida exceto se for exigido pela legislação ou acordado por escrito. Além da versão de número 1, encontram-se disponíveis no sítio do Projeto GNU as versões de número 2 e 3, que possuem em sua essência os termos dessa versão com algumas diferenças que serão tratadas nas próximas subseções. 2.1.2 General Public License Versão 2 A segunda versão da General Public License foi publicada em junho de 1991, adicionou dois termos em relação à primeira. Esta versão é formada por treze termos, de zero à doze, que abordam os critérios que permitem a cópia e distribuição livre, preocupando-se com os registros de patentes, visto que qualquer programa livre é facilmente ameaçado por patentes de software. Além do termo de número 0 definir a quem se aplica a licença, foi considerado que qualquer outra atividade diferente de cópia, distribuição e modificação não serão cobertas pela licença. A execução do programa não é um ato restrito, visto que a saída do programa é protegida por essa licença apenas se seu conteúdo constituir um trabalho baseado no Programa. Essa observação não existia na primeira versão da GPL. No termo de número 1 são mantidos os direitos à cópia e distribuição do código em qualquer meio, desde que sejam mantidos intactos os termos da licença do programa. Foi respeitada a possibilidade da cobrança de taxa mediante o ato físico de distribuição de uma cópia. Além disso, esta versão considerou a possibilidade da oferta de venda da garantia e do suporte para o programa. O termo de número 3 ratifica o que foi determinado no termo anterior. Considerando que deve ser respeitado o direito de alteração e evolução, e a replicação da licença mesmo que seja usado somente uma parte do programa. Foi adicionada a possibilidade de controlar a distribuição de trabalhos derivados ou coletivos baseados no Programa. Assim como na versão anterior, nos termos de número 4 e 6 estão os direitos de copiar, modificar, sublicenciar ou distribuir o programa, conforme estabelecido 26 nos termos da licença, desde que esses termos se mantenham em total conformidade e sejam retransferidos para o usuário que receberá a nova versão do programa. Diferente da primeira versão, o termo de número 5 deixa livre a aceitação da Licença, desde que o usuário não a tenha assinado. Contudo, o usuário perderá os direitos de modificar ou distribuir o programa ou seus trabalhos derivados. O termo de número 7 aborda as questões relacionadas a patentes, tendo como objetivo proteger a integridade do processo de distribuição de software livre, que é implementado pelas práticas de licenças livres. Essa abordagem não foi formalizada na primeira versão da GPL. Considera-se que muitas pessoas têm contribuído amplamente com o software livre. Portanto, cabe ao autor decidir se está disposto a distribuir seu programa utilizando outro tipo de licença. Ressaltando que essa escolha não pode ser feita por um licenciado. Outra consideração que não constava na primeira versão está no termo de número 8, o qual aborda a restrição de utilização e distribuição de programas em certos países, ou para determinados domínios, podendo ser acrescentado nos termos da licença uma limitação geográfica de distribuição explícita, por exemplo. Desse modo a distribuição passa a ser permitida apenas dentro do escopo declarado. O termo de número 9 desta versão é similar ao termo de número 7 da versão 1, que trata da possibilidade de publicação de futuras versões da licença com o objetivo de atender futuras demandas de permissões que possam surgir. Dessa mesma forma, o termo de número 10 da segunda versão equivale ao termo de número 8 da primeira, o qual aborda a importância de contatar com o autor original caso haja o interesse de algum licenciado em alterar os termos da licença das evoluções do programa. Por fim, os termos 10 e 11 abordam a garantia e a responsabilidade dos riscos de qualidade e performance que o uso da licença GPL institui para os desenvolvedores e usuários. Assim sendo, observa-se que a licença GPLv2 isenta seu autor de qualquer responsabilidade quanto a garantia. No entanto, considera que esses termos estão sujeitos à legislação aplicável ou à acordos por escrito. 27 2.1.3 General Public License Versão 3 A mais nova versão da General Public License foi lançada em 29 de junho de 2007 com o objetivo de evitar que mesmo estando registrado sob os termos das versões anteriores, programas desenvolvidos para determinados hardwares e que são evoluídos pela comunidade possam ser utilizados nesse mesmo hardware. A exemplo dessa situação, a Free Software Foundation cita o TiVo, um gravador digital que inclui código licenciado sob a GPLv2, disponível para a comunidade, pode ser alterado e redistribuído, mas não pode ser utilizado no aparelho, visto que o TiVo tem uma tecnologia que barra a execução de códigos não permitidos pelo fabricante (GNU, 2010). Além dessa situação, a FSF preocupou-se, durante a elaboração da GPLv3, com o mecanismo de Digital Rights Management (DRM), que são tecnologias usadas em produtos digitais com o objetivo de controlar a criação de cópias não autorizadas, a utilização de arquivos e limitar suas execuções. Isso é bastante comum em produtos de música e vídeo. Sabe-se que a FSF é contra o uso de DRM, visto que essa tecnologia impõe limite de uso, cópia e alteração por parte dos usuários. Ressalta-se que a intenção da inclusão de termos que aderem ao mecanismo de DRM é não limitar que fossem usadas tecnologias livres para seu desenvolvimento, como forma de garantir a liberdade dos usuários que desejam desenvolver programas para esse mecanismo. É sempre importante ressaltar que a GNU GPL não restringe o que os usuários fazem com o software, mas apenas os impede de restringir outros usuários (FSF, 2010). A GPLv3 possui 18 termos. Observa-se que no primeiro termo os autores preferiram trabalhar com as definições, ou seja, a terminologia utilizada na licença. Assim sendo, entende-se como sendo “Esta Licença” a GPLv3. Modificar uma obra é o mesmo que copiar ou adaptar parte ou a obra completa. A definição de “programa” é qualquer obra intelectual licenciada sob esta versão. O termo de número 1 tem como foco o código fonte, ou seja, o produto editável do programa; trata das suas definições dentro do contexto da GPLv3. Já o termo de número 2 aborda as permissões básicas definidas, que é o direito de executar, copiar, e redistribuir. É importante ressaltar que embora a GPLv3 possua essas permissões básicas, 28 o sublicenciamento não é permitido conforme será visto no termo de número 10. A proteção jurídica dos direitos dos usuários é tratada no termo de número 3, o qual define que ao cobrir uma obra com os termos dessa licença, o autor renuncia qualquer poder legal para proibir a evasão de medidas tecnológicas, negando qualquer intenção de limitar a execução ou modificação do funcionamento da obra. O termo de número 4 aborda o ato de fornecer cópias. A licença é totalmente a favor dessa prática desde que sejam mantidos os direitos dos usuários tratados nos demais termos. Ressalta-se que a licença permite que seja cobrada quantia em dinheiro pelo ato físico do fornecimento de cópias, mas não pelo fato de usar o programa. A distribuição das modificações do código fonte é tratada de forma similar as versões anteriores desta licença. Percebe-se que além de atender ao termo de número 4, durante o processo de distribuição devem ser respeitados os critérios do termo de número 5, que são a garantia de que toda modificação seja disponibilizada com avisos de que trata-se de uma versão modificada. Além disso, as modificações devem ser licenciadas sob os termos dessa mesma versão. As obras licenciadas em forma de código objeto são tratadas no termo de número 6, que podem ser licenciadas na forma de fornecimento do código dentro de um produto físico, permitindo o intercâmbio de código, alterações e evolução sem que o código deixe de funcionar no produto. Para tanto, faz-se necessário fornecer o código, deixá-lo disponível para que seja acessado em outras meios de transmissão e não somente dentro do produto. Não sendo permitido limitar as formas do uso do código-fonte por parte do usuário. Ainda neste termo é mencionado a importância do fornecimento das informações quanto a instalação em formato de documento público que não requeira senhas especiais para serem desempacotados. O termo 6 finaliza informando que o fornecedor não será obrigado a incluir garantias de versões alteradas por usuários. O termo de número 7 aborda algumas permissões adicionais que podem ser aplicadas a toda licença ou só parte dela. Sendo que para o segundo caso, a parte que recebe a aplicação dos termos adicionais não restringe a aplicação da licença em todo o programa. Assim sendo, quem receber uma cópia de uma obra sob a GPLv3 pode 29 remover qualquer um dos termos adicionais, da mesma forma o usuário pode inserir permissões adicionais. A GPLv3 traz, no termo de número 7, algumas desas permissões, tais como: a possibilidade de negar a garantia do produto; exigir especificações de autoria do objeto licenciado; e até mesmo, limitar o uso do objeto para fins publicitários. Ressaltando que essas permissões podem ser removidas da licença, inclusive adicionadas outras desde que não contradiga o que está estabelecido nos termos da licença. O termo de número 8 trata a questão da rescisão da licença. Ao rescindir a licença GPLv3 em uma determinado versão de um produto, não serão encerradas as licenças das versões anteriores cobertas pela GPLv3. Portanto, a rescisão é feita em uma nova versão. Versões que já estejam licenciadas, permanecerão licenciadas. Para executar uma cópia do programa não existe a necessidade de aceitar os termos da licença, porém para ter o direito de copiar e distribuir qualquer obra registrada sobre a GPLv3 é necessário aceitar os termos da licença. Isso está escrito no termo de número 9. O termo de número 10 informa que esse licenciamento é automático. Ou seja, cada vez que o usuário recebe um programa sob os termos dessa licença, o evolui e o repassa, automaticamente a licença será aplicada a versão alterada. As questões relacionadas a patentes, que foi um dos principais motivos para a elaboração dessa versão, estão contidas no termo de número 11, o qual proíbe que organizações distribuam trabalhos cobertos pela licença e institui dentre outros termos que os colaboradores que desenvolvem sob as condições dessa licença concedam uma licença mundial irrevogável totalmente livre de patentes. O termo de número 12 preocupa-se com a liberdade de terceiros. Mesmo que o usuário tenha imposições judiciais que contradigam as condições desta Licença, ele não estará livre dessas condições. Portanto, se o usuário não pode fornecer seu código sob essa licença, de modo que satisfaça suas obrigações diante a legislação, é recomendado que desista completamente da transmissão do programa. A licença permite a interação da GPLv3 com a GNU Affero General Public License. Conforme termo de número 13, arquivos fontes ou módulos separados podem ter sua licença combinada com a AGPL. A GNU Affero é uma licença escrita pela FSF que é recomendada para desenvolvedores que tem seus projetos executados em 30 rede (GNU, 2010). Assim como nas versões anteriores da GPL, esta versão ressalta que podem existir versões futuras com objetivo de abordar novos problemas em relação a distribuição e compartilhamento de código fonte. Essa questão é tratada no termo de número 14 da GPLv3. Os termos 15, 16 e 17 tratam das garantias e responsabilidades que a licença fornece. Como nas versões anteriores, a GPLv3 não prevê a garantia do código fonte, bem como seus resultados de execução, salvo pelos limites da lei e garantias implícitas de comercialização ou finalidades particulares que o próprio usuário queira assumir. Embora a licença GPLv3 receba algumas críticas da comunidade de software livre por permitir a interação com desenvolvimento de mecanismos de DRM, e visto que a própria FSF não concorda com esses mecanismos, considera-se uma licença madura que busca em seus termos a liberdade dos seus usuários. 2.2 Lesser General Public License A GNU Lesser General Public License - LGPL é uma licença homologada pela Free software Foundation que aborda os direitos de cópia e de distribuição de código de bibliotecas de programa como parte do programa e não como um todo. Dessa forma, a LGPL é compatível com programas mistos cuja cópia e distribuição são aplicadas a essas partes do código e não a todo o fonte do programa. A Free Software Foundation não incentiva o uso desta licença, visto que permite que códigos livres sejam usados em projetos não livres. Porém é necessária uma licença para pessoas que não estão dispostos a abrir todo o programa, tendo em vista que a GPL tem característica viral, ou seja, se parte do programa utiliza licença GPL todo o programa deve usá-la, o que não é a intenção de alguns desenvolvedores de software. A LGPL possui atualmente 2 versões. A versão 2.1 é compatível com a GPLv2 e substituiu a GNU Library Public License versão 2, por isso sua primeira 31 versão foi numerada como 2.1. A GNU Library Public License foi a primeira tentativa de elaboração de uma licença para bibliotecas de software. É importante ressaltar que a Library foi substituída pela Lesser pela própria Free Software Foundation, portanto não fará parte do escopo desta pesquisa. A versão 3 da LGPL é compatível com a terceira versão da GPL. 2.2.1 Lesser General Public License Versão 2.1 Essa versão é compatível com a GPLv2, portanto preocupa-se com o contexto de patentes de bibliotecas de software, da mesma forma que a GPLv2 ressalta a importância de proteção dos autores referentes a quebra de patentes. O objetivo de usar uma licença que cobre somente uma biblioteca de um programa é permitir que seja possível ligar bibliotecas livres a programas proprietários. A LGPL v2 é formada por 17 termos que condicionam a cópia, distribuição e modificação bem como definem a garantia de uso de bibliotecas baseadas nessa licença. O primeiro termo da LGPL, o termo de número 0 é relativamente parecido com o termo 0 das versões da GPL, o que diferencia é que além de atribuir a quem se aplica a licença, esse termo defini biblioteca de software como sendo uma coleção de funções de software de forma que se ligam a programas de aplicação para formar programas executáveis. O termo de número 1 relaciona o direito de cópia e distribuição do código fonte completo da biblioteca, é em sua essência bastante parecido com o termo de número 1 da GPLv2. A modificação e distribuição de partes ou toda a biblioteca são tratadas na seção de número 2, que institui cláusulas para condicionar essas modificações à biblioteca de software. Uma dessas cláusulas é a exclusão de qualquer possibilidade de modificação do software sem que seja a biblioteca protegida por esses termos. Outra clausula é o de reconhecimento da evolução dos arquivos, ou seja, todo e qualquer usuário que evolua a biblioteca registrada sobre a LGPL deve identificar essa evolução. O termo de número 3 preocupa-se com a aplicação da GPLv2 para uma 32 determinada cópia da biblioteca. Caso o usuário deseje registrar sua biblioteca sob os termos da GPLv2, deve atentar ao fato de que os avisos dessa licença devem ser mantidos. O mesmo ocorre para versões posteriores a GPLv2. É importante ressaltar que essa alteração é irreversível para a cópia que teve sua licença alterada, sendo aplicável a GPLv2 a todas as cópias subsequentes e trabalhos derivados feitos com base na cópia. A cópia e distribuição do código da biblioteca devem ser feitas em meios acessíveis, e devem estar completos acompanhados com os requisitos de execução. Essa cláusula corresponde ao termo de número 4. Está fora do escopo desta licença qualquer programa que não derive de uma biblioteca registrada sob esses termos, incluindo os programas que apenas utilizam a biblioteca para sua execução. Ressaltando que programas que fazem uso da biblioteca para a sua execução gera um executável derivado da biblioteca que é abrangido pelos termos desta licença. A não ser que a execução do programa possa ser realizada sem a biblioteca. Essas questões são tratadas no termo de número 5. O termo de número 6 trata da evolução e combinação da biblioteca com outros programas. São definidas cláusulas para a cópia e distribuição, tais como, a disponibilização do fonte, a especificação da alteração da versão licenciada, a disponibilização da biblioteca através de um mecanismo adequado. Ressalta-se que mesmo que o programa apenas use a biblioteca, esse deve estar disponível com a biblioteca, dessa forma evita-se que seja utilizado no mesmo programa bibliotecas proprietárias e livres. O termo de número 7 define que dispositivos da biblioteca licenciada sob a LGPLv2 podem ser combinados com outros dispositivos de outra biblioteca que não esteja sob a LGPLv2, desde que respeitem as cláusulas do termo de número 6, forneça cópia da obra sem a combinação das bibliotecas e informe onde essa combinação pode ser encontrada. Conforme termo de número 8, qualquer tipo de cópia, modificação, bem como o sublicenciamento ou distribuição da Biblioteca é proibido, exceto conforme estabelecido nesta licença, podendo o usuário ter seus direitos recendidos. Contudo, terceiros que tenham recebido cópias da biblioteca e tenham mantido os termos da 33 licença não terão sua licença recendida. O termo de número 9 trata da liberdade de aceitação da licença. O usuário não é obrigado a aceitar os termos desta licença, desde que não a tenha assinado. Ressaltando que as permissões para modificar ou distribuir a biblioteca ou suas obras derivadas são, sumariamente, canceladas. Sendo que o ato de distribuir e modificar a biblioteca ou trabalhos baseados nela implica na automática aceitação dos termos da LGPLv2. Esse direito é transferido para todo o usuário que recebe o programa, conforme termo de número 10. Conforme o termo de número 11, para os casos em que por motivos de restrições judiciais ou infração de patentes, os termos dessa licença não podem ser cumpridos, é recomendável que o usuário desista da distribuição da biblioteca. A limitação da distribuição da biblioteca por regiões geográficas pode ser inclusa como termo da licença, conforme mencionado no termo de número 12. Isso devido as restrições que alguns países possuem para distribuição das bibliotecas conforme regiões pré-definidas. Assim como nas outras licenças elaboradas pela FSF, a LGPL pode sofrer evoluções em seus termos nas versões futuras que diferem entre si pelo número da versão. A licença prevê essa evolução no termo de número 13. O termo de número 14 define que a incorporação de parte da biblioteca em programas livres incompatíveis com essa licença deve ser feita mediante autorização do autor Os dois últimos termos desta licença, de número 14 e 15, abordam a garantia e limitações de uso. Sendo que, conforme LGPLv2 nenhum usuário que registra sua biblioteca sob essa versão é obrigado a fornecer garantias, exceto se solicitado pela legislação local. Qualquer usuário que redistribua a biblioteca não poderá ser responsabilizado por danos que essa venha a causar decorrentes de sua utilização. A LGPL é aplicável às bibliotecas de softwares com o objetivo de 34 garantir o direito a liberdade de desenvolvedores que tenham interesse em desenvolver e disponibilizar somente parte do programa. Para isso, a LGPL faz restrições que impedem a limitação ou cancelamento desses direitos, que são traduzidas em responsabilidades para os usuários que distribuem cópias da biblioteca ou as modificam. 2.2.2 Lesser General Public License Versão 3 A terceira versão da LGPL incorpora os termos e condições da versão 3 da GNU General Public License, complementada pelas permissões adicionais dos termos descritos na LGPLv3. Essa versão foi lançada oficialmente no dia 29 de junho de 2007 e é formada por sete termos, sendo a versão mais recente da Lesser General Public License. O termo de número 0 introduz as definições das palavras que serão utilizadas nos demais termos da licença, tais como: “GNU GPL”, que é referente a versão 3 da GPL; a palavra “Biblioteca”, que representa uma obra coberta pela licença, exceto aplicações ou obras combinadas; e “aplicação”, que é um trabalho que faz uso da biblioteca. O próximo termo, número 1, ressalta que a obra pode ser coberta pela licença sem que esteja vinculada ao terceiro termo da GPLv3. A distribuição da versão modificada de uma cópia da biblioteca é condicionada a dois itens do termo de número 2. Os itens impõe que sejam usados os termos dessa licença para a versão modificada ou sob os termos da GNU GPL, nesse segundo caso devem ser ignoradas as permissões adicionais. Para a distribuição de biblioteca com softwares que tenham códigos incorporados ou obras combinadas, os termos 3 e 4 determinam alguns critérios a serem seguidos. Na incorporação de códigos devem ser considerados dois critérios; fornecer um aviso em cada cópia do código e o código do programa deve estar sob os termos da GNU GPLv3 e da LGPLv3. As obras combinadas podem ser retransmitidas desde que não restrinja a modificação da biblioteca. Além disso são critérios para essa retransmissão: fornecer aviso prévio dessa combinação, o trabalho combinado deve ser fornecido com uma cópia da GPLv3 e desta licença; fornecer os fontes que estão cobertos por essa licença; e fornecer informações de instalação para os casos em que exista a obrigatoriedade, conforme a seção 6 da GPLv3. 35 Além da combinação da biblioteca com outros programas, a licença aborda os casos em que a biblioteca é combinada com outras bibliotecas no termo de número 5. Nesses casos a biblioteca combinada deve incluir cópia da biblioteca que está sob os termos dessa licença, sem a combinação. Além disso deve ser fornecido aviso da combinação da biblioteca. No último termo da licença são tratadas as futuras versões revisadas que podem ser publicadas pela Free Software Foundation, considerando que essas versões serão similares ao escopo da versão atual sendo numeradas de forma distinta. A LGPLv3 é uma licença livre compatível com a GNU GPL, podendo ser associada a versão 3 da GPL. Seu escopo foi desenvolvidos para cobrir trabalhos conhecidos como bibliotecas de software. Essas bibliotecas são consideradas como componentes, partes de softwares, desconsiderando o programa como todo. Observa-se com a elaboração dessa licença que a Free Software Foundation está empenhada em desenvolver produtos de licenças que garantam a liberdade de todos os desenvolvedores que compartilham com os ideais do software livre. 2.3 BSD License A BSD License foi uma das primeiras licenças de software livre escrita. Desenvolvida originalmente pela Universidade de Berkeley, logo após a restrição que a AT&T impôs ao sistema operacional UNIX, que até então era utilizado na universidade. Com as restrições impostas, a universidade desenvolveu seu próprio sistema operacional, o Berkeley Software Distribution, que por sua vez foi disponibilizado sob os termos da licença desenvolvida para ele (GNU, 2010). Os termos da BSD podem ser alterados, pois a licença não define estrições para isso. Atualmente a licença BSD possui 3 cláusulas, sendo que em sua versão anterior contava-se com uma cláusula a mais. A cláusula que foi retirada exigia que todo software distribuído sob a licença BSD deveria informar que possuía código desenvolvido na Universidade de Berkeley. Essa situação tornou-se inconveniente, visto que durante a agregação de outros componentes ao software, eram inseridos os nomes dos seus 36 respectivos desenvolvedores (GNU, 2010). Tornou-se juridicamente inviável, pois era difícil definir a autoria do programa, além de que, para projetos que integravam diversos componentes, havia uma longa lista de nomes na licença. Essa cláusula foi retirada da licença em 1999 (OSI, 2010). As três primeiras cláusulas da licença são precedidas pelo aviso de copyright o qual determina que o binário e o fonte do software podem ser distribuídos desde que obedeçam três cláusulas básicas: a redistribuição do código fonte deve conter o aviso de direitos autorais, que identifica o titular; a lista de condições, formada pelas três cláusulas; e o aviso de isenção de garantias, que subsegue a lista de cláusula. Já a redistribuição na forma binária, é condicionada na segunda cláusula ao aviso de direitos autorais, as condições da licença e ao termo da não garantia na documentação e/ou qualquer outro material fornecido com a distribuição. A terceira cláusula institui que o nome da organização ou o dos contribuidores não podem ser utilizados para apoiar ou favorecer os produtos derivados do software, exceto os casos em que exista autorização prévia para isso. A licença finaliza com os avisos sobre garantias e responsabilidades. A licença isenta os detentores dos direitos autorais e contribuintes a serem responsabilizados por quaisquer danos causados por qualquer motivo, incluindo a isenção de qualquer responsabilidade por insatisfações do uso do software, incluindo mas não se limitando as garantias implícitas de comercialização e adequação para propósitos particulares. A licença BSD é simples e compatível com a GPL. Nota-se que devido a simplicidade e flexibilidade que seus termos possui, a BSD é considerada juridicamente vaga. Contudo, os softwares cobertos pela BSD possuem uma licença de software livre objetiva e que tem direitos próximos aos softwares disponibilizados no domínio público (GNU, 2010). 2.4 MIT License A licença MIT é também conhecida como X11, por ter sido desenvolvida para o X Window System, que é o gerenciador gráfico utilizado no sistema operacional 37 Gnu/Linux. A licença foi originalmente desenvolvida pelo Massachusetts Institute of Technology em 1987, é simples e pequena, possui apenas três parágrafos. Existem outras versões da licença, visto que não há restrição quanto a inserção de novos termos na licença (GNU, 2010). O primeiro parágrafo da licença MIT institui os direitos à cópia, distribuição, alteração do software sem que haja limite. Esses direitos são aplicados para qualquer usuário que receba um software com essa licença. A MIT prevê a condição de que esses direitos só serão respeitados para os casos em que sejam mantidos o aviso de copyright e a licença seja anexada a todas as partes do software. Essa condição está prevista no segundo parágrafo da licença. A garantia e responsabilidades são temas tratados no terceiro e último parágrafo. Nesse fica instituído que o software é fornecido sem qualquer tipo de garantia, sendo que os danos causados não podem ser atribuídos ao autor do software. Ressalta-se que esse termo é aplicável inclusive, mas não se limitando, aos casos em que o software seja utilizado comercialmente por terceiros, a garantia pode ser fornecida, porém em nenhum momento os detentores dos direitos autorais serão os responsáveis. Esse parágrafo protege os autores de processos judiciais, visto que isenta a responsabilidades para os casos em que o software seja usado de forma ilícita por terceiros. A Licença MIT embora simples, é clara e bem definida. É uma licença de software livre compatível com a GPL, pois garante o direito a execução, cópia e modificação sem que haja restrições para isso. É por sua vez bastante utilizada, visto que existem diferentes versões dessa licença devido a possibilidade de inclusão de termos adicionais, pois não existe restrição quanto a alteração e inclusão dos seus termos. Além disso, a MIT não restringe que softwares cobertos por seus termos não sejam utilizados em porções de código fechado, nem ao menos impede o sublicenciamento. Devido a isso, é justificável a grande adesão dos desenvolvedores por esse tipo de licença (OSI, 2010). 2.5 Apache License Versão 2.0 Em janeiro de 2004 a Apache Software Foundation (ASF) lança a versão 2.0 da licença Apache com o objetivo de que os softwares desenvolvidos fora da 38 fundação pudessem adotá-la e aumentar a compatibilidade com a GPL. Considerando que as versões anteriores não possuíam compatibilidade com a GPL, essas não são instrumentos de pesquisa deste trabalho devido ao critério número 2 de seleção das licenças o qual define que devem ser livres e compatíveis com a GPL (ASF, 2010). A licença apache possui 9 termos que tratam as condições de uso e distribuição do software. No termo de número 1 são expostas algumas palavras e suas respectivas definições que serão utilizadas na licença, dentre estas, a palavra “Licença” significa os termos de 1 a 9; “Licenciante” é o detentor dos direitos autorais; e "Contribuinte"é um licenciante beneficiário de um trabalho que incorpora contribuições ao mesmo. O termo de número 2 define a concessão de licença de copyright introduzida na Apachev2. Assim sendo, os termos e condições da licença institui que cada contribuinte cede ao usuário um produto com uma licença irrevogável que concede o direito de reproduzir, elaborar trabalhos derivados, inclusive sublicenciar e distribuir o trabalho. Por sua vez, no termo de número 3 a ASF inseriu a concessão de licença de patentes a qual institui que cada contribuinte concede ao usuário uma licença perpétua sem cobrar patentes, de forma irrevogável, não podendo questionar patentes do software distribuído. Os critérios de distribuição são definidos no termo de número 4 da licença. Portanto, é permitido distribuir cópias do software ou de softwares derivados, desde que os termos da licença sejam repassados. Além disso, as modificações devem conter avisos que as identifiquem e os avisos que existem no trabalho original devem estar contidos nos derivados, sendo permitido que qualquer contribuinte adicione seus respectivos avisos, esses por sua vez não podem modificar a licença. As condições de contribuições são definidas no termo de número 5, o qual trata que essas devem usar a licença apache como padrão, salvo os casos em que sejam definidos explicitamente o contrário pelo contribuinte. Ressaltando que para esses casos, os termos e condições da licença não podem ser alterados. O uso de nomes comerciais e/ou marcas registradas é vetado conforme o termo de número 6. Esse termo concede exceção aos casos em que deva ser descrita a 39 origem do trabalho e sua reprodução nos avisos. O termo de número 7, 8 e 9 institui as condições de renúncia e aceitação da garantia e os limites de responsabilidade. A licença institui que o usuário é o único responsável pelo uso ou redistribuição do Trabalho, assumindo todos os riscos. Além disso, nenhum contribuinte pode ser responsabilizado por danos de natureza qualquer causados pelo trabalho sob os termos da licença Apache. Outras entidades não podem prover garantias sobre o trabalho coberto por essa licença, salvo os casos em que a entidade declara que está agindo por conta própria. Ressalta-se que esse termo é legal a menos que exigido o contrário por leis locais. Observa-se que a licença Apache possui seus termos precisamente definidos o que facilita o entendimento e evita conflitos de interesses com os envolvidos. Tornando-se, a partir da segunda versão, uma licença madura e amplamente utilizada. 2.6 Resumo do Capítulo Analisou-se neste capítulo os termos das licenças de software livre mais utilizadas no mundo, cujos termos são compatíveis aos termos da General Public License, conforme classificadas nos sítios da Open Source Iniciative e Free Software Foundation. Embora o software livre seja fundamentado nos direitos ao uso, cópia, modificação e distribuição, observou-se conforme análise, que algumas licenças podem ser mais permissivas que outras. A exemplo, cita-se a BSD, que é totalmente permissiva, em relação a GPL. Observou-se ainda, que a razão para existir versões diferentes da mesma licença é a necessidade em adequar seus termos às problemáticas relacionadas ao direito do autor e à liberdade dos usuários que surgem corriqueiramente. Finalmente, este estudo mostrou que as licenças de software livre estão evoluindo para que possam manter as liberdades de uso, cópia e distribuição sempre que surgir problemáticas jurídicas, ou não, que possam prejudicar os direitos dos que compartilham com os ideais do software livre. 40 41 Capítulo 3 Seleção dos Princípios Constitucionais A Administração Pública (AP) tem a execução dos seus atos regida pela Constituição Federal. Mais especificamente, o Art. 37 define os Princípios Constitucionais Fundamentais dos atos Administrativos. A importância da identificação das características dos princípios constitucionais, para esta pesquisa, dar-se ao fato de que este trabalho é produto de estudo para a implantação de Políticas de Software Público no Poder Executivo do Estado do Ceará. Sendo que tal implementação trata-se de um ato público, deve-se analisar sua conformidade aos princípios que norteiam a execução dos atos Administrativos. Os princípios constitucionais administrativos, que estão no Art. 37 da constituição, formam a base de toda a Administração Pública. Esses princípios tem como objetivo orientar os atos administrativos, garantindo a boa administração, que reflete na gestão dos negócios públicos e na aplicabilidade dos seus recursos para o interesse da coletividade (SILVA, 2005). São esses: • O Princípio da Legalidade; • O Princípio da Impessoalidade; • O Princípio da Moralidade; • O Princípio da Publicidade; • O Princípio da Eficiência. O cumprimento desses princípios, por parte da Administração Pública, é por sua vez obrigatório. Qualquer que seja a transgressão a esses, equivale a uma ofensa a todo o sistema constitucional administrativo. Ressalta-se a inexistência de hierarquia quanto aos cinco princípios supracitados. Cada princípio tem a sua relevância constitucional, e, portanto, não é corretor afirmar que um princípio prevalece em relação a outro (SILVA, 2005). Observa-se que outros princípios são extraídos dos incisos e parágrafos do Art. 37. Esses não estarão presentes no escopo deste estudo, pois são implícitos aos cinco princípios aqui estudados. Este capítulo tem por objetivo contextualizar os cinco Princípios Constitucionais Administrativos, procurando identificar as principais características conforme suas definições. 3.1 3.1.1 Detalhamento dos Princípios Constitucionais O Princípio da Legalidade Para que os atos públicos sejam considerados legais é necessário que estejam fundamentados em leis vigente à esses, ou seja, o administrador público não pode promover ações que não sejam regulamentadas por lei. Conforme Meirelles (2007), o princípio da legalidade coloca as atividades do administrador sob os mandamentos da lei, em virtude do bem comum. A negligência a esse princípio por parte do administrador público, resultará em práticas inválidas, podendo ser penalizado civil e criminalmente. Ainda sobre a legalidade, é possível afirmar que nos atos administrativos particulares, toda atividade não proibida é permitida. Observa-se porém, que para os atos administrativos públicos regidos pelo princípio da legalidade, toda a atividade que não está permitida por lei é proibida (CARVALHO, 2003). Conforme Art. 9 da Lei de número 9.609 de 1998, também conhecida como a Lei do Software Brasileira, entende-se que a licença de software é objeto para o uso de programas de computadores dentro do território nacional. Portanto, observa-se que as licenças analisadas neste trabalho estão de acordo com o referido Artigo, prescrevendo à Lei, visto que essas possuem termos que permitem o uso de programas de computadores, tratados como licença de software livre. 43 Alinhando-se ao Art. 9, o uso de programas de código livre pela Administração Pública deve ocorrer por meio das licenças de software livre, atendendo portanto, o princípio da legalidade, pois estão em conformidade com o que prescreve em Lei. Ressalta-se que os termos do Contrato de Uso devem estar de acordo com o que definido nos termos da Lei 9.609. Serão consideradas como características inerentes a este princípio a Legitimidade e a Licitude. 3.1.2 O Princípio da Impessoalidade A impessoalidade estabelece que as decisões da AP não podem ser definidas por atos pessoais do administrador. Assim sendo, a conduta do administrador público não deve ser regida por seus interesses pessoais. Práticas como favoritismos ou perseguições devem ser excluídas de sua conduta (MEIRELLES, 2007). A impessoalidade está diretamente relacionada ao princípio da isonomia, em que todos são iguais perante a lei. E se todos são iguais perante a lei, tendo em vista que a Administração Pública tem seus atos geridos pela lei, então todos são iguais perante a Administração (SILVA, 2005). Entende-se, a partir das análises dos parágrafos acima, que o uso de licença de software livre e a liberdade dentro dos seus conceitos, torna igual o usuário e o desenvolvedor, conforme os termos das suas licenças. Portanto, pode-se aceitar que o uso de licenças de software livre na Administração Pública está alinhado ao princípio da impessoalidade, visto que para o software livre e para a administração pública, neste contexto, todos são iguais perante a lei. Além disso, o uso do software livre promove o igual direito à informação e ao conhecimento, não faz acepção de pessoas ou grupos de pessoas. Como características inerentes a este princípio, cita-se a inexistência de interesse pessoal nos atos administrativos, ou seja, o sentimento de coletividade e o tratamento igualitário para com os administrados (SILVA, 2005). 44 3.1.3 O Princípio da Moralidade O princípio da moralidade institui a formação do ato administrativo em acordo com a ética moral. Enquanto que o princípio da legalidade alinha o ato administrativo à lei, a moralidade tem um foco mais amplo. Isto porque, além da legalidade do ato, esse princípio envolve a conformação do mesmo com a ética e a moral (SILVA, 2005). O fato é que podem existir atos administrativos que, embora sejam legais, não são, entretanto, morais. A noção da moral administrativa tratada nesse princípio não está vinculada apenas às convicções do agente público, mas sim à noção de atos adequados à ética existente no grupo social (CARVALHO, 2003). A ética e a honestidade podem ser características desse princípio. Ainda sobre a ética moral, pode-se afirmar que os atos morais são ações desenvolvidas pelo administrador que contemplam a sociedade como um todo e não somente para si. O administrador público com os direitos que lhe conferem é responsável por agir em favor da coletividade. O ato de compartilhar o conhecimento é ético e honesto, pois torna-se um ato democrático que favorece a ampliação do conhecimento em dispor da sociedade. Assim, o incentivo ao uso do software livre por parte da AP é um ato legal, conforme o principio da moralidade, visto que o compartilhamento é para o bem de um todo e não somente do administrador. 3.1.4 O Princípio da Publicidade O princípio da publicidade instala a necessidade de que a Administração Pública seja acessível, aberta e transparente. Sendo excluída a ideia de que os assuntos da Administração Pública são reservados ou sigilosos. A publicidade é vista como regra geral, podendo ser sigilo apenas em circunstâncias excepcionais, previstas na legislação (CARVALHO, 2003). A publicidade é tida como um princípio administrativo, pois entende-se que o Poder Público, por ser público, deve ser transparente. Pode ser feita por publicação no jornal oficial ou edital afixados no ambiente de divulgação dos atos públicos, para que toda a sociedade tenha acesso e conhecimento do ato pulicado (SILVA, 2005). 45 O conceito de compartilhamento existente no uso do software livre é, por si, um ato público. O acesso aos fontes de um programa, bem como a toda sua documentação, de forma a entender sua execução é alinhado ao princípio da publicidade. A administração pública, ao compartilhar os códigos fontes de programas, estará por sua vez condizendo com a publicidade desse executável. Tornar público o que é público é a ideia disseminada pelo princípio da publicidade. A transparência e a acessibilidade são características essenciais para a realização deste princípio. 3.1.5 O Princípio da Eficiência Conforme Silva (2005), a eficiência não é classificada como um termo jurídico, mas econômico. Tratando-se de forma geral, que o eficiente é a realização racional dos atos administrativos, o que gera a possibilidade de medir o custo da satisfação dos atos em relação ao seu grau de utilidade, visto que o princípio da eficiência administrativa tem como conteúdo a relação meio e resultados. A eficiência é imposta a todo o agente público. Ao alinhar-se a esse princípio os atos da AP não são avaliados apenas como legais e morais, mas são vistos em sentido amplo que atingem os aspectos quantitativos e qualitativos do rendimento efetivo, do custo operacional e da real utilidade que os serviços públicos têm para o Administrador e os administrados (MEIRELLES, 2007). Entende-se que a eficiência da qual a Constituição Federal fala não se resume apenas à racionalização dos meios para a realização dos fins administrativos, mas também ao ato de eleger fins adequados. Em outras palavras, quando o administrador escolhe os melhores resultados possíveis, mesmo que sejam sobressaltados os custos administrativos, ainda assim são atos considerados eficientes. Embora as características inerentes a este princípio sejam os menores custos e maiores benefícios, é importante que o administrador observe o grau de benefícios que seus atos geram para todos os administrados (FALCAO; LEMOS; FERRAZ, 2007). O uso do Software Livre na administração pública além de estar 46 relacionado com demanda de informatização nas atividades cotidianas da gestão, atende às diretrizes da Constituição Federal estabelecidas no artigo 218, que trata do incentivo à pesquisa e capacitação tecnológica, e ao artigo 219, o qual institui o incentivo ao mercado interno, constituído como patrimônio nacional, através da autonomia tecnológica (FALCAO; LEMOS; FERRAZ, 2007). A relação custo / benefício existente na utilização do software livre, vai além do conceito econômico que esses termos possuem. Conforme análise dos parágrafos anteriores, o domínio tecnológico e a independência que o uso de tecnologias abertas viabilizam podem ser consideradas eficientes para a Administração Pública. O baixo custo de tecnologias livres é apenas um optativo, visto que o diferencial é a liberdade e autonomia tecnológica que esta modalidade de software promove. É correto afirmar que o incentivo ao uso de tecnologias livres na Administração Pública é condizente com o princípio da eficiência, pois tem como relação as melhores práticas fins / meios para o agente público e a sociedade civil. 3.2 Resumo do Capítulo Os atos administrativos são norteados pelos cinco Princípios Constitucionais Administrativos, sendo esses; Legalidade, Impessoalidade, Moralidade, Publicidade e Eficiência. Neste capítulo foram contextualizados os Princípios Administrativos, relacionando-os às características existentes no conceito de Software Livre. Para cada princípio foram eleitas duas características que o identificasse. Assim sendo, para o Princípio da Legalidade identificou-se a Legitimidade e Licitude. Por sua vez, o Princípio da Impessoalidade foi identificado pelas características de Igualdade e Coletividade. Para o Princípio da Moralidade, foram citadas como características a Honestidade e a Ética. Já no Princípio da Publicidade, identificaram-se a Transparência e Acessibilidade, e para o Princípio da Eficiência, foram eleitos os Melhores Custos e Altos Benefícios como características. A definição de cada característica deu-se conforme a compreensão do autor em relação aos estudos dos princípios, concordando com os autores referenciados neste estudo. 47 Capítulo 4 Resultados Alcançados Neste capítulo os resultados do trabalho são apresentados e discutidos. O conteúdo deste capítulo está organizado como segue: as características pertinentes a cada um dos princípios constitucionais são discutidas na seção 4.1. Em seguida, define-se a métrica Aderência aos Princípios Constitucionais (APC), utilizada para a avaliação dos modelos de licenças de software livre, na seção 4.2. Na seção 4.3 a análise alvo do presente trabalho é apresentada e, finalmente na seção 4.4, são apresentados os quadros resumo que sintetizam os resultados do trabalho. 4.1 Características dos Princípios Constitucionais Foram considerados como atributos válidos as características dos Princípios Constitucionais Administrativos, conforme citadas no capítulo de número 3. Para cada princípio, foram eleitas duas características. A lista abaixo relaciona os princípios e suas características: 1. Princípio da Legalidade (a) Licitude: O contexto explorado está relacionado a adequação dos termos de cada licença à Lei do Software brasileira. Portanto, declara-se lícita a licença que respeitar as condições de garantia, comercialização e aos direitos do autor conforme a referida Lei. (b) Legitimidade: O contexto de legitimidade está relacionado às licenças que prescrevem o Art. 9 da Lei 9.609, o qual define que o uso do programa de computadores no território nacional dar-se-á mediante a contrato, ou seja, mediante licença de uso. 2. Princípio da Impessoalidade (a) Igualdade: Entende-se que a licença está totalmente alinhada a essa característica quando trata de forma igualitária, usuários e desenvolvedores. Atribuindo-lhes o direito ao uso, cópia, modificação e distribuição. Sem que haja discriminação para isso. (b) Coletividade: Será classificada com total alinhamento a essa característica a licença que em seus termos privilegia o compartilhamento do conhecimento em favor dos usuários e desenvolvedores. 3. Princípio da Moralidade (a) Honestidade: Para essa característica serão considerados as licenças que favorecem o acesso ao conhecimento. Portanto, considera-se que restringir o direito ao conhecimento é um ato desonesto. (b) Ética: Essa característica, dentro dos termos das licenças, será abordada nesta análise, como sendo um ato em prol da coletividade, do bem comum tendo como referência o interesse público. 4. Princípio da Publicidade (a) Transparência: Serão consideradas totalmente conforme a essa característica, as licenças que não restringem o direito de acesso ao código fonte. (b) Acessibilidade: Para essa característica, serão consideradas totalmente conforme, as licenças que permitem a alteração e distribuição do código fonte de programas de computadores. 5. Princípio da Eficiência (a) Melhores custos: Consideram-se alinhadas a essa característica, as licenças que em seus termos não obrigam a cobrança de taxas para que o usuário / desenvolvedor tenha acesso ao programa. (b) Altos Benefícios: Será considerado como alto benefício a independência tecnológica que a licença provê em seus termos, conforme o direito de acesso ao conhecimento utilizado para o desenvolvimento do programa, por meio do código fonte. 49 4.2 Métrica: Aderência aos Princípios Constitucionais (APC) Para cada um dos princípios constitucionais, foram estabelecidos atributos, os quais estão associados às características destes mesmos Princípios Constitucionais Administrativos citados no capítulo anterior. Assim, no Processo de Análise das Licenças, é verificado em que grau esses atributos são atendidos por cada licença analisada. Assim sendo, verifica-se se uma determinada licença atende aos atributos daquele princípio, de modo que estas possam assumir um de três possíveis valores, conforme Tabela 4.1. Valor Não Conforme Parcialmente Conforme Totalmente Conforme Significado A licença atende a nenhuma característica Parcialmente Conforme A licença atende todas as características Tabela 4.1: Tabela com os valores de APC Na formulação matemática da métrica são considerados os elementos, variáveis e função, conforme Tabela 4.2. Assim sendo, define-se a métrica Aderência aos Princípios Constitucionais (APC) conforme abaixo: 5 APC = {ML j |max ∑ ! NC ML j , PCi } i, j=1 A métrica APC definida na equação 1 representa o conjunto formado pelos modelos de licenças que atendem ao maior número de características dos princípios constitucionais. Teoricamente os valores possíveis para a métrica APC variam desde um mínimo de 0 (zero), situação em que nenhuma característica dos princípios constitucionais é atendida por um determinado modelo de licença, a um máximo de 10 (dez), situação em que todas as características são atendidas. No entanto, na análise realizada neste trabalho, constata-se que todos os 50 Elemento PCi Tipo Variável ML j Variável NC(PCi , ML j ) Função Significado Princípio Constitucional. O subscrito assume valores i = 1, ..., 5, conforme o princípio constitucional. O princípio da Legalidade corresponde ao valor 1 (um), os demais princípios correspondem aos valores numéricos inteiros seguintes até o valor máximo de 5 (cinco), que corresponde ao princípio da Eficiência, conforme seqüência indicada no início do capítulo 3. Modelo de Licença de Software Livre. O subscrito assume valores j = 1, ..., 5, conforme o modelo de licença. O modelo GPL versão 3 corresponde ao valor 1 (um), as demais correspondem aos valores numéricos inteiros seguintes até o valor 5 (cinco), que corresponde ao modelo Apache License versão 2, conforme seqüência indicada na seção 4.3. Indica o Nível de Conformidade de um Modelo de Licença ML j ao Princípio Constitucional PCi . Os subscritos i e j assumem os valores descritos nos itens anteriores, ou seja, valores entre 1 (um) e 5 (cinco), inclusive. Para cada permutação envolvendo um princípio constitucional e um modelo de licença, a função indicará um valor numérico conforme abaixo: • 0 (zero): Nenhuma das características do princípio constitucional PCi é atendida no modelo de licença ML j , significando que este é Não Conforme ; • 1 (um): Apenas uma das características do princípio constitucional PCi é atendida no modelo de licença ML j , significando que este é Parcialmente Conforme; ou • 2 (dois): Ambas as características do princípio constitucional PCi são atendidas no modelo de licença ML j , significando que este é conforme. Tabela 4.2: Definição das variáveis e funções da métrica APC. 51 modelos de licenças analisados atendem a pelos menos uma das características dos cinco princípios constitucionais considerados. Em outras palavras, nenhum modelo de licença foi considerado Não Conforme. 4.3 Análise dos modelos de licenças Após a definição dos atributos e métricas, apresenta-se a análise das licenças conforme estudo realizado no capítulo 2. Para tanto, são consideradas as versões mais recentes de cada licença analisada, visto que, conforme estudado, as versões mais recentes são uma evolução das versões anteriores. 4.3.1 GPL Versão 3 4.3.1.1 Legalidade Quanto ao princípio da Legalidade, a versão 3 da Gnu General Public License foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Legitimidade: Atende completamente, por ser um objeto de licença que permite o uso de programas de computadores. • Licitude: Atende completamente, por respeitar as condições de uso e comercialização dos termos da Lei 9.609. 4.3.1.2 Impessoalidade Quanto ao princípio da Impessoalidade, a versão 3 da Gnu General Public License foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Igualdade: Atende completamente, por abordar de forma igualitária os usuários e desenvolvedores de programas de computadores registrados sob os termos da licença. • Coletividade: Atende completamente, pois prevê o compartilhamento dos programas registrados sob seus termos, disponibilizando-os para o acesso de todos que tenha interesse em usá-lo. 52 4.3.1.3 Moralidade Quanto ao princípio da Moralidade, a versão 3 da Gnu General Public License foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Honestidade: Atende completamente. O ato de registrar programas sob os termos da licença, favorece o acesso ao conhecimento. • Ética: Atende completamente, pois prevê o compartilhamento do programa, favorecendo o esforço coletivo do desenvolvimento para os programas disponibilizados sob seus termos. 4.3.1.4 Publicidade Quanto ao princípio da Publicidade, a versão 3 da Gnu General Public License foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Transparência: Atende completamente. Para que seja concreto o ato de compartilhamento faz-se necessário o acesso ao código fonte do sistema, e isso está disposto nos termos de número 3 e 4 da licença. • Acessibilidade: Atende completamente, visto que nos termos de número 5 e 6, que tratam as condições de fornecimento do código fonte para acesso de terceiro, são definidos os critérios de cópia e distribuição. 4.3.1.5 Eficiência Quanto ao princípio da Eficiência, a versão 3 da Gnu General Public License foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Menores custos: Atende completamente. A GPLv3 considera a possibilidade de cobrança em dinheiro pelo ato físico da transferência de cópias do programa, mas não pelo direito ao uso do mesmo. Essa possibilidade pode gerar redução de custos ao optar pelo uso de uma solução livre. • Maiores benefícios: Atende completamente, pois institui livre acesso ao código fonte, possibilitando seu aperfeiçoamento descritos nos termos de número 1 e 2 da licença GPL, o que pode garantir domínio e autonomia tecnológica, . 53 4.3.2 Lesser General Public License 3 Conforme visto no capítulo 2, a LGPL v3 incorpora os termos da terceira versão da GNU General Public License, e portanto, o resultado da análise da LGPL foi equivalente ao resultado da análise da GPLv3. Para os princípios da Legalidade, Impessoalidade, Moralidade, Publicidade e Eficiência, o resultado foi a total conformidade da licença. 4.3.3 BSD License 4.3.3.1 Legalidade Quanto ao princípio da Legalidade, a licença BSD foi classificada com a métrica parcialmente conforme. Para tanto, verifica-se: • Legitimidade: Atende completamente, por ser um objeto de licença que permite o uso de programas de computadores, e portanto, está prescrito em Lei. • Licitude: Não atende, por desrespeitar as condições da exigência da garantia, para os casos de comercialização do programa, referentes aos termos da Lei 9.609. 4.3.3.2 Impessoalidade Quanto ao princípio da Impessoalidade, a licença BSD foi classificada com a métrica parcialmente conforme. Para tanto, verifica-se: • Igualdade: Não atende, visto que embora os direitos ao uso, cópia e distribuição sejam aplicados a usuários e desenvolvedores, seus termos não deixam claro a igualdade entre esses sem que haja distinção de grupos. • Coletividade: Atende completamente, pois prevê o compartilhamento dos programas, códigos e documentações registrados sob seus termos, conforme descrito nas três primeiras cláusulas da licença. 4.3.3.3 Moralidade Quanto ao princípio da Moralidade, a licença BSD foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: 54 • Honestidade: Atende completamente. Pois conforme estudo da licença no capítulo 2, o registro dos programas sob seus termos garante o acesso ao conhecimento. • Ética: Atende completamente, visto que as condições de copyright dessa licença institui o compartilhamento do programa que está sob seus termos, favorecendo a coletividade e a disseminação de conhecimento. 4.3.3.4 Publicidade Quanto ao princípio da Publicidade, a licença BSD foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Transparência: Atende completamente, visto que o acesso ao código fonte do sistema resulta na transparência para o usuário que por sua vez poderá conhecer quais funções o programa executará para emitir o resultado esperado. • Acessibilidade: Atende completamente, visto que essa característica é tão forte quanto a acessibilidade de softwares registrados em domínio público, devido as poucas exigências que a BSD faz para que usuários e desenvolvedores tenham acesso ao programa, executável e fontes. 4.3.3.5 Eficiência Quanto ao princípio da Eficiência, a licença BSD foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Menores custos: Atende completamente, embora os termos da BSD não restrinja o uso comercial dos programas registrados, essa possibilidade pode gerar redução de custos, quando se dá a preferência ao uso de uma solução livre. • Maiores benefícios: Atende completamente, visto que é notável o benefício do acesso ao código fonte e a possibilidade de aperfeiçoá-lo descritos nas cláusulas da licença, o que implica no domínio e na autonomia tecnológica. 4.3.4 MIT License 4.3.4.1 Legalidade Quanto ao princípio da Legalidade, a licença MIT foi classificada com a métrica parcialmente conforme. Para tanto, verifica-se: 55 • Legitimidade: Atende completamente, por ser um objeto de licença que permite o uso de programas de computadores, e portanto, está prescrito em Lei. • Licitude: Não atende, por desrespeitar as condições da exigência da garantia, para os casos de comercialização do programa, referentes ao Art. 7 da Lei 9.609. 4.3.4.2 Impessoalidade Quanto ao princípio da Impessoalidade, a licença MIT foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Igualdade: Atende completamente, visto que no primeiro parágrafo da licença MIT, o qual determina que a permissão de uso, cópia e distribuição é concedida a qualquer pessoa, sem que haja discriminação para isso. Dessa forma, todos são iguais perante os termos desta licença. • Coletividade: Atende completamente, pois concede as permissões de uso, cópia, distribuição, sublicenciamento e até mesmo, vender o programa licenciado sob seus termos, atos que incentivam a coletividade. Essas permissões são observadas conforme o primeiro parágrafo da licença MIT. 4.3.4.3 Moralidade Quanto ao princípio da Moralidade, a licença MIT foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Honestidade: Atende completamente. Pois conforme suas condições de acessibilidade, instituídas em seu primeiro parágrafo, o registro dos programas sob seus termos garante o acesso ao conhecimento. • Ética: Atende completamente, visto que suas condições de compartilhamento, favorecem a coletividade e a disseminação de conhecimento. 4.3.4.4 Publicidade Quanto ao princípio da Publicidade, a licença MIT foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: 56 • Transparência: Atende completamente, visto que no primeiro parágrafo da licença, ao instituir o fornecimento dos fontes e documentos de um programa, a característica da transparência está presente, pois permite ao usuário conhecer as funções básicas para as saídas do programa. • Acessibilidade: Atende completamente, conforme primeiro parágrafo, o qual institui que devem ser concedidos, para os programas licenciados sob seus termos, os softwares e os arquivos de documentações associados a esse, sem limites de uso, modificação e distribuição, tonando acessível o conhecimento existente no programa. 4.3.4.5 Eficiência Quanto ao princípio da Eficiência, a licença MIT foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Menores custos: Atende completamente, embora bão sejam observadas restrições quanto ao uso comercial de programas nos termos da MIT, existe a possibilidade de redução de custos, quando se dá a preferência ao uso de uma solução livre registrada sob a licença MIT, visto que é livre o uso dessas soluções, devendo estar disponibilizadas para acesso e redistribuição. • Maiores benefícios: Atende completamente, visto que todo o conhecimento envolvido no desenvolvimento do programa, além do código fonte, deve ser disponibilizado, de acordo com o primeiro parágrafo da licença, implicando no domínio e na autonomia tecnológica. 4.3.5 Apache License Versão 2.0 4.3.5.1 Legalidade Quanto ao princípio da Legalidade, a versão 2 da licença Apache foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Legitimidade: Atende completamente, por ser um objeto de licença que permite o uso de programas de computadores, prescrito em Lei. • Licitude: Atende completamente, por respeitar as condições de uso e comercialização dos termos da Lei 9.609, referentes a garantia, conforme termos de número 7, 8 e 9 da licença. 57 4.3.5.2 Impessoalidade Quanto ao princípio da Impessoalidade, a versão 2 da Licença Apache foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Igualdade: Atende completamente, por abordar de forma igualitária os usuários e desenvolvedores de programas de computadores registrados sob os termos da licença, intitulados como Contribuintes e Licenciantes. • Coletividade: Atende completamente, conforme previsto nos termos de número 4 e 5 da licença, são evidenciadas as características de compartilhamento do conhecimento, favorecendo a acessibilidade à informação e o desenvolvimento coletivo. 4.3.5.3 Moralidade Quanto ao princípio da Moralidade, a versão 2 da Licença Apache foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Honestidade: Atende completamente. O ato de registrar programas sob os termos da licença favorece o acesso ao conhecimento devido aos termos que instituem o uso, modificação e distribuição das soluções de softwares registradas. • Ética: Atende completamente, pois prevê o compartilhamento do programa, favorecendo o esforço coletivo do desenvolvimento para os programas disponibilizados sob seus termos. 4.3.5.4 Publicidade Quanto ao princípio da Publicidade, a versão 2 da Licença Apache foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Transparência: Atende completamente, visto que ao fornecer os fontes e documentos de um programa, o fornecedor possibilita que o usuário conheça as funções as quais o programa executará. • Acessibilidade: Atende completamente, é instituído para os programas registrados sob seus termos, a disponibilidade dos documentos e fontes do programa, de forma que fiquem acessíveis para outros desenvolvedores e usuários. 58 4.3.5.5 Eficiência Quanto ao princípio da Eficiência, a versão 2 da Licença Apache foi classificada com a métrica totalmente conforme. Para tanto, verifica-se: • Menores custos: Atende completamente. Embora o último termo da licença Apache permita a cobrança de taxas por terceiros para fornecimento de suportes ou garantias aos softwares registrados sob seus termos, os programas licenciados devem ser disponibilizados, respeitando as condições de uso e distribuição do termo de número 4 da licença. • Maiores benefícios: Atende completamente, pois institui o livre acesso ao código fonte, o que pode garantir domínio e autonomia tecnológica. 4.4 Resumo do Capítulo A Tabela 4.3 sintetiza toda a análise apresentada na seção 4.3 apresentado, para cada modelo de licença, o grau de conformidade em relação aos princípios constitucionais. GPLv3 LGPLv3 BSD MIT Apache Legalidade Totalmente Conforme Totalmente Conforme Parcialmente Conforme Parcialmente Conforme Totalmente Conforme Impessoalidade Totalmente Conforme Totalmente Conforme Parcialmente Conforme Totalmente Conforme Totalmente Conforme Moralidade Totalmente Conforme Totalmente Conforme Totalmente Conforme Totalmente Conforme Totalmente Conforme Publicidade Totalmente Conforme Totalmente Conforme Totalmente Conforme Totalmente Conforme Totalmente Conforme Eficiência Totalmente Conforme Totalmente Conforme Totalmente Conforme Totalmente Conforme Totalmente Conforme Tabela 4.3: Tabela de síntese da análise das licenças A Tabela 4.4 sintetiza o resultado da métrica aplicado aos modelos de licenças e princípios constitucionais. Apesar da métrica APC definir um conjunto de possíveis licenças, na coluna rotulada por sua sigla são apresentados os valores numéricos referentes ao somatório dos níveis de conformidade dos modelos de licença em relação aos princípios constitucionais. 59 Com isso, observa-se que o conjunto de modelos de licença definido pela métrica APC é composto pela GPLv3, LGPLv3 e Apache. GPLv3 LGPLv3 BSD MIT Apache Legalidade 2 2 1 1 2 Impessoalidade 2 2 1 2 2 Moralidade 2 2 2 2 2 Publicidade 2 2 2 2 2 Eficiência 2 2 2 2 2 APC 10 10 8 9 10 Tabela 4.4: Tabela de síntese da métrica APC 4.5 Resumo do Capítulo Neste capítulo foi possível analisar a aderencia das principais licenças de software livre quanto aos princípios constitucionais administrativos. Para essa análise foram consideradas as cinco licenças de Software Livre mais utilizadas no mundo e que são compatíveis com a GNU GPL conforme definido pela Free Software Foundations e Open Source Iniciative. Foi considerada como métrica para a análise, a Aderência aos Princípios Constitucionais (APC), mensurada conforme atendimento das características de cada princípio constitucional, sendo esses; Legalidade, Impessoalidade, Moralidade, Publicidades e Eficiência. Como resultado, verificou-se a existência de três licenças de software livre que são totalmente compatíveis com os cinco princípios constitucionais administrativos. 60 Capítulo 5 Conclusões e Trabalhos Futuros Quando o termo Software Livre é tratado na Administração Pública (AP) é importante ressaltar as prerrogativas dos direitos de executar, copiar, modificar e redistribuir que esse termo detém e que, por consequência, a AP passa a possuir. Nesse sentido, a AP representa um duplo papel na sociedade, tornando-se, ao mesmo tempo, paciente e agente no processo de evolução e produção do conhecimento. São os direitos de executar e copiar que permitem à AP tornar-se um usuário de uma determinada solução livre, e, por sua vez, os direitos a redistribuição e modificação permitem à AP assumir uma posição relevante no processo de difusão do conhecimento tecnológico, que reflete na acessibilidade e descentralização desse conhecimento. A Administração Pública não segue regras específicas quanto ao desenvolvimento de soluções de software, bem como seu compartilhamento ou distribuição. Porém, como visto anteriormente, toda decisão governamental está vinculada aos princípios constitucionais. Nesse sentido, foram selecionados aqueles que regem a AP e que se encontram descritos no Art. 37 da Constituição Federal para análise da adequação das licenças de software livre mais utilizadas no mundo. As questões desenvolvidas nesta pesquisa têm o objetivo de relacionar os Princípios Constitucionais Administrativos com as principais licenças de Software Livre, evidenciando sua adequação aos atos administrativos que, por sua vez, são norteados por esses princípios. Dessa forma, são enumerados aspectos bastante relevantes, a saber: 1. Existe uma diferença sutil nos conceitos de software livre, aberto e público. O software público é mais abrangente que os modelos de software livre e aberto, que por sua vez são incorporados pela AP, no momento em que essa passa a utilizar de uma política de compartilhamento de soluções de software; 2. Quando o desenvolvimento de software na AP é alinhado aos princípios de um software livre, essa passa a exercer duas funções distintas: a de usuário e a de contribuinte; 3. Para que a Administração Pública exerça o papel de contribuinte no uso do software livre, é necessário alinhar essa execução aos Princípios Constitucionais Administrativos, mas não limitando-se a eles, visto que os atos do Administrador Público são geridos por esses princípios; 4. O uso de software não só pela Administração Pública, como também por toda a pessoa física ou jurídica no território nacional, dar-se-á por meio de uma Licença de Uso, que por sua vez, deve respeitar os termos da Lei do Software Brasileira; 5. A análise das cinco principais licenças de software livre, mais utilizadas no mundo, revelou um forte alinhamento aos Princípios Constitucionais Administrativos; 6. A General Public License, Lesser General Public License, tal como a Apache License, foram as licenças que tiveram uma melhor adequação aos Princípios Constitucionais Administrativos. 5.1 Conclusões Conforme os pontos a cima, observa-se que são sadios, para os atos administrativos, a implantação e o incentivo ao uso do software público, o qual incorpora o conceito de software livre, visto que existem pelo menos três licenças de software livre que são totalmente compatíveis com os princípios constitucionais administrativos, que regem os atos públicos. Uma Política de Software Público na AP implica em uma mudança do paradigma de meros usuários da tecnologia, passando a desenvolvê-la e usá-la para o bem de todos. O Estado do Ceará, particularmente a Administração Pública, precisa 62 dirimir a dependência tecnológica e desenvolver tecnologia, ao invés de continuar refém de produtos e modelos de negócios abusivos, que na maioria das vezes são impostos no mercado nacional pela indústria de software internacional, tratando essa ação como uma diretriz estratégica dentro da AP. A estruturação de uma Política de Software Público para o Estado do Ceará pode beneficiar a indústria local de software, bem como pequenos empresários, além de fortalecer o desenvolvimento colaborativo, a redução de custos com aquisições de licenças de software e a implementação de projetos sociais com foco em inclusão digital. Além disso, observa-se que são razões para a implantação da Política de Software Público no Poder Executivo Estadual: • Usar o software para qualquer finalidade; • Acessar o código fonte, permitindo a evolução e modificação, sem restrições; • Copiar e Executar o software sem que haja limite para isso; • Poder distribuir o programa entre entidades da esfera municipal, estadual e federal, sem violar, é claro, essas liberdades que todos têm direito; • Ter software de qualidade a um custo baixo ou nulo; • Estar livre das imposições das licenças de softwares proprietários; • Ser independente de novas versões com valores abusivos que apresentam incompatibilidade com versões anteriores do mesmo software; • Dirimir ou extinguir a pirataria dentro dos órgão/entidades governamentais; • Apoiar e incentivar o desenvolvimento de tecnologia local, e; • Interagir e compartilhar soluções com comunidades físicas ou virtuais; 5.2 Trabalhos Futuros O desenvolvimento deste trabalho será utilizado pelo Grupo de Trabalho de Política de Software Público, coordenado pela Secretaria do Planejamento e Gestão 63 por meio da Coordenadoria de Estratégias da Tecnologia da Informação e Comunicação, que tem o objetivo de elaborar a Política de Software Público no Poder Executivo do Estado do Ceará. Espera-se, para o segundo semestre do ano de 2010, a realização de um plano de trabalho para o Grupo de Política de Software Público, uma análise detalhada da adequação do uso de software público na AP, vislumbrando não somente o Art 37 da Constituição Nacional, como também outros artigos de direito. Após o resultado deste estudo, o GT iniciará uma pesquisa dos casos de sucesso de implementação de políticas de software público, com a finalidade de elaborar uma perspectiva do projeto no Estado do Ceará e posteriormente definirá as diretrizes que devem gerir a política de software público para o Estado. Vale ressaltar que o resultado desta pesquisa será analisado junto ao GT de Software Público com o objetivo de definir o modelo de licença a ser utilizado para os programas desenvolvidos dentro dos órgãos / entidades estaduais. Essa definição caberá ao GT, que contará com a participação de representantes das assessorias jurídicas dos órgãos governamentais. Após a análise do trabalho, é possível que o Estado aprecie a ideia de elaboração de uma licença de software livre própria ou adote uma das licenças estudas. Essas decisões serão de responsabilidade do GT de Políticas de Software Público do Estado do Ceará. 64 Referências Bibliográficas APACHE Software Foundation. 2010. Disponível em: <http://www.apache.org/licenses/>. Acesso em: Maio de 2010. BALINSK, R. Filtragens de informações no ambiente do Direto. 87 f. Dissertação (Mestrado em Informática) — Universidade Federal do Rio Grande do Sul, Porto Alegre, 2002. BRANCO, M. D. O Software Livre na Administração Pública Brasileira. [S.l.], 2004. BRASIL. Lei no 9.609, de 19 de fevereiro de 1998. dispõe sobre a proteção da propriedade intelectual de programa de computador, sua comercialização no país, e dá outras providências. Diário Oficial da União, Brasília, DF, 16 fev. 1998. CAMPEBELL-KELLY, M. Historical reflections: Will the future of software be open source? ACM, Communications of the ACM, New York, NY, USA, v. 51, n. 10, p. 21–23, 2008. CARVALHO, K. G. Direito Constitucional Didático. Belo Horizonte - MG: Del Rey, 2003. ISBN 8573086610. CASTRO, P. F. D. de (Ed.). Impacto do Software Livre e de Código Aberto (SL/CA) na Indústria de Software do Brasil. Brasil: Softex, MCT, 2005. CEARA. Decreto no 29.225, de 11 de abril 2008. dispõe sobre a instituição do uso de software livre e estabelece as diretrizes da política de software livre e do comitê gestor de software livre para o governo do estado do ceará.- série 2, ano xi no 068, caderno 1/2. DOE — Diário Oficial do Estado, Fortaleza, CE, p. 1–3, 1998. FABER, T. Stradivarius: cinco violinos, um violoncelo e três séculos de perfeição. Rio de Janeiro: Record, 2006. FALCAO, J.; LEMOS, R.; FERRAZ, T. S. Direito do Software Livre e a Administração Pública. Rio de Janeiro: Lumen Juris, 2007. 65 FREITAS, C. S.; MEFFE, C. A Produção Compartilhada de Conhecimento: O software público brasileiro. Informática Pública, Informática Pública, Brasília, DF, BR, v. 10, n. 2, p. 37–52, 2008. Acesso em: Março de 2010. FSF - Free Sotware Foundation. 2010. Disponível em: <http://www.fsf.org/>. Acesso em: Maio de 2010. GNU Project. 2010. Disponível em: <http://www.gnu.org/licenses/license-list.html>. Acesso em: Maio de 2010. HENDRIKSEN, E. S.; BREDA, M. V. Teoria da Contabilidade. São Paulo: Atlas, 2007. MEFFE, C. A Experiência do Software Público. [S.l.], 2007. MEFFE, C. A consolidação do software público em 2008. ComputerWorld, Setembro 2008. MEIRELLES, H. L. Direito Administrativo Brasileiro. São Paulo: Malheiros Editores, 2007. ISBN 9788574207926. OPEN Source Iniciative. 2010. Disponível em: <http://www.opensource.org/>. Acesso em: Março. 2010. RAYMOND, E. S. The Cathedral and The Bazaar. [S.l.]: Eric Raymond, 1998. SABINO, V.; KON, F. Licenças de Software Livre - História e Características. São Paulo, Março 2009. SILVA, J. A. da. Curso de direito constitucional positivo. São Paulo: Malheiros Editores, 2005. ISBN 85-7420-686-5. SILVA, S. A. da. Software Livre: A luta pela liberdade do conhecimento. São Paulo: Fundação Perseu Abramo, 2004. SOFTWARE Publico Brasileiro. 2010. Disponível em: <http://www.softwarepublico.gov.br/>. Acesso em: Maio de 2010. SOMMERVILLE, I. Engenharia de Software. São Paulo: Pearson Addison, 2007. STALLMAN, R. M. Free Software, Free Society: Selected essays of richard m. stallman. Boston, MA, USA: Free Software Foundation, 2002. 66 Anexo A General Public License versão 1 c 1989 Free Software Foundation, Inc. Copyright 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The license agreements of most software companies try to keep users at the mercy of those companies. By contrast, our General Public License is intended to guarantee your freedom to share and change free software–to make sure the software is free for all its users. The General Public License applies to the Free Software Foundation’s software and to any other program whose authors commit to using it. You can use it for your programs, too. When we speak of free software, we are referring to freedom, not price. Specifically, the General Public License is designed to make sure that you have the freedom to give away or sell copies of free software, that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For 67 example, if you distribute copies of a such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must tell them their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author’s protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors’ reputations. The precise terms and conditions for copying, distribution and modification follow. G NU G ENERAL P UBLIC L ICENSE T ERMS AND C ONDITIONS FOR C OPYING , D ISTRIBUTTION AND M ODIFICATION 0.This License Agreement applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program"means either the Program or any work containing the Program or a portion of it, either verbatim or with modifications. Each licensee is addressed as "you". 1.You may copy and distribute verbatim copies of the Program’s source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this General Public License and to the absence of any warranty; and give any other recipients of the Program a copy of this General Public License along with the Program. You may charge a fee for the physical act of transferring a copy. 2.You may modify your copy or copies of the Program or any portion of it, and copy and distribute such modifications under the terms of Paragraph 1 above, provided that you also do the following: (a)cause the modified files to carry prominent notices stating that you changed the files and the date of any change; and 68 (b)cause the whole of any work that you distribute or publish, that in whole or in part contains the Program or any part thereof, either with or without modifications, to be licensed at no charge to all third parties under the terms of this General Public License (except that you may choose to grant warranty protection to some or all third parties, at your option). (c)If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the simplest and most usual way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this General Public License. (d)You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. Mere aggregation of another independent work with the Program (or its derivative) on a volume of a storage or distribution medium does not bring the other work under the scope of these terms. 3.You may copy and distribute the Program (or a portion or derivative of it, under Paragraph 2) in object code or executable form under the terms of Paragraphs 1 and 2 above provided that you also do one of the following: (a)accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Paragraphs 1 and 2 above; or, (b)accompany it with a written offer, valid for at least three years, to give any third party free (except for a nominal charge for the cost of distribution) a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Paragraphs 1 and 2 above; or, (c)accompany it with the information you received as to where the corresponding source code may be obtained. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form alone.) Source code for a work means the preferred form of the work for making modifications to it. For an executable file, complete source code means all the source code for all modules it contains; but, as a special exception, it need not 69 include source code for modules which are standard libraries that accompany the operating system on which the executable file runs, or for standard header files or definitions files that accompany that operating system. 4.You may not copy, modify, sublicense, distribute or transfer the Program except as expressly provided under this General Public License. Any attempt otherwise to copy, modify, sublicense, distribute or transfer the Program is void, and will automatically terminate your rights to use the Program under this License. However, parties who have received copies, or rights to use copies, from you under this General Public License will not have their licenses terminated so long as such parties remain in full compliance. 5.By copying, distributing or modifying the Program (or any work based on the Program) you indicate your acceptance of this license to do so, and all its terms and conditions. 6.Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients’ exercise of the rights granted herein. 7.The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of the license which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the license, you may choose any version ever published by the Free Software Foundation. 8.If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. 70 N O WARRANTY 9.B ECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE , THERE IS NO WARRANTY FOR THE PROGRAM , TO THE EXTENT PERMITTED BY APPLICABLE LAW. E XCEPT WHEN OTERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND / OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS ” WITHOUT WARRANTY OF ANY KIND , EITHER EXPRESSED OR IMPLIED , INCLUDING , BUT NOT LIMITED TO , THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE . T HE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU . S HOLD THE PROGRAM PROVE DEFECTIVE , YOU ASSUME THE COST OF ALL NECESSARY SERVICING , REPAIR OR CORRECTION . 10.I N NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITTING WILL ANY COPYRIGHT HOLDER , OR ANY OTHER PARTY WHO MAY MODIFY AND / OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE , BE LIABLE TO YOU FOR DAMAGES , INCLUDING ANY GENERAL , SPECIAL , INCIDENTAL OR CONSEQUENTIAL DAMAGES ARIGING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (I NCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS ), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES . E ND OF T ERMS AND C ONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to humanity, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright"line and a pointer to where the full notice is found. 71 one line to give the program’s name and a brief idea of what it does. Copyright (C) 19yy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19xx name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type ‘show w’. This is free software, and you are welcome to redistribute it under certain conditions; type ‘show c’ for details. The hypothetical commands show w and show c should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than show w and show c; they could even be mouse-clicks or menu items–whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer"for the program, if necessary. Here a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program ‘Gnomovision’ (a program to direct compilers to make passes at assemblers) written by James Hacker. 72 <signature of Ty Coon>, 1 April 1989 Ty Coon, President of Vice That’s all there is to it! 73 Anexo B General Public License versão 2 c 1989, 1991 Free Software Foundation, Inc. Copyright 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software—to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation’s software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. 74 For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author’s protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors’ reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone’s free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. T ERMS AND C ONDITIONS F OR C OPYING , D ISTRIBUTION AND M ODIFICATION 0.This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The “Program”, below, refers to any such program or work, and a “work based on the Program” means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term “modification”.) Each licensee is addressed as “you”. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1.You may copy and distribute verbatim copies of the Program’s source code as you receive it, in any medium, provided that you conspicuously and appropriately 75 publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2.You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: (a)You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. (b)You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. (c)If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with 76 the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3.You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: (a)Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, (b)Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, (c)Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4.You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 77 5.You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6.Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients’ exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7.If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 78 8.If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9.The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and “any later version”, you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10.If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. N O WARRANTY 11.B ECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE , THERE IS NO WARRANTY FOR THE PROGRAM , TO THE EXTENT PERMITTED BY APPLICABLE LAW. E XCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND / OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS ” WITHOUT WARRANTY OF ANY KIND , EITHER EXPRESSED OR IMPLIED , INCLUDING , BUT NOT LIMITED TO , THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE . T HE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU . S HOULD THE PROGRAM PROVE DEFECTIVE , YOU ASSUME THE COST OF ALL NECESSARY SERVICING , REPAIR OR CORRECTION . 12.I N NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER , OR ANY OTHER PARTY WHO 79 MAY MODIFY AND / OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE , BE LIABLE TO YOU FOR DAMAGES , INCLUDING ANY GENERAL , SPECIAL , INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM ( INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS ), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES . E ND OF T ERMS AND C ONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. one line to give the program’s name and a brief idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 80 Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) yyyy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type ‘show w’. This is free software, and you are welcome to redistribute it under certain conditions; type ‘show c’ for details. The hypothetical commands show w and show c should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than show w and show c; they could even be mouse-clicks or menu items—whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a “copyright disclaimer” for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program ‘Gnomovision’ (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. 81 Anexo C General Public License versão 3 c 2007 Free Software Foundation, Inc. http://fsf.org/ Copyright Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program–to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers’ and authors’ protection, the GPL clearly explains that there is no warranty for this free software. For both users’ and authors’ sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users’ freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. T ERMS AND C ONDITIONS 0.Definitions. “This License” refers to version 3 of the GNU General Public License. “Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. “The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. 83 To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. A “covered work” means either the unmodified Program or a work based on the Program. To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1.Source Code. The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter 84 used to run it. The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work’s System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2.Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3.Protecting Users’ Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright 85 treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work’s users, your or third parties’ legal rights to forbid circumvention of technological measures. 4.Conveying Verbatim Copies. You may convey verbatim copies of the Program’s source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5.Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: (a)The work must carry prominent notices stating that you modified it, and giving a relevant date. (b)The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. (c)You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. (d)If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. 86 A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation’s users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6.Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: (a)Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. (b)Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. (c)Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. (d)Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is 87 available for as long as needed to satisfy these requirements. (e)Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. “Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification 88 itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7.Additional Terms. “Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: (a)Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or (b)Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or (c)Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or (d)Limiting the use for publicity purposes of names of licensors or authors of the material; or (e)Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or (f)Requiring indemnification of licensors and authors of that material by anyone 89 who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8.Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9.Acceptance Not Required for Having Copies. 90 You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10.Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party’s predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11.Patents. A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor’s “contributor version”. A contributor’s “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner 91 consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor’s essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient’s use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily 92 for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12.No Surrender of Others’ Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13.Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14.Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU 93 General Public License can be used, that proxy’s public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15.Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16.Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17.Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. E ND OF T ERMS AND C ONDITIONS 94 How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. <one line to give the program’s name and a brief idea of what it does.> Copyright (C) <textyear> <name of author> This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: <program> Copyright (C) <year> <name of author> This program comes with ABSOLUTELY NO WARRANTY; for details type ‘show w’. This is free software, and you are welcome to redistribute it under certain conditions; type ‘show c’ for details. The hypothetical commands show w and show c should show the appropriate parts of the General Public License. Of course, your program’s commands might be different; for a GUI interface, you would use an “about box”. You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For 95 more information on this, and how to apply and follow the GNU GPL, see http://www.gnu.org/licenses/. The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read http://www.gnu.org/philosophy/why-not-lgpl.html. 96 Anexo D Gnu Lesser General Public License versão 2.1 c 1991, 1999 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Copyright Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software–to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages–typically libraries–of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author’s reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser"General Public License because it does Less to protect 98 the user’s freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users’ freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library"and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. G NU L ESSER G ENERAL P UBLIC L ICENSE T ERMS AND C ONDITIONS FOR COPYING , DISTRIBUTION AND MODIFICATION 0.This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library"means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has 99 been distributed under these terms. A "work based on the Library"means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code"for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1.You may copy and distribute verbatim copies of the Library’s complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2.You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: (a)The modified work must itself be a software library. (b)You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. (c)You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. (d)If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function 100 or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3.You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4.You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding 101 machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5.A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library"with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library"uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6.As an exception to the Sections above, you may also combine or link a "work that uses the Library"with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer’s own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you 102 must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: (a)Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) (b)Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user’s computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. (c)Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. (d)If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. (e)Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library"must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 103 7.You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: (a)Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. (b)Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8.You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9.You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10.Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients’ exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11.If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License 104 and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12.If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13.The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14.If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for 105 permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. 15.B ECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE , THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITED BY APPLICABLE LAW. E XCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND / OR OTHER PARTIES PROVIDE THE LIBRARY “AS IS ” WITHOUT WARRANTY OF ANY KIND , EITHER EXPRESSED OR IMPLIED , INCLUDING , BUT NOT LIMITED TO , THE IMPLIED WARRANTIES OS MERCHATABILITY AND FITNESS FOR A PARTICULAR PURPOSE . T HE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU . S HOULD THE LIBRARY PROVE DEFECTIVE , YOU ASSUME THE COST OF ALL NECESSARY SERVICING , REPAIR OR CORRECTION . 16.I N NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER , OR ANY OTHER PARTY WHO MAY MODIFY AND / OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE , BE LIABLE TO YOU FOR DAMAGES , INCLUDING ANY GENERAL , SPECIAL , INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (I NCLUDING BUT NOT LIMITED TO LOSS OF DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE ), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES E ND OF T ERMS AND C ONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. 106 <one line to give the library’s name and a brief idea of what it does.> Copyright (C) <textyear> <name of author> This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer"for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library ‘Frob’ (a library for tweaking knobs) written by James Random Hacker. <signature of Ty Coon>, 1 April 1990 Ty Coon, President of Vice That’s all there is to it! 107 USA Anexo E Gnu Lesser General Public License versão 3 c 2007 Free Software Foundation, Inc. http://fsf.org/ Copyright Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. This version of the GNU Lesser General Public License incorporates the terms and conditions of version 3 of the GNU General Public License, supplemented by the additional permissions listed below. 0.Additional Definitions. As used herein, "this License"refers to version 3 of the GNU Lesser General Public License, and the "GNU GPL"refers to version 3 of the GNU General Public License. "The Library"refers to a covered work governed by this License, other than an Application or a Combined Work as defined below. An "Application"is any work that makes use of an interface provided by the Library, but which is not otherwise based on the Library. Defining a subclass of a class defined by the Library is deemed a mode of using an interface provided by the Library. A "Combined Work"is a work produced by combining or linking an Application with the Library. The particular version of the Library with which the Combined Work was made is also called the "Linked Version". The "Minimal Corresponding Source"for a Combined Work means the Corresponding Source for the Combined Work, excluding any source code for portions of the Combined Work that, considered in isolation, are based on the Application, and not on the Linked Version. The "Corresponding Application Code"for a Combined Work means the object code and/or source code for the Application, including any data and utility programs needed for reproducing the Combined Work from the Application, but excluding the System Libraries of the Combined Work. 1.Exception to Section 3 of the GNU GPL. You may convey a covered work under sections 3 and 4 of this License without being bound by section 3 of the GNU GPL. 2.Conveying Modified Versions. If you modify a copy of the Library, and, in your modifications, a facility refers to a function or data to be supplied by an Application that uses the facility (other than as an argument passed when the facility is invoked), then you may convey a copy of the modified version: (a)under this License, provided that you make a good faith effort to ensure that, in the event an Application does not supply the function or data, the facility still operates, and performs whatever part of its purpose remains meaningful, or (b)under the GNU GPL, with none of the additional permissions of this License applicable to that copy. 3.Object Code Incorporating Material from Library Header Files. The object code form of an Application may incorporate material from a header file that is part of the Library. You may convey such object code under terms of your choice, provided that, if the incorporated material is not limited to numerical parameters, data structure layouts and accessors, or small macros, inline functions and templates (ten or fewer lines in length), you do both of the following: (a)Give prominent notice with each copy of the object code that the Library is used in it and that the Library and its use are covered by this License. (b)Accompany the object code with a copy of the GNU GPL and this license document. 4.Combined Works. You may convey a Combined Work under terms of your choice that, taken together, effectively do not restrict modification of the portions of the Library contained in the 109 Combined Work and reverse engineering for debugging such modifications, if you also do each of the following: (a)Give prominent notice with each copy of the Combined Work that the Library is used in it and that the Library and its use are covered by this License. (b)Accompany the Combined Work with a copy of the GNU GPL and this license document. (c)For a Combined Work that displays copyright notices during execution, include the copyright notice for the Library among these notices, as well as a reference directing the user to the copies of the GNU GPL and this license document. (d)Do one of the following: i.Convey the Minimal Corresponding Source under the terms of this License, and the Corresponding Application Code in a form suitable for, and under terms that permit, the user to recombine or relink the Application with a modified version of the Linked Version to produce a modified Combined Work, in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source. ii.Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (a) uses at run time a copy of the Library already present on the user’s computer system, and (b) will operate properly with a modified version of the Library that is interface-compatible with the Linked Version. (e)Provide Installation Information, but only if you would otherwise be required to provide such information under section 6 of the GNU GPL, and only to the extent that such information is necessary to install and execute a modified version of the Combined Work produced by recombining or relinking the Application with a modified version of the Linked Version. (If you use option 4d0, the Installation Information must accompany the Minimal Corresponding Source and Corresponding Application Code. If you use option 4d1, you must provide the Installation Information in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source.) 5.Combined Libraries. You may place library facilities that are a work based on the Library side by side in a single library together with other library facilities that are not Applications and are not covered by this License, and convey such a combined library under terms of your choice, if you do both of the following: 110 (a)Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities, conveyed under the terms of this License. (b)Give prominent notice with the combined library that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 6.Revised Versions of the GNU Lesser General Public License. The Free Software Foundation may publish revised and/or new versions of the GNU Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library as you received it specifies that a certain numbered version of the GNU Lesser General Public License "or any later version"applies to it, you have the option of following the terms and conditions either of that published version or of any later version published by the Free Software Foundation. If the Library as you received it does not specify a version number of the GNU Lesser General Public License, you may choose any version of the GNU Lesser General Public License ever published by the Free Software Foundation. If the Library as you received it specifies that a proxy can decide whether future versions of the GNU Lesser General Public License shall apply, that proxy’s public statement of acceptance of any version is permanent authorization for you to choose that version for the Library. 111 Anexo F BSD License Copyright (c) <year>, <copyright holder> All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: •Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. •Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. •Neither the name of the <organization> nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. T HIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS ” AND ANY EXPRESS OR IMPLIED WARRANTIES , INCLUDDING , BUT NOT LIMITED TO , THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED . I N NO EVENT SHALL <C OPYRIGHT H OLDER > BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL , SPECIAL , EXEMPLARY, OR CONSEQUENTIAL DAMAGES (I NCLUDING , BUT NOT LIMITED TO , PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES ; LOSS OF USE , DATA , OR PROFITS ; OR BUSINESS INTERRUPTION ) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (I NCLUDING NEGLIGENCER OR OTHERWISE ) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE , EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE . 113 Anexo G MIT License Copyright (c) <year> <copyright holders> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. T HE SOFTWARE IS PROVIDED “AS IS ”, WITHOUT WARRANTY OF ANY KIND , EXPRESS OR IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM , DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE , ARISING FROM , OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE . Anexo H Apache License versão 2 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ T ERMS AND CONDITIONS FOR USE , REPRODUCTION , AND DISTRIBUTION 0.Definitions. "License"shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor"shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity"shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control"means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You"(or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source"form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object"form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work"shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works"shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution"shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted"means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor"shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 1.Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 2.Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You 116 institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 3.Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a)You must give any other recipients of the Work or Derivative Works a copy of this License; and (b)You must cause any modified files to carry prominent notices stating that You changed the files; and (c)You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and 4.If the Work includes a "NOTICE"text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5.Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the 117 Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6.Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7.Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS"BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8.Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9.Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. E ND OF T ERMS AND C ONDITIONS 118 Appendix: How to apply the Apache License to your work To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]"replaced with your own identifying information. (Don’t include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page"as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 119