50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

不再基于 GNOME,System76 使用 Rust 开发全新桌面

  • 2021-11-10
  • 本文字数:2195 字

    阅读完需:约 7 分钟

不再基于 GNOME,System76 使用 Rust 开发全新桌面

近日,老牌 Linux PC 厂商 System76 在 reddit 上称,其正在开发属于自己的、 Rust 编写的桌面,该桌面不再基于 GNOME 或任何现有的桌面环境。

 

事情源于 System76 工程师在 reddit 上提出了关于 Pop!_OS KDE 风格的讨论。System76 的 Pop!_OS Linux 发行版之前已经拥有基于 GNOME 的“COSMIC”桌面,但 Pop!_OS 和 GNOME 的开发人员似乎在主题化和自定义方法上的沟通存在一些摩擦,这让 System76 产生了自己写一个桌面的想法。

 

新桌面将支持 X11 和 Wayland

 

System76 工程师和 Pop!_OS 维护者 Michael Murphy 称:“我们正在编写自己的桌面操作系统。” 而在网友进一步询问新的桌面是否是来自 GNOME 的分支时,Michael Murphy 回复道:“不,这是用 Rust 编写的属于我们自己的桌面“。


根据 Michael Murphy 的说法,新桌面还将如预期的一样持 X11 和 Wayland,因为 X11 是 Nvidia 驱动程序的硬性要求。

 

除了利用 Rust 编程语言之外,用户对于新桌面的其他新特性也非常感兴趣。不过,System76 具体什么时候从 GNOME 基础转移到自己的 Linux 桌面,以及他们是否会使用任何 GNOME 组件作为他们新桌面工作的一部分,都还并未确定。“它仅处于试验的早期阶段,目前还没有在 Pop!_OS 21.10 发布期间积极开展工作,”Michael Murphy 表示

 

基于 GNOME 的桌面环境 “COSMIC”

 

今年上半年,System76 宣布它开发的 Linux 发行版 Pop!_OS 将使用一个新的桌面环境 COSMIC,COSMIC 并不是从头开始构建的产品,而是基于 GNOME 桌面环境打造,其中 COSMIC 最大的亮点就是可定制化。相比 GNOME ,它的变化有: Activities Overview 分成两个不同视图 Workspaces 和 Applications,Super key 默认激活启动器等等。



下面简单介绍 COSMIC 的部分变化:

 

Workspaces and Applications

 

在 COSMIC 中,GNOME 原来的 Activities Overview 被划分为两个不同的视图,分别是工作空间和应用 (Workspaces and Applications)。工作空间视图用于查看打开的窗口和工作空间,应用视图则会打开应用程序选择器。

 

Super Key 默认激活启动器

 

在 COSMIC 中,Super Key 默认情况下会激活启动器。用户可通过启动器启动或切换应用程序、执行命令并计算方程式。System76 解释称,此改变基于他们在 GNOME 中观察到的常见行为。在 GNOME 中,用户会按 Super Key 并输入应用程序的名称来启动它。到了 COSMIC 中,用户也可以将 Super Key 设置为打开工作空间或应用程序视图,而不是启动器。

 

Dock

 

COSMIC 中的 Dock 底栏支持配置在屏幕的右侧,左侧或底部,以及支持自动隐藏,还可以设置将 Dock 底栏的长度扩展到屏幕边缘。

 

两种工作流模式:鼠标驱动和键盘驱动

 

COSMIC 通过添加其他的自定义功能,使用户可以更好地控制自己的桌面,以迎合两个主要工作流程:鼠标驱动和键盘驱动。

 

对于习惯使用鼠标的用户,COSMIC 会让他们保持现有习惯的同时无缝过渡到新版本桌面环境。而对于键盘驱动的用户,由于他们喜欢更高效、无干扰的体验,因此在 COSMIC 中,极简主义者可以不使用 Dock 底栏,从而为应用程序窗口提供额外的空间。Auto-tiling 将为键盘驱动的工作流程奠定基础,它主要依靠快捷键和启动器来尽可能快速地浏览桌面。

 

Pop!_OS VS Ubuntu

 

首先需要清楚 System76 并不是从零开始构建自己的操作系统,Pop!_OS 就是我们一般所说的 Linux 发行版,其基于最流行的桌面 Linux 版本 Ubuntu ,因此,从技术上来说,它们的核心是一样的。它们都默认带有 GNOME 桌面环境,因此它们具有相似的 UI。

 

下面介绍一下 Pop!_OS 和 Ubuntu 的差异:

 

用户体验及主题

 

Pop!_OS 和 Ubuntu 都可以在 GNOME 桌面环境中运行,但是,Pop!_OS 感觉更加优美。

 

除外观之外,Ubuntu 通过添加了一个 Dock 和更多技巧来自定义 GNOME 体验,所以对于喜欢定制 GNOME 体验的开发者来说会觉得很好。

 

但是,如果开发者更喜欢纯粹的 GNOME 体验,Pop!_OS 会更适合,并且 Pop!_OS 的总体配色方案、图标和主题更显高级。

 

易于安装第三方应用

 

