#27 无界
2022年1月21日 • 10 条笔记 • 由 Felix 整理GNOME 项目在 1 月 14 日至 1 月 21 日这一周内的更新情况。
核心应用和库
GNOME Shell ↗
核心系统用户界面,用于启动应用程序、切换窗口、系统搜索等。
Sam Hewitt 发布公告
桌面 Shell 将迎来 GNOME 42 的重大视觉刷新!除了调色板更新外,Shell 中的元素也采用了更圆润的外观。面板菜单也进行了重大重新设计,子菜单采用了新的样式。屏幕键盘在关键视觉反馈和单词建议方面得到了重大改进。更不用说大量的其他小修复了。
Settings ↗
配置 GNOME 桌面的各个方面。
Georges Stavracas (feaneron) 报道
本周,我将在线帐户面板移植到 GTK4,并在设置中完成了显示和应用程序面板的重新设计。
WebKitGTK ↗
GTK 端口的 WebKit 渲染引擎。
adrian 报告
我们发布了 WebKitGTK 2.34.4,其中包含许多安全修复。虽然发布说明很简单,但值得一提的是,它包含了一个重要的补丁,用于修复 Safari IndexedDB 漏洞,该漏洞最近被公开。
软件 ↗
允许您安装和更新应用程序和系统扩展。
Philip Withnall 发布公告
Milan Crha 改进了 GNOME Software 中 Flatseal 所需权限的显示
GJS ↗
在你的 JavaScript 程序中使用 GNOME 平台库。GJS 驱动 GNOME Shell、Polari、GNOME Documents 和许多其他应用程序。
ptomato 宣布
本周 GJS 中的更新
- GJS 将其底层的 JS 引擎升级到 SpiderMonkey 91,带来了许多现代 JS 的便利性。这次升级由 Evan Welsh、Chun-wei Fan 和我共同完成。以下是一些示例
#privateFields和#methods()??=、&&=和||=运算符at()方法,用于数组和字符串,允许使用负数进行索引Promise.any()- 错误原因
- WeakRefs
- 更多支持区域设置的格式化功能
- Evan 还为 GJS 添加了符合标准的
setTimeout()和setInterval(),现在它们可以在 Web 浏览器中使用,同时仍然与 GLib 的主循环集成。- Evan 还 添加了对
GObject.Object.new()和 GObject.Object.new_with_properties() 的覆盖,使其能够与属性一起工作。- 以前,在调试器提示符下按 Ctrl+D 会打印错误消息而不是退出。我修复了这个问题。
- 我为 SyntaxError 消息添加了列号,以配合行号。
- 再次感谢 Evan 提供的各种其他贡献。
Circle 应用和库
gtk-rs ↗
为 GNOME 堆栈中的基本库提供 Rust 语言的安全绑定。
经过数月对 gtk-rs 绑定的工作,我们终于发布了新版本!🎉 该版本支持各种新的 API,例如
- gtk4-rs 中的 BuilderScope 支持,这意味着你终于可以在 UI 文件中设置函数名称,并在 Rust 代码中定义回调函数
- gdk3 wayland API 绑定
- 在 World/Rust 中发布了几乎所有基于 gir 的 Rust 绑定
- 一个全新的 GStreamer 插件,允许你将你的管道“流式传输”到 GdkPaintable。你可以在 博客文章 和 gstreamer 绑定/插件发布 博客文章 中找到更多详细信息
第三方项目
Romain 报告
我编写了 UI Shooter,一个用于从 UI 文件中截取 GTK4 小部件屏幕截图的工具。
它允许加载 CSS、资源和翻译,设置缩放比例和深色配色方案,并使用 libadwaita 的样式表。它主要用于无头环境,因此我提供了一个 容器镜像,运行 Weston 组合器,可以按原样使用或根据需要扩展。
我在 Metadata Cleaner 的 CI 管道中使用它来 自动截取各种小部件的屏幕截图,用于在添加或更新翻译时帮助页面。
Doomsdayrs 发布公告
发布
gtk-kthttps://gitlab.com/gtk-kt/gtk-kt
gtk-kt是 GTK API 的 Kotlin 绑定。允许熟悉 Java / Kotlin 的开发者轻松编写 GTK 应用程序。它也是新程序员开始创建 GTK 应用程序的一种简单安全的方式,只需要 10 行 & 154 个字符就可以创建一个简单的窗口。与需要 26 行和 602 个字符的 C 相比,减少了惊人的 75% 的字符来创建一个简单的窗口,想象一下对于具有更复杂组件的更大的项目。
它已经接近完成阶段,97.49% 的 GTK 类都用 Kotlin 包装,这促使我将第一个 alpha 版本发布到 https://maven.org 。
同时正在开发/计划中的是 libadwaita (https://gitlab.com/gtk-kt/libadwaita-kt) 支持和 xdg-portal (https://gitlab.com/gtk-kt/libportal-kt) 支持。
Relm4 0.4 本周发布,包含许多改进!亮点包括许多宏改进、类型安全操作、运行时更多灵活性和更新的依赖项。完整的发布公告可以在 这里 找到。
Phosh ↗
适用于移动设备的纯 Wayland shell。
Guido 说
phosh 上周获得了一个 VPN 快速设置,用于切换上次使用的 VPN 连接。在组合器方面 (phoc),我们更新到更新的 wlroots,这使我们能够启用 xdg-foreign 和 viewporter wayland 协议(这有助于 flatpak 更好地定位文件对话框,以及一些视频工作负载)。
本周就到此为止!
下周再见,请务必访问 #thisweek:gnome.org,分享您自己的项目更新!












