特斯拉公开开源Linux软件代码
特斯拉汽车不仅依赖电池,还依赖开源软件,这已经是个众所周知的秘密。特斯拉一直没有履行开源许可证规定的相关义务,但是特斯拉目前已为Model S和X系列的汽车发布了部分的Linux开源代码。
特斯拉GitHub代码库包括Model S/X 2018.12软件的代码。而且在特斯拉自动驾驶平台上还有系统镜像、底层硬件的内核源代码、以及基于Nvidia Tegra的信息娱乐系统代码。
特斯拉也会为其它系列的汽车系统发布更多的开源代码。特斯拉表示,“其它领域准备源代码的工作也在进行中,以及有一个集合众多信息的页面。我们想让你们知道有这个东西,因为现在已经可以使用了,但是我们现在正在其它的方面努力。”特斯拉电动汽车的思想团队会在发布更新的软件后,对代码进行更新。
现在还无法对特斯拉汽车构建二进制文件,因为特斯拉Linux代码仍然丢失源代码文件,以及不完整的构建指令。
根据Linux的通用公共授权v2(GPLv2),特斯拉和自由软件基金会在公开代码方面的合作进程缓慢。自由软件基金会的主管Bradley M.Kuhn和Karen M.Sandler写道:“我们自2013年,就和特斯拉开展了通用公共授权合作,当时我们告知特斯拉我方多次收到了Model S型号的汽车违反通用公共授权的报告。购买特斯拉Model S汽车的顾客收到了包含BusyBox和Linux的车载系统,但是既没有收到任何源代码,特斯拉也没有向顾客提供源代码。”
自由软件基金会和其他开源许可公司一直在和特斯拉进行合作,想让特斯拉上级软件供应商——NVIDIA和Parrot——为所有在特斯拉Model S上发现的通用公共授权二进制文件公开完整的对应源码(CCS)。
为此,特斯拉私下向基金会多次提供完整的对应源码的候选代码。这些开源代码并没有达到通用公共授权(GPL)规定的完整要求。自1998年,完整的对应源码报告已经成为通用公共授权执行的标准文件。虽然是第一次,但是这一文件允许我们向公众分享这一报告,而并不会违反规定。
反过来说,自由软件基金会已经浏览了完整的对应源码的候选文件,并在如何改善这些文件从而达到标准方面提供了技术性反馈。在这个过程中,我们也提供了详细的报告,来解释为什么发布这些文件达不到通用公共授权的要求。
“这是因为,”Kuhn和Sandler写道,“这个过程是通用公共授权执行中耗时最长,而且最难的。但是我们仍然不能忽视‘遵守’意味着达到通用公共授权的所有要求,所以我们不会随便发布不完整的开源代码。我们最终要将我们所有的工作都聚焦于用户的自由之上。”
特斯拉在如何对待开源软件方面取得了巨大的进步。特斯拉也选择了其将要公开的完整对应源码候选文件。但是自由软件基金会希望公司能够尽快地提供完整的对应源码。“我们意识到这或许是个挑战,我们也发现特斯拉这几年一直在和上游供应商进行交涉来获得合适的完整的对应源码。我们相信特斯拉所采取的新方式也有优点,因为它允许用户在整个社区进行讨论以及献计献策,协助特斯拉达到通用公共授权的要求。”
自由软件基金会知道“你们很多人,尤其是购买了特斯拉汽车,并且熟悉Linux的顾客,在特斯拉为了达到通用公共授权要求的漫长过程中,你们也耗费了很多的耐心。尽管如此,这一情况表明,想要取得工作上的成功,就必须要有耐心,它为规则的违反者提供了转向著佐权软件社区贡献者的机遇。在我们社区的历史中,不乏胜利的故事。”
原文作者:Steven J.Vaughan-Nichols
编译:信息化观察网
往期精选
围观
热文
微信编辑器 96编辑器