当前位置: 首页 > news >正文

Raspberry Pi OS 树莓派的新版本

系列文章目录


前言


        今天,我们发布了 Raspberry Pi OS 的新版本。该版本包含一个重大变化,尽管我们希望大多数人都不会注意到。因此,我们认为最好还是告诉大家,以确保大家...


一、labwc - 新的 Wayland 合成器

        首先,给大家上一堂简短的历史课。Linux 桌面与其前身 Unix 一样,多年来一直使用 X 窗口系统。这是显示桌面、处理窗口、移动鼠标和其他所有你不会去想的东西的底层技术,因为它(通常)能正常工作。X 就计算机而言是史前技术,从 80 年代初开始就为我们提供了良好的服务。但经过 40 年的发展,X 的设计已经开始出现裂痕。

        因此,许多 Linux 发行版正在转向一种名为 Wayland 的新窗口技术。与 X 相比,Wayland 有很多优势,尤其是性能。在 X 下,有两个独立的应用程序帮助绘制窗口:

        显示服务器在屏幕上创建窗口,并为应用程序提供绘制内容的位置
        窗口管理器将窗口相对定位,并用标题栏和坐标系装饰窗口。
        Wayland 将这两种功能整合到一个名为合成器的应用程序中。在 Wayland 系统上运行的应用程序只需与一个程序(而非两个)对话即可显示窗口。可以想象,这种绘制应用程序窗口的方式效率要高得多。

        Wayland 还具有安全优势。在 X 系统下,所有应用程序都与显示服务器进行来回通信;因此,任何应用程序都可以观察到任何其他应用程序。Wayland 在合成器级别隔离了应用程序,因此应用程序之间无法相互观察。

        大约十年前,我们就开始考虑在 Raspberry Pi 使用 Wayland;当时,它还远远没有准备好投入使用。在过去几年中,我们对 Wayland 采取了谨慎的态度。早在 2021 年发布 Bullseye 时,我们就改用了新的 X 窗口管理器 mutter,它也可用作 Wayland 合成器。我们还提供了将其切换至 Wayland 模式的选项,以了解其运行情况。

        随着 2023 年书虫的发布,我们用名为 wayfire 的新专用 Wayland 合成器取代了 mutter,并将 Wayland 作为 Raspberry Pi 4 和 5 的默认运行模式,同时继续在低功耗机型上运行 X。我们花了很多时间为 Raspberry Pi 硬件优化 wayfire,但它在旧版 Pis 上的运行仍然不够好,因此我们无法在所有地方都改用它。

        所有这些都是一次学习经历--我们对 Wayland 有了更多了解,知道了它如何与我们的硬件交互,以及我们需要做些什么才能让它发挥最大作用。在继续使用 Wayfire 的过程中,我们意识到它的发展方向会降低与我们硬件的兼容性。在这一点上,我们知道它不是为树莓派提供良好 Wayland 体验的最佳选择。于是,我们开始寻找替代方案。

        通过搜索,我们最终找到了名为 labwc 的合成器。我们的初步实验结果令人鼓舞:只用了几个小时,我们就能在 Raspberry Pi OS 中使用它。仔细研究后发现,labwc 比 wayfire 更适合 Raspberry Pi 图形硬件。我们联系了开发人员,发现他们的未来发展方向与我们非常一致。

        labwc 建立在一个名为 wlroots 的系统之上,这是一套提供 Wayland 系统基本功能的库。有了 wlroots,任何想编写 Wayland 合成器的人都无需重新发明轮子;我们可以利用那些设计 Wayland 的人的经验,因为他们最了解 Wayland。

        因此,我们做出了切换的决定。今年大部分时间,我们都在努力将 labwc 移植到 Raspberry Pi 桌面。这在很大程度上是一个与 labwc 和 wlroots 开发人员合作的过程:在我们贡献桌面所需的功能和优化的过程中,他们都给予了我们极大的支持和帮助。

        在针对我们的硬件进行了大量优化之后,我们的 Labwc 桌面已经达到了在旧款 Raspberry Pi 上与 X 一样快的运行速度。今天,我们用最新的桌面镜像完成了这一转换: 树莓派桌面现在默认在所有型号上运行 Wayland。

        当你更新现有的书虫安装时,你会看到一个提示,要求你下次重启时切换到 labwc:

        我们建议大多数人改用 labwc。

        运行 wayfire 的现有 Pi 4 或 Pi 5 书虫装置除了会丢失一些我们尚未在 labwc 中实现的动画之外,应该不会有任何明显的变化。由于我们将不再支持 wayfire 在 Raspberry Pi OS 上的更新,因此最好尽快采用 labwc。

        目前使用 X 的旧版 Pis 也应改用 labwc。为了确保向后兼容旧版应用程序,labwc包含一个名为Xwayland的库,它提供了一个运行在Wayland之上的虚拟X实现。有了 Xwayland,你可以继续使用你所依赖的旧版应用程序,同时受益于最新的安全和性能更新。

        与任何软件更新一样,我们不可能测试所有可能的构型和应用程序。如果切换到 Labwc 后遇到问题,可以随时切换回 X:

