
Todo mundo sabe que o software automotivo Tesla foi criado com base em projetos de código aberto, ou seja, no sistema operacional Linux sob a licença GPL. Esta licença requer que os desenvolvedores derivados publiquem seu código-fonte. Caso contrário, ele se transforma em uma rua de mão única, quando só é permitido pegar, mas não dar. Mas foi exatamente o que Tesla fez até recentemente.
Em maio de 2018, o processo avançou: a Tesla
publicou uma parte significativa do código de versão do software para o Modelo S / X 2018.12 . Esta é a imagem do sistema da plataforma Tesla Autopilot, o código do sistema para o hardware e o código do sistema de infotainment Nvidia Tegra que roda no carro.
Repositórios do Github:
https://github.com/teslamotors/buildroot
https://github.com/teslamotors/linux
A Software Freedom Conservancy Foundation
parabenizou a empresa pelo "primeiro passo público no sentido de cumprir os termos da GPL". O fundo observou que raramente fala publicamente sobre as especificidades dos litígios em andamento com empresas que violam os termos da licença. Geralmente, os infratores são solicitados a manter a confidencialidade e a não levar a questão ao público, para não serem criticados publicamente. Muito raramente, uma empresa reconhece aberta e publicamente violações e começa a corrigi-las publicamente. Isso foi o que a
Samsung fez há alguns anos e agora a Tesla.
As negociações com a Tesla são realizadas desde junho de 2013, quando houve numerosos relatos de violação da GPL no Tesla Model S. Os compradores de carros receberam carros com um sistema de computador que funcionava no Linux e no BusyBox. Ao mesmo tempo, os compradores não receberam nenhuma fonte.
Além da Tesla, foram realizadas negociações com os fornecedores de software da Tesla, Nvidia e Parrot, para divulgar simultaneamente as fontes correspondentes completas (fonte completa, fonte correspondente, CCS) para todos os arquivos binários sob a GPL encontrada no Tesla Model S. Em particular, a Nvidia possui a encontrada na No carro, o binário é 2.15.50.img.bz2 e, para o Parrot, o binário firmware_2.12.126. O primeiro provavelmente corresponde à chamada plataforma Tesla Autopilot 2.
Durante esse período, Tesla forneceu à Fundação vários candidatos ao CCS, que não eram binários completos nem relevantes. Consequentemente, os especialistas em Software Freedom Conservancy ajudaram a Tesla a aconselhar sobre como remediar a situação.
De acordo com o CCS, a fonte deve atender a duas condições:
- Destas, você pode compilar um binário que corresponda exatamente ao binário no carro.
- O usuário deve poder substituir o binário no carro pelo seu.
Parece que formalidades menores, mas é muito importante segui-las.
É importante entender que esse estágio - trazendo o código fonte em total conformidade - é o mais longo. Pode ser abraçado pela falsa alegria que passamos da falta de fonte para a disponibilidade. Mas não, não é só isso. O cumprimento de todos os requisitos da GPL é muito importante.
No entanto, em maio de 2018, a Tesla decidiu escolher um curso inesperado - e publicado nos códigos-fonte do Github que não estão em conformidade com o CCS. A Software Freedom Conservancy Foundation congratula-se com esta etapa como um reconhecimento público de suas violações, mas lembra a necessidade de colocar o código em um formato apropriado. Para esse fim,
foi criada uma
lista de discussão pública para discutir o lançamento do Tesla. A primeira
mensagem da lista é a análise do candidato do CCS, publicado no Github e, na realidade, é o sétimo candidato do CCS.
O relatório diz que as fontes publicadas contêm apenas parcialmente o código da Nvidia (não há códigos-fonte para os arquivos 88w8688_uap.ko e 88w8688_uap_mlan.ko do Tesla Model S), e o código Parrot está completamente ausente.
Assim, o caso avançou. Se o Tesla continuar trabalhando nessa direção, abrir o portal de software livre correspondente e carregar as versões completas do software para cada modelo, qualquer proprietário da máquina Tesla poderá baixar, compilar e instalar a versão mais recente do piloto automático ou outro software em sua máquina. Isso estará em total conformidade com os termos da GPL.