惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
B
Blog RSS Feed
Microsoft Azure Blog
Microsoft Azure Blog
J
Java Code Geeks
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Google DeepMind News
Google DeepMind News
F
Fortinet All Blogs
V
V2EX
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Engineering at Meta
Engineering at Meta
月光博客
月光博客
阮一峰的网络日志
阮一峰的网络日志
M
MIT News - Artificial intelligence
IT之家
IT之家
博客园 - 【当耐特】
U
Unit 42
云风的 BLOG
云风的 BLOG
L
LangChain Blog
小众软件
小众软件
Microsoft Security Blog
Microsoft Security Blog
B
Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
宝玉的分享
宝玉的分享
N
Netflix TechBlog - Medium

静观小窗

P12632 This Is Sparta!:数据会自己坍塌 P14445 Follow the Sequence 解题记录:从“无限复制路径”到“离散射线” 构造题怎么想才不容易乱:骨架、接口、余量与收口 一个有趣的项目背后的难点--MC的3D皮肤生成器 power by Qwen 博客俱乐部,最有社区氛围的中文博客联盟 文化决定语言,语言决定思想:我们赖以生存的隐喻(读后感) 我开发了一款博客图片压缩工具,支持PicGo一键压缩上传 寻找网络友邻 整合全网102个二次元动漫随机图片API接口,2025年十月最新 宋代的遗憾 搭建个人起始网站,便于控制浏览器使用和时间规划 Google Gemini CLI 免费安装配置指南:支持Gemini 2.5 Pro (2025最新) 我的NS2使用体验记录,为什么因为马里奥派对空前盛会入坑 关于秦制的个人理解,为什么秦制在我看来是功过鲜明的必然 拜访一个人,在千年之后 Vercel/Netlify国内加速:EdgeOne免费CDN优选IP实战指南 C/C++程序员必看:JavaScript核心概念深度解析(动态类型、原型链、事件循环) C/C++程序员转向JavaScript:一份超详细的语法映射与避坑指南 从C++到JS:函数、this与闭包的核心差异与实践指南 VSCode配置JavaScript开发环境:Node.js安装与调试指南 C/C++程序员必看:JavaScript变量与作用域深度解析(从var到const) 博客迁移实战:从WordPress到Next.js的零成本高性能之路 《原则》读书笔记:如何将瑞·达利欧的智慧应用到日常 MATLAB入门教程:面向C++/OIer的数据可视化与科学计算指南 LaTeX公式与三线表教程:从入门到精通的排版指南 软路由远程访问提速:SMB压缩与50M上行优化实战 Hyprland 安装与配置超详细教程 (Arch Linux):含 Waybar 及一键脚本 Linux文件系统与磁盘分区:从入门到精通的实战指南 Guide to Installing a USB WiFi Adapter on OpenWrt (LuCI) 阿里云CentOS 9服务器从零到一:安全配置与宝塔面板安装指南
NixOS深度评测:一个六年Linux用户的初体验,为何惊艳的设计...
间窗 (Vindo) · 2025-10-10 · via 静观小窗

NixOS初体验:一个Linux老用户的困惑与思考

到2025年,我使用Linux系统已经有六年了。在大部分时间里,Linux都是我的主力开发工具。虽然我偶尔也尝试将它作为日常使用的系统,但最终还是回归了它最擅长的开发场景。

我第一次把个人电脑换成Linux是在2020年,当时装的是Ubuntu。和很多人一样,这是我的Linux第一站。Ubuntu系统设计简洁,用起来很顺手,所以直到现在,如果我有一些对稳定性要求很高的设备,我还是会选择安装它。

更早之前,我在参加信息学竞赛时用过虚拟机跑Linux。那时的使用程度非常浅,甚至一度很害怕打开VIM,因为总是不记得该怎么退出。有趣的是,很多年后我反而喜欢上了Neovim,也算是一种特别的缘分。

后来,我开始使用Arch Linux。当时我对Arch抱有极大的向往,那种感觉甚至比现在对NixOS还要强烈。不过,Arch的实际上手并不算困难,也正是它,让我第一次真正体验到了Linux的强大之处,尤其是它由社区驱动的软件生态,优势非常明显。这种纯粹因为喜爱一个系统而去折腾它的感觉,是我在安卓刷机、NAS、Windows上从未有过的,比第一次用Ubuntu时的感觉要强烈得多。

Arch的滚动更新机制也很好地解决了软件版本和信息滞后的问题。虽然现在有了大模型,搜索信息的方式变了,但当时Arch社区活跃的互动氛围,对我来说是一种前所未有的体验。可以说,Arch已经不仅仅是一个操作系统了。

我最初听到NixOS,是因为一些“系统级原神”、“xnn”之类的网络热梗。但抛开这些标签,NixOS最核心的亮点,是它与众不同的设计哲学。

NixOS和市面上其他Linux发行版在设计上有根本性的区别。虽然实际用起来可能会发现很多不完善的地方,但只要我们只讨论它的设计理念,就会发现NixOS是多么的惊艳。

它的核心优势包括:

  • 原子化更新:系统每一次更新都会生成一个独立的版本,可以随时回滚,这让系统变得极其稳定。
  • 声明式配置:整个系统都可以通过一个配置文件来定义,真正做到了“一个文件就是一个系统”,方便管理和迁移。
  • 完美复现:因为是声明式配置,所以你可以在任何一台电脑上,快速复现出完全一致的系统环境。
  • 强大的社区包管理:Nix社区的软件仓库(Nixpkgs)非常庞大和活跃,分享和使用软件都很方便。

这些特性让NixOS看起来像一个划时代的、非常专业的操作系统。只要理解了它的设计,就很难不被它吸引。

但是,这份欣赏在我第一次实际体验后就迅速冷却了。我预想到了它会有学习门槛,但没想到阻力这么大。从安装软件开始我就感觉很不适应,直到我为了配置一个编辑器,反复修改了多次配置都不生效时,我才意识到,自己和这个系统之间还有很长的路要走。

就这样,最初的佩服变成了一种“我知道你很好,但我用不来”的敬而远之,感觉就像一座刚建好的桥,还没等我走上去就断了。

也许未来某个时候,NixOS会变得更容易上手,或者我有了更多的时间和精力去学习它,到那时我才可能真正拥抱它。但至少现在,我还没准备好去完全改变自己使用操作系统的方式。

e31a54d5265f4cf8b9ab09bad086405e_1

不过,我依然非常看好NixOS的未来。在接下来的人工智能(Agent)时代,它这种声明式、可复现的特性,可能会对下一代操作系统产生重要影响。它不需要成为Windows,它更像曾经的Unix,作为一个“教父”级别的存在,启发未来的系统设计。

至于我,未来肯定还会再次尝试NixOS,只是不确定那会是什么时候了。