sudo raspi-config 

        这将启动命令行 Raspberry Pi 构型应用程序。使用箭头键选择 “6 高级选项”,然后点击 “回车键 ”打开菜单。选择 “A6 Wayland”,然后选择 “W1 X11 Openbox window manager with X11 backend”。点击 “escape ”退出应用程序;当你重启设备时,桌面应该会以 X 重启。

        我们预计很多人都不需要这样做,但为了以防万一,我们还是提供了这个选项!当然,如果你出于某种原因希望继续使用 wayfire 或 X,升级提示也会为你提供选择,这并不是强制升级,只是我们建议你这样做。

二、改进触摸屏支持

        虽然 labwc 是本版操作系统的最大变化,但它并不是唯一的变化。我们还大幅改进了对使用触摸屏的桌面的支持。具体来说,Raspberry Pi Desktop 现在可以自动显示和隐藏虚拟键盘,并支持右键和双击触摸显示屏。

        这一变化是由于集成了 Squeekboard 虚拟键盘。当系统检测到触摸显示屏时,只要可以输入文字,虚拟键盘就会自动显示在屏幕底部。当无法输入文字时,键盘也会自动隐藏。

        这种自动隐藏和显示功能适用于大多数应用程序,但并非所有应用程序都支持。对于不支持该功能的应用程序,你可以使用任务栏右端的键盘图标来手动切换键盘的开关。

        如果不想用触摸屏使用虚拟键盘,或者想在没有触摸屏的情况下用鼠标点击虚拟键盘,可以在 Raspberry Pi 构型的 “显示 ”选项卡中打开或关闭虚拟键盘。新的虚拟键盘仅适用于 labwc,与 wayfire 或 X 不兼容。

        除了虚拟键盘,我们还添加了触摸屏长按检测功能,以产生相当于鼠标右键单击的效果。你可以用它在任务栏和文件管理器的任意位置启动上下文敏感菜单。

        我们还在触摸屏上添加了双击检测功能,以生成双击。虽然这在 X 上可以实现,但在 wayfire 中却行不通。现在 labwc 支持双击产生双击效果。

三、更好地集成 Raspberry Pi Connect

        Raspberry Pi Connect 是我们的远程访问软件,可让您从世界上任何地方的任何电脑控制您的 Raspberry Pi。此版本将 Connect 集成到桌面中。

        默认情况下,您现在可以随时在任务栏中看到 Connect 图标。以前,这表示 Connect 正在运行。现在,图标表示 Connect 已安装并准备就绪,但不一定在运行。将鼠标悬停在图标上会出现一个显示当前状态的工具提示。

        现在,您可以直接从点击图标时弹出的菜单中启用或禁用 “连接”。以前,这是 Raspberry Pi 构型中的一个选项,但该选项已被移除。现在,所有控制 Connect 的选项都在图标菜单中。

        如果不打算使用 Connect,可以从 “推荐软件 ”中卸载它,也可以右键单击任务栏,选择 “添加/删除插件...”,将图标从任务栏中移除。

