本文主要是介绍树莓派5 Raspberry Pi OS 新版本 —— Bookworm(书虫),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
新版本下载地址为:
https://www.raspberrypi.com/software/operating-systems/
版本说明
2023-10-10:
- 基于 Debian bookworm 版本
- 支持树莓派 5
- 在 Raspberry Pi 4 和 5 平台上,桌面现在可在 Wayfire Wayland 合成窗口管理器上运行;在旧平台上,可使用 openbox 窗口管理器在 X11 上运行
- 运行 Wayland 时,用新的 wf-panel-pi 应用程序替换 lxpanel;迁移现有的 lxpanel 插件;添加 gpu 性能和电源插件
- 修改 pcmanfm,以便在 Wayland 上运行时使用 Wayland 后端
- 使用 PipeWire 代替 PulseAudio 作为音频控制子系统;对音量控制插件进行了各种修改以支持该子系统
- 使用 NetworkManager 代替 dhcpcd 作为网络接口;对网络插件进行了各种修改以支持该功能
- 添加 Firefox 浏览器作为 Chromium 的替代;在 Raspberry Pi 配置工具中添加了默认浏览器的选择
- 在 Wayland 上运行时,使用 WayVNC VNC 服务器取代 RealVNC
- 修改所有定制和配置应用程序,以便根据需要定制 Wayfire 环境
- 在 Wayland 上运行时,使用 grim 代替 scrot 作为截图工具
- 使用 eom 图像查看器代替 gpicview
- 使用 evince 文档查看器代替 qpdfview
- Chromium 网页浏览器更新至 116 版本
- VLC 媒体播放器更新至 3.0.18 版
- 运行 Wayland 时,放大镜程序不可用;Wayfire 包含屏幕缩放功能
- 从书架中移除 CustomPC 和 Wireframe
- 大量小改动和错误修复
- 从 raspberrypi-kernel 转向基于 Debian 的内核包装 (linux-image-rpi-*)
- 从 raspberrypi-bootloader 转向基于 Debian 的固件打包 (raspi-firmware)
- 将 /boot 挂载点移至 /boot/firmware
前言
今年是奇数年,因此有一个新的重要 Debian 版本发布,我们现在发布相应版本的 Raspberry Pi OS。
今年的 Debian 版本叫做 “书虫”。(大家可能都知道,Debian 发布的版本都是以迪斯尼/皮克斯的《玩具总动员》系列电影中的角色命名的。书虫是《玩具总动员 3》中的一个小角色–不,我也不记得他了…)。
那么,《书虫》有哪些新内容呢?嗯,不是很多…但又几乎什么都有。请允许我解释一下。
Debian Bookworm 本身主要是对上一版 Debian Bullseye 软件的增量更新。其中有一些小改动 —— 请点击这里查看改动列表–但它们大多不会影响树莓派用户。因此,书虫本身并没有带来太多变化。
不过,在过去一年左右的时间里,我们一直在对 Raspberry Pi Desktop 进行一些重大的架构修改,这些修改将在书虫版本中首次发布。这就是你可能会注意到的一些不同之处。
一、Wayland
其中最重要的是改用 Wayland 而不是 X11 作为显示系统。
在过去 35 年左右的时间里,包括 Raspberry Pi Desktop 在内的大多数 Unix 桌面环境都基于 X11 窗口系统。但是,对于一款已有几十年历史的软件来说,X11 在现代计算机上使用时存在各种限制,这一点不足为奇。为了解决这些问题,大多数 Linux 发行版都开始使用 Wayland;那些尚未使用的发行版也计划在未来使用。
Wayland 的主要优势在于性能。在 X11 下,绘制窗口需要两个独立的应用程序。显示服务器用于在屏幕上创建窗口,并为应用程序提供绘制内容的位置;窗口管理器用于定位窗口之间的相对位置,并用标题栏和框架装饰窗口。在 Wayland 系统中,这两项功能被合并到一个应用程序中,称为合成器,因此应用程序只需与一项而非两项功能对话,即可绘制窗口。
这也带来了安全优势。因为在 X11 下,所有应用程序都与显示服务器进行通信,而且这种通信是双向的,所有应用程序都可以相互交换信息。而在 Wayland 下,所有应用程序都在合成器层级相互隔离,因此任何应用程序都无法看到其他应用程序在做什么。
Wayland 本身只是一个协议。要使用它,你需要一个支持 Wayland 的合成器。在之前发布的 Raspberry Pi OS 中,我们使用的是 Mutter 窗口管理器,它可以充当 Wayland 合成器。但事实证明,这是一个糟糕的选择;它相对较慢、繁琐,而且有点过时,这就是为什么我们在 Bullseye 中只是试验性地提供 Wayland 支持。
对于书虫,我们使用的是一种名为 Wayfire 的合成器。它使用了一个名为 wlroots 的标准 Wayland 库,多个现代 Wayland 合成器都使用了该库。由于 Wayfire 作为 Wayland 合成器在 Raspberry Pi 上比 Mutter 运行得更好,因此 Wayland 现在是桌面的默认运行模式。(但有一点需要注意–目前,Wayland 只在 Raspberry Pi 4 和 5 上作为默认操作模式。Wayfire 在早期平台上的性能仍在优化中,因此目前它们将继续运行旧的 X11 显示服务器和 Openbox 窗口管理器,但这些平台也会在某个时候切换到 Wayfire)。
如果在 Pi 4 或 Pi 5 上启动 Raspberry Pi OS,现在就能看到 Wayfire 桌面。它看起来应该与你习惯的 Bullseye 桌面基本相同,但表象是有欺骗性的–要让两个桌面环境看起来一样,需要做大量的工作!
屏幕顶部仍有一个任务栏,允许你启动应用程序并查看各种系统的状态,但这是一个全新的应用程序。在 Bullseye 中,这是一个名为 lxpanel 的应用程序,但现在已被 wf-panel-pi("wayfire panel for Raspberry Pi "的缩写)取代。
它基于 wf-shell(Wayfire 作者提供的面板应用程序示例),但我们对它进行了大量修改,使其外观和工作方式与 lxpanel 相似。这项工作的最大部分是移植所有现有的 lxpanel 插件(控制音量、网络、蓝牙等的图标),使它们现在都能在 wf-panel-pi 上运行。
桌面背景本身仍由牛眼系统下使用的旧版 pcmanfm 文件管理器绘制,但它已被修改为使用 Wayland 作为显示协议,而非 X11,因此现在是一个原生的 Wayland 应用程序。
各个应用程序如何在 Wayland 环境中运行,取决于它们的编写方式。标准图形工具包,如 GTK 和 Qt,现在都符合 Wayland 标准–它们可以检测到使用这些工具包的应用程序是否在 Wayland 环境中运行,然后通过 Wayland 协议路由所有图形调用,作为原生 Wayland 应用程序运行。作为 Raspberry Pi Desktop 的一部分,预装的大多数应用程序都使用了其中一个工具包,因此现在可以作为 Wayland 应用程序运行。
少数应用程序使用不兼容 Wayland 的工具包,或通过直接调用 X11 完全绕过工具包。虽然这些应用程序似乎无法在 Wayland 上运行,但我们有办法解决这个问题。我们的 Wayland 实现包含一个名为 XWayland 的软件,这是一个位于 Wayland之上的 X11 显示服务器。它处理 X 本身的所有非图形部分,并将图形部分传递给底层的 Wayland 实现。XWayland 的设计目的是,一旦应用程序向 X 请求任何内容,它就会自动启动,因此这一切都能无缝运行。
这就是 Wayland。基本上,你在桌面上看到的一切现在都与在 Bullseye 下的绘制方式完全不同,但如果我工作得当,你应该不会注意到任何明显的差异!你可能会注意到的一点是,Wayland 允许我们添加一些吸引眼球的元素;窗口现在有了微妙的阴影,它们的打开和关闭也有了动画效果,而不仅仅是出现和消失。
我们还添加了几个新插件。电源 "插件默认已启用,可监控电源电压过低或 USB 电流过大等电源问题。如果出现这两种情况,系统会显示通知让你知道发生了什么,然后在任务栏上显示一个图标–点击该图标可进入一个网页,了解有关问题的更多信息和可能的解决方法。
另一个新插件是 “GPU”,它可以显示 Raspberry Pi GPU 的负载图,类似于现有 CPU 插件显示的 CPU 负载图。该插件默认不启用,但可以通过右键单击任务栏并选择 "添加/删除插件 "来添加。
如上所述,Wayland/Wayfire 的工作仍在进行中–我们仍在针对早期型号的 Raspberry Pi 硬件进行优化,希望能在适当的时候为所有型号的 Raspberry Pi 推出 Wayland 桌面体验。
二、PipeWire
因此,我们改变了绘制所有图形的方法。与此同时,我们还改变了控制声音的方式。
最初,桌面使用 Linux ALSA 声音接口与音频硬件通信。这虽然有效,但非常原始,而且有很多限制。几年前,我们转而使用 PulseAudio 接口,它位于低级 ALSA 层之上。这增加了更多的灵活性:它使管理蓝牙音频设备等变得更容易,允许将来自多个应用程序的音频混合在一起,并允许在播放时在不同输出之间轻松切换音频。
在此版本中,PulseAudio 已被更新的 PipeWire 音频系统取代。该系统在 PulseAudio 提供的功能基础上更进一步,最重要的是为视频伴音提供了更好的支持。它减少了延迟,这在许多应用中都很重要。它能更好地管理蓝牙音频设备,记住掉电时正在使用的设备,并在启动时自动重新连接。最后,它还能在更安全的 Wayland 环境中更好地运行,在这种环境中,应用程序之间是相互隔离的。
从用户角度来看,PipeWire 可由任何控制 PulseAudio 的应用程序控制,因此任务栏上的音量和麦克风控制功能与 PulseAudio 完全相同,但在 Bookworm 中,它们是与 PipeWire 而不是 PulseAudio 对话。
三、Networking
图形和声音都是新的,还有什么?
在 Bullseye 期间,我们推出了 NetworkManager 网络控制器的使用,作为可在 raspi-config 中选择的选项。现在,在大多数 Linux 发行版中,NetworkManager 已成为网络控制的标准机制,也是书虫的默认网络控制器,取代了之前的 dhcpcd 系统。NetworkManager 的功能与 dhcpcd 完全相同,但增加了许多额外的功能,包括连接隐藏的无线网络、连接虚拟专用网络(VPN)以及将树莓派用作无线热点。它还包含更多自定义选项,方便那些希望对网络连接进行细微调整的用户。
任务栏上的联网插件与 Bullseye 中控制 dhcpcd 的插件几乎完全相同,但底部增加了一个 "高级选项 "项,允许你访问 NetworkManager 提供的新功能。
四、Firefox
另一个重大变化是,我们现在提供了第二个浏览器选项,推出了经过 Raspberry Pi- 优化的 Mozilla Firefox 版本。
这是我们第一次正式支持火狐浏览器–以前只有 Debian 提供的旧版本,而现在我们做了大量工作,以确保在 Raspberry Pi 上运行最新版本的火狐浏览器时能获得最佳体验。我们与 Mozilla 和 Firefox 社区密切合作,将我们的工作贡献给上游,让所有平台上的 Firefox 用户受益。
其中一个关键功能是启用 V4L2 编解码器支持,这样 Firefox 就能利用 Raspberry Pi 上的硬件 h.264 解码器。在旧型号的 Raspberry Pi 上,这大大提高了性能,并降低了播放高清视频时的 CPU 负载。我们启用了对 Widevine DRM 的支持,许多视频流媒体服务都在使用该 DRM,我们还对图形进行了优化,提高了一系列网站在低功耗设备上的性能。在视频通话方面,我们确保 Raspberry Pi OS 上的 Firefox 开箱即可与 CSI 摄像头(使用 libcamera)和 Wayland 上的桌面共享协同工作。
五、Documentation
正如您所预料的那样,如此巨大的变化对我们的文档产生了巨大的冲击,文档团队一直在幕后工作,以确保文档能够反映世界的新状态。尤其是一些我还没来得及在这里提及的事情,比如 Python 模块安装方式的改变。
这是一项艰巨的工作,整个文档栈都有大量的改动,所以如果您发现书虫的文档没有更新,请在文档 repo 上提出问题!
六、What’s missing?
虽然我们已尽力将此类问题控制在最低限度,但仍有一些功能无法在此版本中实现。
在 Wayland 下,对使用过扫描功能的显示器进行补偿是件棘手的事,我们还没有完全做到这一点,因此暂时删除了这一功能。现在绝大多数显示器都不需要它,但我们会在研究出最佳方法后再恢复它!
系统托盘–任务栏上应用程序可以放置图标的区域–必须使用全新的机制才能与 Wayland 的安全模型配合使用。这意味着,某些应用程序可能需要更新,才能在系统托盘中显示其图标。
同样,Wayland 的安全模型也阻止了传统的远程桌面访问,因此我们使用了名为 wayvnc 的新 VNC 服务器来代替 RealVNC。就可以连接到它的客户端程序而言,它的限制更多一些–我们使用 TigerVNC 客户端取得了不错的效果,请点击此处。
目前,RealVNC 服务器本身也存在缺陷,书虫仍将其用于尚未运行 Wayland 的旧款 Raspberry Pi。64 位版本运行正常,但 32 位版本目前与书虫不兼容,我们正在等待 RealVNC 的更新。与此同时,如果你确实需要在 Raspberry Pi Zero、1、2 或 3 上进行远程桌面访问,我们建议你暂时使用 Bullseye。
推荐软件和完整映像中删除了一些程序:
SenseHAT 仿真器目前与书虫不兼容–目前我们正在解决这一问题,希望几周后能恢复。
放大镜辅助工具与Wayfire不兼容,但Wayfire已经内置了自己的(更好的)放大镜–只需点击ctrl-alt-M即可打开或关闭它。
BlueJ 和 Greenfoot Java IDE 与 Wayland 不兼容,Sonic Pi 与 PipeWire 也不兼容,这些都是第三方程序,因此在开发人员更新之前已被移除。
本文翻译自官网
这篇关于树莓派5 Raspberry Pi OS 新版本 —— Bookworm(书虫)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!