Pop!_OS 具有其自己的官方 PPA,并已默认启用,开发者可以在此处找到一些有用的应用程序,例如 Android Studio、TensorFlow。这意味着无需下载 Android Studio 的 1GB 大的 Snap 程序包,直接使用 apt-get install 获取就可以

 

预装应用


与 Ubuntu 相比,Pop!_OS 捆绑了更少的默认应用程序。

 

snap 软件包支持

 

对于熟悉 snap 包的开发者来说,Ubuntu 的软件中心体验感会更好,因为开发者可以在软件中心中列出 snap 包。虽然 Pop!_OS 同样支持 snap 包,但是,开发者并不能在 Pop!_OS 商店中找到它们,这是唯一区别所在。

 

单独的 NVIDIA/AMD ISO 文件


Pop!_OS 提供了单独的 ISO,一个用于带 NVIDIA 显卡的系统,另一个用于带/不带 AMD 显卡的系统。而使用 Ubuntu 19.10,开发者可以在 Ubuntu ISO 上获得 NVIDIA 驱动程序,但 AMD 显卡上没有这种功能。

 

可靠性问题

 

这两个发行版都对初学者友好且相当可靠,当出现新版本的 Ubuntu 时,Pop!_OS 可以在其上运行,并有可能解决用户在 Ubuntu 原始发行版上遇到的问题,然后再进行新的升级。

 

性能

 

性能主要取决于用户所安装的内容以及所安装的硬件配置,但是,如果用户使用 System76 笔记本电脑,Pop!_OS 会更加适合,因为与 Ubuntu 不同,Pop!_OS 已针对 System76 的硬件进行了量身定制。

 

总结

 

Ubuntu 是一个不以硬件为中心的“长青”发行版,而 Pop!_OS 是为 System76 硬件量身定制的发行版。

 

2021-11-10 17:105976

评论

发布
暂无评论
发现更多内容

流动性挖矿系统APP开发|流动性挖矿软件开发

系统开发

Linux角度仰视Goroutine的GMP

ninetyhe

Java Linux 多线程与高并发 Go 语言

深入灵魂的考验,每行注释都是灵魂的单例模式,源码+实例降临

小Q

Java 学习 架构 面试 设计模式

干货分享!用心满满:面试前必知必会的二分查找及其变种

比伯

Java 编程 架构 面试 计算机

为什么阿里人能够快速成长?看完他们Java架构进化笔记,我秒懂!

Java架构追梦

Java 学习 架构 面试 成长笔记

基于RTMP数据传输协议的实时流媒体技术研究(论文全文)

程序员小灰

音视频 ffmpeg 流媒体 RTMP webrtc、

anyRTC 联合 vInClass 打造在线教育上课模式

anyRTC开发者

音视频 WebRTC 在线教育 RTC

多活/多机房的几种实现方式与重点

Justfly

高可用 跨机房 数据同步 异地多活容灾

构师训练营 - 第七周课后练习

joshuamai

告别“效率内卷化”,华为用一年时间让职场人支棱起来

脑极体

全球熵ETV系统APP开发|全球熵ETV软件开发

系统开发

InfoQ 内容推荐位资源限时开放

乐白

InfoQ 资源

《Web自动化》基础知识脑图

清菡软件测试

Web

云原生架构:容器资源限制及资源可见性

云原生实验室

云原生

架构探索:事务处理一

Dark

架构师训练营第 1 期 第 11 周作业

李循律

极客大学架构师训练营

工商银行基于 Dubbo 构建金融微服务架构的实践-服务发现篇

阿里巴巴云原生

云原生 dubbo 中间件 案例分享 CloudNative

构师训练营 - 第七周学习总结

joshuamai

鹅厂大佬亲身经历证明,一周上线百万级并发系统

Java架构师迁哥

拆解增长黑客之实战(一):获客与激活

懒杨杨

增长 产品运营

前端开发还可以这么玩?元数据实践分享

华为云开发者联盟

大前端 元数据 组件 ROMA 业务流

三分钟看懂快速开发,常用软件快速开发平台速览

Marilyn

敏捷开发 快速开发 企业开发 企业应用

CloudIDE插件开发实战:教你如何调试代码

华为云开发者联盟

ide 开发 Cloud

mongodb 源码实现系列 - command 命令处理模块源码实现二

杨亚洲(专注MongoDB及高性能中间件)

MySQL mongodb 分布式数据库 源码刨析 分布式数据库mongodb

5G多输入多输出技术,到底是个啥东东?

华为云开发者联盟

5G 输入 输出

WebRTC SDP 详解和剖析

阿里云CloudImagine

阿里云 音视频 WebRTC 视频云 流媒体传输

王者级别的Java多线程技术笔记,我愿奉你为地表最强!

Java架构师迁哥

揭秘 VMAF 视频质量评测标准

阿里云CloudImagine

视频 图像处理

研发管理:敏捷研发下周报的价值

云原生实验室

云原生 敏捷 研发管理 周报

理解Python协程的本质

Justfly

Python 协程 异步 Async 异步编程

深度学习在物理层信号处理中的应用研究

华为云开发者联盟

学习 模型 物理层

不再基于 GNOME,System76 使用 Rust 开发全新桌面_架构_闫园园_InfoQ精选文章