[FUG-BR] Driver Linux viola a licenca BSD
Douglas Santos
dsantos em hydroxyl.org
Quinta Setembro 13 23:28:29 BRT 2007
No final do mês de Agosto deste ano, Theo de Raadt postou na lista
misc at openbsd um comentário interessante sobre a insistência, dos
desenvolvedores do OpenBSD, de que a liberdade "freedom" de
código/software é importante.
Neste e-mail ele relata o commit de um "blob" recente no código do
NetBSD para um driver wireless da Atheros. Isto é inadmissível no
kernel do OpenBSD, porque o princípio básico da liberdade é que você
não dependa da decisão de outros, seja uma empresa ou indivíduo, para
usar, modificar ou distribuir o código.
No OpenBSD um desenvolvedor, Reyk Floeter, tomou a iniciativa e
escreveu um driver totalmente livre para esta placa wireless. E o mais
importante, sem documentação nenhuma.
http://kerneltrap.org/OpenBSD/Software_Freedom
Ainda no final de Agosto, surge uma discussão na Linux Kernel mailing
list sobre a licença dos drivers Atheros, recentemente importados,
estarem re-licenciados como GPL.
Jiri Slaby fez o commit, aplicando a licença GPLv2.
Luis Rodriguez, sugeriu que esta é a melhor escolha, manter o código
com duas licenças. assim garantindo a predominância da licença mais
restritiva, a GPL.
Esta atitude não poderia ser tomada, pois ele não é o autor original do
driver, muito menos escreveu a maior parte do código para ter direito
sobre o mesmo.
Apenas quem detém o copyright pode re-licenciar o código. E de acordo
com Reyk, o código possui apenas uma licença.
Vale lembrar aqui que uma parte que foi escrita por Sam Leffler do
NetBSD, pode ser distribuída sob a GPL, pois possui duas licenças. E
sempre deve ser distribuído sobre as duas licenças.
Também é importante observar um comentário feito pelo Theo de Raadt a
respeito da ideia de Luis Rodriguez, que a tempos vinha insistindo
para que Reyk colocasse duas licenças no seu código.
O código já é totalmente livre, mas aparentemente há uma regra estúpida
do Luis que diz que todo o software não deve ser livre, não, não pode
ser apenas livre, tem que ser GPL.
É importante observar que:
1 - Apenas o autor pode modificar o copyright
2 - A licença diz que você não pode apagar o copyright original e
substituir por outro
http://kerneltrap.org/Linux/Relicensing_Code
No começo deste mês, as discussões continuam...
Alan Cox pergunta: qual é o problema ? Theo de Raadt responde que o
Alan está incentivando que as pessoas infrinjam a lei.
Novamente é importante observar que:
1 - Se você receber um código com duas licenças, você não pode apagar a
licença que não gosta e distribuir o código com apenas uma licença.
2 - Se você receber um código com a licença BSD ou ISC, você não pode
apagar a licença.
3 - Se você escrever ou re-escrever a maior parte do código de maneira
original, você pode colocar uma licença diferente (não conflitante) no
inicio do arquivo, sob a licença existente.
Theo de Raadt então diz que o código deve ser devolvido.
Isto significa que a licença deve ser mantida de acordo com o copyright
original.
É muito importante este comentário, veja que o código é totalmente
livre, pode ser copiado e modificado por qualquer um. Porém quando o
código for distribuído deve conter o copyright original.
Theo vai mais além, e afirma que fans da licença GPL dizem que a
licença BSD sofre de um problema na qual empresas pegam o código BSD,
modificam e não devolvem nada.
Veja que isto é possível e implícito na licença BSD. Mas Theo diz que o
maior problema são as pessoas que modificam o código BSD, inserindo uma
licença GPL. Todo o tempo, empresas estão devolvendo código BSD, mas
uma vez que a licença é GPL, este código não volta. Ironicamente.
Theo então termina, agradecendo para que a comunidade Linux pense sobre
isso.
http://kerneltrap.org/OpenBSD/Stealing_Versus_Sharing_Code
Reyk Floeter, que estava de férias neste intervalo, entra na discussão
e afirma que não vai lançar seu código sobre GPL ou sobre duas
licenças.
Diz também que a licença ISC, na qual seu código está licenciado deve
conter a nota de copyright bem como o termo de garantia original.
http://kerneltrap.org/Linux/Continuing_Dual-Licensing_Discussions
Os debates continuam, foi perguntado porque licença BSD não pode ser
extraída de aplicações Windows, conhecidas por incluir código sob a
licença BSD.
Theo mais uma vez reponde que neste caso não é código, e sim binários.
Além disso se você procurar nos documentos da Microsoft, você verá
referências a licença BSD.
Vale lembrar que a licença BSD atual não inclui mais o termo que diz
algo como "este produto inclui software desenvolvido por..." que nas
versões anteriores era obrigatório para todas as empresas que
utilizavam desta licença.
http://kerneltrap.org/OpenBSD/The_BSD_License
Reyk descreve que se sente desapontado, gastou muito tempo escrevendo
os drivers e gostaria que os driver pudessem ser portados para outros
sistemas operacionais, com o copyright original.
http://kerneltrap.org/Linux/Clarifying_the_ath5k_Licensing
As discussões continuam, os desenvolvedores Linux não admitem estarem
errados.
Um caso muito similar acabou entrando em discussão.
Um driver wireless da Marvell foi inserido no código do OpenSolaris.
O mais incrível é que o código foi inserido com o devido copyright, e
inclui ainda uma nota dizendo que o driver é baseado no código do
OpenBSD e é oferecido sob a licença BSD original.
Sem dúvida, é um bom exemplo para a comunidade linux seguir.
http://www.opensolaris.org/os/community/laptop/wireless/malo/
http://kerneltrap.org/OpenBSD/Atheros_Driver_Developments
http://undeadly.org/cgi?action=article&sid=20070913014315
O repositório com o código re-licenciado sob a GPL pode ser visto aqui:
http://madwifi.org/browser/branches/ath5k
Mais detalhes sobre a lista de discussão freebsd