五、其他事项

        此版本还包括其他一些值得一提的小改动:

  • 我们重写了屏幕顶部任务栏的面板应用程序。在以前的版本中,即使您从面板中删除了一个插件,它也会保留在内存中。现在,当你删除一个插件时,面板根本不会将其加载到内存中。现在,每个插件都是一个单独的库,而不是将所有单独的插件作为一个应用程序的一部分。面板只会为你选择在屏幕上显示的插件加载库。这对很多人来说没有太大区别,但如果你删除了几个插件,就可以节省一些内存。这也使我们和第三方开发新插件变得更容易。
  • 我们引入了新的屏幕构型工具 raindrop。它的工作原理与旧版本 arandr 完全相同,甚至外观也很相似。在引擎盖下,我们用 C 语言重写了旧版应用程序,以改进对 labwc 和触摸屏的支持。由于新工具是原生的,因此性能应该会更快!今后,我们将只维护新的本地版本。

六、如何获取

        新版本今天可在 apt、Raspberry Pi Imager 或 raspberrypi.com 上的软件页面下载。

        我们昨天发布的初始版本确实出现了一些问题,有些人发现切换到 labwc 会导致桌面无法启动,但现在这些问题都已解决--现在按照下面的流程更新应该是安全的,因此我们恢复了上述更新提示。

        如果昨天更新时出现问题,导致桌面变成黑屏,解决方法是在黑屏时按下 Ctrl-Alt-F2,在提示符下登录,然后键入

sudo apt install labwc

        在重新启动之前,请重新启动,这样就可以恢复正常的桌面。我们向受此影响的用户致歉。

        要将现有的 Raspberry Pi OS Bookworm 升级到此版本,请运行以下命令:

sudo apt update
sudo apt full-upgrade

        下次重启时,您将看到上述提示,提示您切换到 labwc。

        要切换到新的屏幕构型工具,请运行以下命令:

sudo apt purge arandr
sudo apt install raindrop

        新的屏幕键盘可以通过推荐软件(名为 Squeekboard)安装,也可以通过命令行安装:

sudo apt install squeekboard wfplug-squeek

        希望您喜欢新的桌面体验。或者更准确地说,我们希望您不会注意到太大的不同!一如既往,欢迎您在下方发表评论。


http://www.mrgr.cn/news/63634.html

相关文章:

  • 服务器宝塔安装哪吒监控
  • ClickHouse 5节点集群安装
  • [每日一练]分组后元素最多的组别(all函数的全局比对)
  • LeetCode20:有效的括号
  • Docker本地安装Minio对象存储
  • 【CSS】CSS 样式重置 (normalize.css 和 reset.css) 和通用样式配置
  • [论文阅读]LOGAN: Membership Inference Attacks Against Generative Models
  • ssm+vue657基于spring和vue开发的web新闻流媒体平台
  • Go语言的使用
  • Python实现SPFA算法
  • Oracle视频基础1.3.6练习
  • 龙迅#LT6211适用于HDMI转4PORT LVDS,分辨率高达4K60HZ,可提供技术支持!
  • CATIA许可证管理工具
  • (python)如何进行加密
  • 求逻辑地址的页号和物理地址
  • [Approaching any Machine Learning] Supervised vs unsupervised learning - Note
  • 【Kaggle | Pandas】练习5:数据类型和缺失值
  • Virtuoso使用layout绘制版图、使用Calibre验证DRC、LVS、PEX抽取RC
  • 2024/11/1 数据结构大题打卡
  • Kafka日志记录
  • 深入解析C/C++中的__attribute__((packed)):内存对齐与紧打包技术
  • opencv学习笔记(6):图像预处理(直方图、图像去噪)
  • js的小知识
  • 《AI从0到0.5》之提示工程
  • python代码实现了一个二维粒子系统的模拟,模拟粒子在离散空间中的随机运动和相互作用
  • Apple iap2协议栈在蓝牙中的移植及MFi认证的实现