我们Fairphone是开源可构建代码的忠实粉丝。以下是我们这样做的原因。
如果你听说过Fairphone,很可能你已经听说过Fairphone屡获殊荣的模块化设计,这种设计易于维修,并且从长远来看更具可持续性。这种方法是我们创始人巴斯·范·阿贝尔十年前那句名言的具体体现: “如果你无法打开它,你就不拥有它。”
然而,我们相信,不仅硬件应该对最终用户易于访问,软件方面也应该如此,特别是对于那些喜欢编程的人来说。根据我们的观察,目前没有多少品牌为智能手机用户提供必要的资源,以在其设备上开发和运行他们自己定制的Android构建版本。一个是索尼,它允许你摆弄他们的Xperia设备。另一个,我们很高兴地报告,就是Fairphone。
为何可构建代码仍然是一项独特的服务 与iOS相比,Android在其核心是开源的。其名称就来源于Android操作系统的公开可用、可修改的源代码——AOSP,即Android开源项目。
然而……
在实践中,在任何设备上运行一个功能完整的Android版本需要来自各个组件供应商(包括芯片组制造商)的大量专有软件。除此之外,你还需要考虑谷歌自己的专有服务。主要的技术挑战在于维护长期的软件兼容性,因为开源的AOSP组件必须与各种供应商提供的、可能是预编译或二进制的组件进行可靠通信,而这些组件在操作系统更新时需要调整。
我们在Fairphone的做法 在获得芯片组制造商的明确批准后,我们会公开发布Linux内核设备树源码以及GPL许可的内核源码。这个设备树为内核提供了硬件的描述,这对于内核与手机硬件正确通信至关重要。这种做法,连同发布我们的原理图,对开源生态系统和Linux社区都是有益的,提供了有价值的信息并帮助更好地理解硬件的工作原理。它也有助于更快、更容易地在新的硬件上启动Linux。
对于我们无法发布的闭源专有代码,我们的解决方案是准备专有软件包或“Blobs”,人们可以将这些与开源代码结合使用。没有这些,设备功能可能会受到严重影响。重要的是要注意,这是一个持续的过程,我们需要确保开源代码和Blobs都能定期更新。我们已经建立了流程,使得开源发布成为我们发布流程中不可或缺的一部分。这不仅仅是为设备发布进行的一次性活动。
正如你所看到的,必须付出额外的努力来分离开源代码和专有代码,以便能够编译和生成功能完整的可启动设备镜像。
那么我们为什么要这样做?
考虑到我们公司的DNA和我们作为一个品牌所代表的理念,这完全合乎情理。我们完全致力于开源,而提供可构建的代码是这一承诺的核心部分。将我们的软件开源可以让用户清楚地了解我们的软件如何工作,让他们知道底层发生了什么。这也使用户能够在软件方面与我们合作。我们的团队可以从社区获得关于如何延长他们管理的设备的软件支持的反馈。这可以加速我们的开发周期,可能减少内部开发工作,并使我们的用户(以及我们的员工)对产品和品牌产生更强的拥有感和忠诚度。
谷歌最近决定省略Pixel设备树并压缩Pixel内核源码历史,使得我们在这方面的工作变得更加重要。展望未来,Fairphone设备可以作为开源ROM的潜在“参考设备”。这确保了开发者和爱好者可以继续构建和刷入他们自己定制的Android版本,为Fairphone设备的长期性和开源生态系统做出贡献。
我们自豪地报告,经过我们软件团队的大量辛勤工作和奉献,Fairphone 5和Fairphone(第6代)的源代码现在已经处于极佳的构建状态,就像Fairphone 3和4一样。如果你有兴趣,可以尝试将这些新编译的镜像刷入你的Fairphone设备,并使用这些代码构建你自己的操作系统。
我们还将新Fairphone上的Fairphone Moments功能开源。通过将专用侧边开关的源代码交给我们的开发者社区,我们为每个人提供了定制这个物理按钮的终极能力。这不仅仅是给你一个功能,更是给你整个工厂。因为这才是真正的拥有。在你的帮助下,我们正在极大地增强设备的寿命和扩展支持,确保你的设备在发布后很长时间内保持稳定和安全。
THE FAIRPHONE(第6代) | FAIRPHONE 5 | FAIRPHONE MOMENTS
有兴趣了解更多关于开源和Fairphone的一切吗?请访问我们的论坛。