我为什么对 Omarchy 有意见:它和 Arch 的精神背道而驰
My Problem with Omarchy Is What I Like About Arch
一位 Arch 用户批评 Omarchy 把配置、决策和排错都打包成开箱即用的成品,削弱了用户理解系统的动力。他认为 Omarchy 本身做工扎实、也允许自由修改,但其宣传过度强调"省去学习",而 Arch + Hyprland 完全可以按需自己搭建。
我最喜欢使用 Arch 的地方,也正是人们不断试图把我从中拯救出来的地方。动手设置,搞错,读文档,最终明白它为什么能工作。我来到 Linux 并不是为了换一个不同的桌面。我想知道我的电脑在做什么。
所以当有人把整套体验打包成一个现成的配置时,我理解它的吸引力。但当接下来的承诺是 AI 可以处理我不懂的东西时,我开始琢磨,这给我提供的是怎样一种与电脑的关系。我想要的,是变得更有能力自己照料它。
这就是我对 Omarchy 的疑虑所在。它看起来不错。显然投入了大量工作让各个部分配合起来。但我认为它的宣传过于看重我能避免学到什么,而太少看重我能学会掌控什么。自己做出这些决定,正是我当初想要 Arch 的重要原因。
是的,这会是一个 Arch 用户解释他为什么喜欢配置东西。标题已经给了你充分的预警。
我拖了一段时间才写这篇文章,因为我真的不想成为那种对 Linux 感到兴奋的人说“你做错了”的家伙。我喜欢 Omarchy 在吸引新人方面带来的势头。如果有人安装了它,用得开心,终于觉得使用 Linux 很自在,我为此高兴。我最不想要的就是助长那种消极情绪,让他们怀疑自己何必费这个劲。
所以,如果 Omarchy 是你来到这里的方式,欢迎。我希望你留下来。我想主张的是迈出下一步,对你安装的系统产生好奇,看看你能把它变成多少属于自己的东西。这是我最享受的部分,我不希望“轻松配置”的承诺让它听起来像是什么值得回避的事。
我想知道为什么
看着自己的配置,并且知道它为什么是这样,这有一种满足感。窗口管理器是你选的。你知道快捷键配置在哪里。那个略显奇怪的行为之所以存在,是因为你为了适应自己的工作方式改了点什么,而且你记得自己改了什么。
它不必多么了不起。不需要别人也想要你的配置。你理解它,当你想让它表现不同时,你大致知道从哪里开始。
这对我来说比拥有一个截图里好看的桌面更重要。我当然也喜欢漂亮的桌面,我在 zenkai 的主题上花了足够多时间,已经没资格假装不是这样。但我想理解它底下的东西。
有些理解来自好奇。有些来自一个远没那么高尚的地方:某件事烦得你够呛,你终于去弄清楚怎么改它。你读到一个你不知道存在的选项,找到控制它的文件,突然之间系统的又一部分变得清晰了。
那天晚上你也许本来没打算学任何东西。你只是想让你的快捷键能用。但现在你知道了些东西,下次遇到问题时就能用上。
一个完成的桌面是别人的起点
Omarchy 自己的宣传是一个已经为你选好工具和细节的可用系统。它也明确说你可以自由更改一切。源代码是公开的,所以我不会假装这是个锁死的设备,或者安装它就剥夺了你编辑配置文件的许可。
你可以把它当作起点,从中学习。阅读一份可用的配置很有用。我批评的是它所推销的方向,而不是声称每个 Omarchy 用户都接受它或停止学习。
但你也可以止步于那个现成的桌面。一切都能用,选择看起来也合理,而且没有特别的理由去探究是什么让它运转起来。学习的机会仍然存在。只是那些会推着你去抓住它们的原因变得不那么紧迫了。
我认为这正是 Omarchy 的卖点不足之处。它非常强调省去配置、决策和排错。这些确实可能令人沮丧,但把它们主要当作要消除的问题,就低估了你能从中学到的东西。我希望看到的是,在帮助人们理解系统方面,能有和帮他们越过理解需求一样多的热情。
当然,有正事要做的人可能会乐于接受这种取舍。我在很多工具上也是如此。但这是一个取舍,而且我不认为更短的安装过程能告诉我们多少关于当我们想要默认配置未曾预料到的东西时,我们会觉得自己多有能耐。
不过对我来说,被交给一个所有有趣的决策都已经做好的配置,会让人觉得相当无聊,即使结果很漂亮。我想尝试各种东西,不认同那些默认值,并弄清楚自己真正喜欢什么。得到一个可用的桌面从来都不是整个项目的全部。
一个有主见的桌面也意味着在你弄清自己的偏好之前,先采纳了别人的偏好。这可能有帮助,但一旦你开始不认同那些选择,它就不会自动变得更简单。这时你就得了解底层工具是做什么的,以及这套精心挑选的配置是如何把它们连接起来的。复杂性并没有因为你安装时没遇到它就消失。
你可以自己把这些拼起来
Omarchy 不是什么黑魔法。整合一个桌面并为他人维护它需要实实在在的工作,我不想否认这一点。但你不必为了搭建一套适合自己的 Arch 和 Hyprland 配置,就把 Omarchy 附带的一切都重新造一遍。你只需要自己真正想要的那些部分。
我认为这比人们说的要容易上手得多。从一份可用的 Arch 安装开始,跟着 Hyprland 教程走。打开一个终端,配置你的显示器,选几个快捷键。然后添加你需要的东西:启动器、通知,如果你想要的话再加个状态栏。你不需要先拥有别人的整个桌面,才能开始使用你自己的。
硬件可能会让事情变复杂,第一次安装会比第五次花更长时间。但选择终端、更改快捷键和调整配置文件都是你能学会的事情。你不需要多年的 Linux 经验才有资格尝试。基本的个人配置可以相当直接;把每一种颜色和动画都调成你想要的样子,才是你可以愉快地变成爱好的部分。
而且它不必看起来像别人的。也许你不想要状态栏。也许你想要不同的快捷键、更少的动画,或者一个行为不同的启动器。你可以一个一个地做这些决定,到最后你会知道每一部分为什么在那里。
这是一种实用的所有权。当某个快捷方式失效时,你知道自己在哪里定义了它。当你想替换一个程序时,你知道什么在调用它。你可以把配置保存在 Git 中,看到自己改了什么,并在实验失败时回退。你花在设置上的时间,会在下次需要改动时为你换来一些独立性。
便利可能变成依赖
对我来说,所有权包括能够不同意工具制作者的做法。我想移除他们喜欢的东西,保留他们不喜欢的东西,并在不等待他们首选方案的情况下修复问题。拥有做这些事的许可很重要。而拥有足够的理解去真正做这些事,才让这份许可变得有用。
Omarchy 不必夺走前者,就足以让我担心后者。如果每一次改动都要经过菜单或智能体,你最终可能会得到一台被允许修改、却并不真正知道如何排查的电脑。当某个东西停止工作时,你的下一步就是向同一个工具再要一个修复。
这种情况在手动安装的 Arch 系统上也可能发生。复制你不理解的命令,并不会因为你把它们敲进了终端就神奇地具有教育意义。而一个好的图形工具,可能比一页没有解释的 shell 命令更能说明它在做什么。界面并不是决定性因素。
想象一下,你替换了启动器,却发现旧的启动器仍然能从某个快捷方式打开。如果你知道这个绑定在哪里、是什么启动了该程序,这就是你可以排查的事情。如果你唯一的办法是让智能体去修复,你就必须相信它找到了真正的原因,而不是在周围又加了一个改动。你可能找回了快捷方式,却丝毫没有更理解自己的系统。
这就是我所担心的所有权的丧失。文件仍然可以属于你,而你对其做出决定的能力却依赖于别的东西。不需要有人把你锁在外面,你也会感到没有帮助就无法继续。
这就是我一直在 AI 问题上重复的同一个论点
在 We Were Not All Terrible Developers 中,我写到过这样一种观点:生成代码消除了对理解代码的开发者的需求。这让我感到困扰,原因是一样的。得到一个能用的结果,和学到足够多、能为这个结果负责,是两种不同的成就。
Omarchy 现在把这种联系表现得相当直接。它的 主页 提倡使用智能体来排查和改动系统。这可能有用。一个能帮你读日志、解释相关配置并让你检查其推理过程的智能体,可以教你很多东西。
但这种交互还有另一个版本:你描述问题,接受改动,然后因为又能用了就继续下去。这样重复足够多次,你就可能积累大量改动,却不太理解它们之间如何相互关联。
而且我认为 Omarchy 在推销这种便利上用力过猛。它的主页甚至写着“能调试所有问题的智能体”。所有问题?这期望设得可真够高的。在宣布问题解决之前,我会想检查改了什么,并测试它是否解决了根本原因。最终带着这些改动的仍然是我的机器,而当第一个修复被证明不完整时,我仍然得忍受它们。
一个 agent 表现得自信,并不能帮我判断它是否正确。如果我无法理解它的解释,或者看不出一个不相关的改动,那我就是在批准自己并不理解的工作。让第二个 agent 来批准它,同样不能给我这种理解。
下一次出问题的时候,我学到了什么能帮我修复它的东西?
这就是我对那种“我们可以跳过所有困难部分”的承诺感到沮丧的地方。有些困难部分只是繁琐,我很乐意把它们自动化。另一些困难部分,则是你培养识别糟糕解释、质疑假设,或者判断出所提议的修复与问题毫无关系的能力的地方。
你不会因为工具给了你一个详细的答案,就自动获得这种判断力。你是通过钻研、检查,有时发现自己错了,才培养出它的。我想要能帮我做到这一点的工具。当理解被呈现为一种我不再需要费心的东西时,我就远没有那么兴奋了。
见鬼,用 AI 来帮你搭建你的环境吧。让它引导你。问它哪个组件负责某个行为,哪个文件控制它,以及为什么某个特定设置会改变它。让它给你一个文档链接,好让你去核实。做一处改动,试一试,看看你是否理解了结果,然后再继续。
你完全可以直接告诉它:
帮我一步一步地设置 Hyprland。在我运行之前,解释这些选择和命令。告诉我如何检查每一处改动并撤销它。我想理解我的配置,所以不要直接给我生成一套完整的设置。
这在我看来是对 AI 的绝佳运用。当文档假定你已经具备某些你还没有的知识时,你有东西可以问,而且你仍然要去做决定、去理解发生了什么。关键在于你在这个过程中变得更有能力。如果你完成了设置,并且能自己解释如何修改它,那你收获的就不只是一个漂亮的桌面了。
让便利成为可选项
我在 zenkai 中使用 Qt,因为我不想自己写一个 GUI 工具包。但当我需要理解启动器为什么慢时,我不得不去研究 Qt 在做什么。抽象层帮我省了事,但它并没有免除我去理解我的应用所依赖的行为的责任。
这也是我对我的桌面所期望的。帮我上手,但让我更有能力接手。菜单可以显示它所编辑的配置。agent 可以在应用改动之前解释它,并在之后告诉我如何验证。文档可以让替换默认工具变成一件平常的事。
这些就是我会放在宣传核心位置的东西。能够不再依赖某种便利,是一个值得推销的特性。我想听到的是,我可以学会管理自己的系统,而不只是总有另一个东西可以替我管理它。
如果我们唯一庆祝的进步,是一个工具让我们能避开多少知识,那么最终,那个试图理解自己电脑的人,看起来就像是在浪费时间。我认为这对 Linux 来说是一个糟糕的方向,而 AI 让我们很容易一直朝这个方向走,却察觉不到我们放弃了什么。
我想从 Linux 得到什么
我希望 Omarchy 的新用户能留下来。我也希望他们发现,表象之下的系统是触手可及的。他们可以阅读配置、替换启动器、更改快捷键,并构建出更适合自己的东西。他们不必等到成为专家才开始变得更加独立。
Omarchy 是鼓励这种做法,还是让人觉得没必要这么做,将决定我如何看待它对 Linux 的贡献。把人带进来是好事。但教他们遇到每个不熟悉的问题都依赖一个 agent,会是个糟糕的后续。
所以没错,我对 Omarchy 以及围绕它的 AI 宣传持批评态度。我想要的不仅仅是一台只要默认设置和 agent 配合就能按我要求行事的机器。我想要的是足够理解它,以便在它们不配合时能接手。
我选择 Linux 是因为我想要那种掌控权。一个更漂亮的、把掌控权交出去的方式,并不是我在寻找的。
感谢你花时间和耐心阅读这篇文章
来源:Hacker News · dayvster.com