当你想到 Linux 发行版时,脑海中可能浮现出满是命令行的终端、复杂的配置文件,或者是那些看起来像是上个世纪制作的界面。但如果你在 2021 年 11 月初打开了一台预装了 Pop!_OS 21.10 的电脑,你看到的会是一个完全不同世界的开始。
Pop!_OS 并不是普通的 Linux。它是由美国硬件制造商 System76 精心打造的,基于 Ubuntu,但去掉了 Canonical 那些让人头疼的决策,转而专注于为开发者、数据科学家和游戏玩家提供最流畅的桌面体验。21.10 这个版本,虽然在版本号上看起来只是 Ubuntu 21.10 “Impish Indri” 的简单跟随者,但它背后承载的,是 System76 对于“完美 Linux 桌面”的执着追求。
为什么是 21.10?一个关于时间的谜题
首先,我们需要澄清一个有趣的事实。Pop!_OS 的发布周期与 Ubuntu 紧密相连,但又有着自己的节奏。Ubuntu 21.10 是在 2021 年 10 月 14 日正式发布的,而 Pop!_OS 21.10 则紧随其后,大约在 2021 年 11 月 11 日左右开始向公众提供下载和推送更新。
这听起来可能有点枯燥,但理解这个时间点很重要。为什么是 11 月?因为 Ubuntu 是每六个月发布一次新版本(4 月和 10 月)。Pop!_OS 选择在这个间隙期发布自己的版本,是为了确保用户能够获得最新的软件包,同时又有足够的时间让 System76 的工程师对基础系统进行定制和测试。
对于 System76 来说,这不仅仅是一个日期,这是他们承诺的一部分:他们承诺为用户提供一个既新鲜又稳定的系统。21.10 引入了 Linux 内核 5.13,这是一个巨大的进步,带来了更好的硬件支持,特别是对于新的 AMD 和 Intel 处理器,以及更先进的电源管理功能。
COSMIC:不止是一个桌面环境
如果你长期使用 Linux,你可能会听说过 GNOME。它是 Ubuntu 的默认桌面环境,功能强大,但有时显得过于复杂或僵化。Pop!_OS 选择继续使用 GNOME,但他们并没有止步于此。
在 21.10 版本中,System76 继续深化他们对 GNOME 的定制,这种定制后来演变成了独立的 COSMIC 桌面环境(尽管 COSMIC 在 21.10 时还只是 GNOME 的深度定制版,真正的独立 COSMIC 桌面是在后续的 22.04 和 23.10 版本中才逐渐成型,并最终在 24.10 中带来了全新的 Rust 编写的 COSMIC 桌面)。
但在 21.10 的时代,这种定制已经让 Pop!_OS 脱颖而出。让我们看看用户实际体验到的不同:
- 自动平铺窗口管理:这是 Pop!_OS 的标志性功能。你不需要安装 Compiz 或 i3wm 这样的平铺窗口管理器。Pop!_OS 的平铺功能是内置的,而且智能得令人惊讶。当你最大化一个窗口时,它会保持平铺状态;当你移动窗口时,它会智能地调整相邻窗口的大小。对于程序员来说,这意味着你可以同时看到代码、终端和文档,而不需要频繁地拖动和调整窗口大小。
- 工作区切换的优化:默认的 GNOME 工作区切换体验往往需要点击屏幕右上角的“显示应用程序”才能访问,这在 Pop!_OS 中被大大简化了。你可以使用
Super + 方向键或Super + Tab快速切换工作区,这种体验更接近 macOS 的 Mission Control,但更加高效。 - dock 栏的重新设计:Pop!_OS 的 dock 位于屏幕底部(默认),并且可以智能隐藏。更重要的是,它对正在运行的应用程序有更清晰的指示,并且支持拖拽应用到 dock 中以固定,操作流畅自然。
驱动程序的福音:NVIDIA 用户的新天堂
在 Linux 世界中,NVIDIA 显卡一直是一个让许多新手望而却步的问题。在早期的 Linux 发行版中,安装 NVIDIA 驱动程序往往意味着要进入 TTY 模式,手动下载.run 文件,甚至可能面临黑屏的风险。
Pop!_OS 从 2019 年左右开始,就为 NVIDIA 用户提供了单独的 ISO 镜像。这个传统在 21.10 中得到了延续和加强。
当你在 Pop!_OS 21.10 的安装界面选择 NVIDIA 版本时,安装程序会预先配置好闭源 NVIDIA 驱动程序。这意味着,当你第一次启动系统时,你的显卡驱动程序已经就绪,分辨率正确,性能最大化,而且不会出现任何兼容性冲突。
这对于游戏玩家和 AI/机器学习开发者来说至关重要。
- 游戏性能:通过预配置的驱动程序,NVIDIA 显卡能够充分利用 Vulkan API 和 DirectX 12 的优化,使得在 Linux 上玩游戏变得更加可行。Steam 的 Proton 兼容性层在 21.10 时期已经非常成熟,许多 Windows 游戏可以流畅运行。
- AI/ML 开发:对于使用 CUDA 和 cuDNN 的开发者来说,手动配置 NVIDIA 驱动程序和 CUDA 工具包可能是一个漫长而痛苦的过程。Pop!_OS 的预配置版本消除了第一步的障碍,让开发者能够更快地进入代码编写阶段。
System76 的硬件哲学:软件与硬件的共生
System76 不仅仅是一个软件公司,他们也是硬件制造商。他们出售 Thunderduster、Darmok、Oryx 和 Lemur 等系列的笔记本电脑和台式机。这种独特的商业模式影响了 Pop!_OS 的开发方向。
Pop!_OS 21.10 中的许多优化都是针对 System76 的硬件进行的。例如:
- 电源管理:System76 的电源管理守护进程(pop-power-profiles-daemon)在 21.10 中得到了进一步优化。它提供了“平衡”、“性能”和“节电”三种模式,并且能够根据系统负载动态调整 CPU 频率和 GPU 状态。这对于笔记本电脑用户来说意味着更长的电池寿命和更好的性能表现。
- 风扇控制:System76 的硬件通常配备有可定制的风扇曲线。Pop!_OS 提供了一个图形界面工具,允许用户根据不同的工作负载调整风扇转速。在“性能”模式下,风扇会保持较高的转速以确保散热;在“节电”模式下,风扇会尽可能安静。
- 硬件兼容性:由于 System76 生产自己的硬件,他们能够与上游 Linux 内核开发人员密切合作,确保他们的硬件在最新的内核版本中得到及时的支持。这意味着当 Pop!_OS 21.10 引入内核 5.13 时,System76 的硬件几乎可以立即获得最佳性能。
软件生态:从 Snap 到 Flatpak
Ubuntu 长期以来对 Snap 包格式的支持,一直是 Linux 社区中一个有争议的话题。Snap 包虽然便于分发和更新,但它们往往占用更多的磁盘空间,启动速度较慢,并且与系统的集成度不如原生包格式。
Pop!_OS 21.10 做出了一个明确的选择:减少对 Snap 的依赖,转而大力推广 Flatpak。
- 默认应用商店:Pop!_OS 的应用商店基于 Flathub,这是一个巨大的 Flatpak 应用仓库。用户可以轻松地在商店中搜索、安装和更新应用程序,而无需担心依赖关系或包格式的问题。
- 原生包保留:对于核心系统组件和需要高性能的应用,Pop!_OS 仍然保留了对 APT 包管理的原生支持。用户可以使用
apt命令或aptitude工具来管理软件包,体验与 Ubuntu 类似,但更加精简和高效。 - 第三方软件源:Pop!_OS 允许用户轻松添加第三方软件源,包括 Flatpak 的多个远程源。这使得用户可以根据自己的需求扩展软件生态,而不必局限于 Snap 商店中的有限应用。
面向开发者的工具链:预装的利器
Pop!_OS 从一开始就被设计为一款面向开发者的操作系统。21.10 版本中,System76 预装了许多开发者常用的工具,并且对这些工具进行了优化。
- VS Code 和 JetBrains 系列:Pop!_OS 的 Flatpak 商店中提供了 VS Code 和 JetBrains 系列 IDE 的预配置版本,用户可以直接从应用商店安装,无需手动下载和配置。
- Git 和 GitHub CLI:作为版本控制的核心工具,Git 和 GitHub 的命令行工具(gh)在 Pop!_OS 21.10 中都得到了最新版本的支持。用户可以轻松地进行代码版本管理、创建 Pull Request 和管理 Issues。
- Docker 和 Podman:容器化技术在现代软件开发中不可或缺。Pop!_OS 提供了 Docker 和 Podman 的安装指南和预配置脚本,帮助用户快速搭建容器化开发环境。
- Python 和 Jupyter:对于数据科学家和机器学习工程师,Pop!_OS 21.10 预装了最新版本的 Python 和 Jupyter Notebook。用户可以直接在浏览器中运行 Python 代码,进行数据可视化和分析。
安全性与隐私:不被忽视的基石
虽然 Pop!_OS 是一个用户友好的操作系统,但它并没有忽视安全性和隐私。在 21.10 版本中,System76 采取了几项措施来增强系统的安全性。
- 默认启用安全启动:Pop!_OS 21.10 支持 UEFI 安全启动。用户在安装时可以选择启用安全启动,这样系统只允许加载经过签名的内核模块和引导加载程序,防止恶意软件的注入。
- Firewall 配置:Pop!_OS 提供了一个简单的防火墙配置工具,用户可以轻松启用或禁用 iptables 防火墙规则。这对于保护个人计算机免受网络攻击非常重要。
- 隐私保护:System76 承诺不收集用户的个人数据。Pop!_OS 21.10 中的系统遥测功能是可选的,并且默认关闭。用户可以在设置中自由选择是否发送匿名使用数据给 System76,以帮助他们改进产品。
升级体验:从 20.10 或 21.04 到 21.10
对于那些已经在使用 Pop!_OS 的用户来说,升级到 21.10 的过程通常非常顺利。System76 提供了多种升级方式:
- 图形界面升级:用户可以通过系统设置中的“软件更新”工具,直接下载并安装 21.10 的更新包。这种方式最简单,适合大多数用户。
- 命令行升级:对于高级用户,可以使用
pop-upgrade工具进行命令行升级。这个工具会检查系统兼容性,备份关键数据,并执行完整的系统升级。 - 干净安装:如果用户遇到复杂的依赖问题,或者希望获得一个全新的系统体验,可以选择备份数据后进行干净安装。Pop!_OS 的安装程序提供了详细的分区指南,帮助用户安全地安装新系统。
无论选择哪种方式,System76 都提供了详细的文档和社区支持,确保用户能够顺利过渡到新版本。
社区与未来:Pop!_OS 21.10 的遗产
Pop!_OS 21.10 虽然在版本历史中只是一个中间版本,但它为后续的 Pop!_OS 发展奠定了重要基础。它证明了基于 Ubuntu 的发行版可以通过深度定制,提供比上游发行版更好的用户体验。
更重要的是,21.10 展示了 System76 对于 Linux 生态的贡献。他们不仅提供了优秀的软件,还通过硬件销售支持 Linux 的发展,形成了一个良性循环。
随着时间推移,Pop!_OS 22.04 和 22.10 进一步巩固了这些改进,并最终在 24.10 中推出了完全独立的 COSMIC 桌面环境,标志着 Pop!_OS 从“Ubuntu 的定制版”向“独立的 Linux 发行版”的转变。但这一切的起点,都可以追溯到 21.10 那个平静的 November。
给小朋友的解释:为什么 Pop!_OS 这么特别?
想象一下,你有一个非常棒的玩具屋(这就是 Linux)。大多数时候,这个玩具屋是按照别人的图纸(Ubuntu)建造的,图纸很好,但有时候会让你觉得不够顺手。
Pop!_OS 就像是 System76 叔叔阿姨根据你自己的喜好,对玩具屋进行的一次大改造。他们把门做大了一点(更好的窗口管理),把玩具架放得更顺手了(预装的开发工具),还特别为你准备了一个可以玩 NVIDIA 超级赛车的角落(NVIDIA 驱动支持)。
而且,他们不会偷偷告诉别人你在玩具屋里玩了什么(隐私保护)。所以,如果你是一个喜欢玩积木(编程)、搭城堡(设计)或者开快车(游戏)的小朋友,Pop!_OS 21.10 会是一个让你感到非常舒服和自由的地方。
它不像其他一些玩具屋那样复杂难懂,而是专门为像你这样有创造力、喜欢探索的小朋友设计的。这就是为什么很多人喜欢 Pop!_OS,尤其是那些想要开始学习计算机、设计或者科学的小朋友。
总结:不仅仅是一个发行版
Pop!_OS 21.10 的发布,是 Linux 桌面发展史上的一个重要节点。它不仅仅是 Ubuntu 的另一个克隆,而是 System76 对于“什么是理想的 Linux 桌面”这一问题的独特回答。
通过深度定制 GNOME 桌面、优化 NVIDIA 驱动支持、推广 Flatpak 生态、以及紧密的软硬件协同,Pop!_OS 21.10 为开发者、游戏玩家和数据科学家提供了一个开箱即用、高效且友好的工作环境。
虽然它已经不再是最新的版本,但其设计理念和用户体验仍然值得今天的 Linux 用户去了解和借鉴。如果你想体验一个真正“以人为本”的 Linux 发行版,追溯 Pop!_OS 21.10 的历史,将会是一个非常好的起点。它展示了 Linux 不仅仅是技术爱好者的玩具,更是可以被大众接受和喜爱的操作系统。