笔记
0工具
0此页用于记录用户反馈问题后的每一次改进
关于
“写笔记”支持四种格式——Word 文档、Excel 表格、Markdown、纯文本,起稿或二次编辑时都能随时切换,同一篇笔记想用哪种形态来记,都由你说了算。
md、txt、csv、json 这类纯文本则原样载入,不做多余加工。拿一张现成的表倒进来、改几笔、再导出去,等于白用一台免费的格式转换器。
要带走就在右上角点“下载”,可导出 PDF、Word、Markdown、Excel、TXT 等格式;列表卡片“⋯”菜单里,也有同样的下载入口。
在“工具”页点“+ 上传工具”即可发布:填好名称与链接,再用 Markdown 把使用方法写清楚——能解决什么问题、怎么装、怎么用,比堆介绍实在。
要分发安装包就一并上传压缩包(ZIP、RAR、7Z、TAR.GZ,最大 35MB),别人在详情页一键下载;只放链接不带附件也可以。
工具按大家的收藏热度排序,好用的自然会被顶上来。发布后可在详情页或卡片菜单里编辑、下架。
写笔记时勾上“隐藏”,这篇就只存在于你自己的账号里:不进列表、不进搜索、不上首页精选,也不会出现在任何公开的页面,链接发给别人同样打不开。
适合放密码、草稿、日记这类只给自己看的内容;想公开,去“发布”打开它,把“隐藏”的勾去掉再保存,之后编辑会默认保持原状态,不会悄悄变回公开。
不想公开、只想临时给人看:点“分享”生成一条带密码和有效期的链接,到期自动失效,你也能随时撤销。
你的内容会同时保存在多个副本上,系统定期做备份与完整性校验,再配合异地容灾机制:就算某台机器出问题,数据也不会丢,可以长期放心存放;特别重要的资料,仍建议你另外再留一份备份。
全站跑在容器化、模块化的现代架构上,更新、部署、回滚都很快,扩展性和稳定性都按长期运营的标准来设计(Built for reliability, designed to scale)。
这个网站最早只是一个人的笔记仓库,后来慢慢长成现在的知识中枢。设计上很克制——没有广告、没有追踪、没有推荐算法,只是干干净净地存放一些东西;既然做好了,就公开出来,万一有人用得上呢。
不做大而全,不做平台梦,保持简单、保持克制、保持好奇。所有内容都由用户贡献、由用户维护:不会突然冒出付费墙,不会在角落塞广告位,也不会把你的数据卖给第三方。
产品会持续迭代,站内日志页记录着每一次改动,改了什么都有迹可循;想了解这个站是怎么一步步走到今天的,翻翻日志就能看到来龙去脉。
如果在这里看到涉嫌违规的内容,点对应卡片右侧的“举报”按钮就能提交,我们会尽快核实处理;也谢谢你花一点时间,一起把这里维护干净。
趋势
try-omarchy:零配置在 macOS 上体验 Omarchy 的 Swift 工具链
try-omarchy —— 无需任何设置,在 macOS 上直接运行 Omarchy 的 Swift 工具链。
项目背景:Omarchy 是什么?为什么需要 try-omarchy?
Omarchy 是一个基于 Nix 的声明式开发环境管理器,它允许开发者通过一个配置文件(omarchy.nix)来定义整个开发环境——包括编程语言、工具链、编辑器插件、Shell 配置等。它的核心理念是“可复现的开发环境”:同一份配置,在任何机器上都能得到完全一致的开发体验。
然而,Omarchy 有一个明显的门槛:它依赖 Nix 包管理器。Nix 在 Linux 上安装相对简单,但在 macOS 上,尤其是对于不熟悉 Nix 的开发者,安装过程可能涉及多步配置、系统路径修改、甚至需要重新启动终端或系统。很多开发者只是想快速尝试一下 Omarchy 的体验,却因为安装 Nix 的繁琐过程而放弃。
try-omarchy 正是为了解决这个痛点而生的。它由 themartiano 开发,用 Swift 编写,提供了一种“零配置、零依赖”的方式,让 macOS 用户无需安装 Nix,只需下载并运行一个可执行文件,就能在隔离的沙盒环境中完整地体验 Omarchy。
核心功能:如何做到“零配置”?
1. 自动构建轻量级 Nix 环境
try-omarchy 在内部使用了一个精简的 Nix 构建逻辑(通过 nix-store 的二进制缓存),它不会在系统上安装 Nix,而是将 Nix 的所有必要组件打包在一个临时目录中。运行 try-omarchy 时,它会:
- 下载预编译的 Nix 二进制(约 50MB)
- 创建一个隔离的挂载点(
/nix)——在 macOS 上,这通过mount_unionfs或类似机制实现,不需要修改系统分区 - 将 Omarchy 的配置(默认的
omarchy.nix)应用到该环境中 - 启动一个交互式 Shell,其中已激活所有 Omarchy 的默认工具(如 Neovim、zsh、git、fzf、ripgrep 等)
2. 一键运行,无需 sudo
在 macOS 上,传统 Nix 安装需要 sudo 创建 /nix 目录,而 try-omarchy 完全不需要管理员权限。它使用 --darwin-user-chroot 或类似技术,将 /nix 挂载到用户空间,从而避免了系统级修改。这意味着你可以在任何普通用户账户下运行,甚至不需要输入密码。
3. 完全隔离,不留痕迹
try-omarchy 创建的临时环境不会污染你的系统。当你退出该 Shell 后,所有临时文件都会被清理,/nix 挂载点也会被卸载。你的主目录、系统配置、已安装的软件都不会受到任何影响。
安装与使用:三步上手
安装(无需安装,直接运行)
try-omarchy 提供了预编译的 macOS 二进制文件(支持 Apple Silicon 和 Intel),你只需要从 GitHub Releases 下载并赋予执行权限:
bash
下载最新版本(以 v0.1.0 为例)
curl -L -o try-omarchy https://github.com/themartiano/try-omarchy/releases/download/v0.1.0/try-omarchy-darwin-arm64
赋予执行权限
chmod +x try-omarchy
运行(第一次会下载 Nix 二进制,需要网络)
./try-omarchy
如果你使用 Homebrew,还可以通过自定义 tap 安装(未来可能支持):
bash
brew install themartiano/tap/try-omarchy
使用示例
运行后,你会直接进入一个 Omarchy 环境,其中已经预装了以下工具(默认配置):
- Zsh 作为默认 Shell,带有 Oh-My-Zsh 和常用插件(zsh-autosuggestions, zsh-syntax-highlighting)
- Neovim 编辑器,预装 LSP 支持、自动补全、文件树等插件
- Git 配置了常用的别名和 diff 工具(如 delta)
- fzf、ripgrep、fd 等命令行效率工具
- Node.js、Python、Go 等语言运行时(根据配置)
你可以直接运行 nvim 来编辑文件,或者使用 zsh 的语法高亮。所有工具都经过 Omarchy 的配置优化,开箱即用。
bash
示例:在 Omarchy 环境中创建一个新文件并编辑
echo "print('Hello from Omarchy')" > test.py
python test.py
输出: Hello from Omarchy
查看预装工具版本
node -v # v20.11.0(示例)
自定义配置
虽然 try-omarchy 默认使用 Omarchy 的默认配置,但你也可以指定自己的 omarchy.nix 文件:
bash
./try-omarchy --config /path/to/your/omarchy.nix
这样,你可以利用 Omarchy 的声明式语法,定义自己需要的工具链,而无需在系统中安装任何东西。
核心亮点:为什么值得关注?
1. 极低的尝试门槛
对于想了解 Omarchy 但不想折腾 Nix 的开发者,try-omarchy 几乎是零成本体验。下载一个二进制,运行,即可进入一个完整的现代开发环境。这对于 macOS 用户尤其友好,因为 Nix 在 macOS 上的安装比 Linux 更复杂。
2. 安全性设计
由于环境完全隔离,即使 Omarchy 配置中有恶意脚本,也无法影响你的系统。这比直接安装 Nix 并全局应用配置要安全得多。
3. 快速迭代
try-omarchy 的构建过程非常快(通常在 30 秒内完成),因为它是从二进制缓存中拉取预构建的包,而不是从源码编译。这比传统的 Nix 构建(可能花费数分钟甚至数小时)效率高得多。
4. 跨版本兼容
try-omarchy 支持 macOS 12 及以上版本,并且同时支持 Apple Silicon 和 Intel 架构。它不依赖 Xcode 或任何额外的开发工具,只需要系统自带的 unzip 和 curl。
适用场景
- 技术尝鲜者:想体验 Omarchy 的声明式开发环境,但不想承担安装 Nix 的风险。
- 讲师/演示者:在演讲或教学中,快速展示 Omarchy 的功能,而无需提前配置环境。
- CI/CD 测试:在 macOS 的 CI 环境中,临时测试 Omarchy 配置是否有效,而不会污染构建机器。
- 多项目隔离:每个项目使用不同的 Omarchy 配置,通过 try-omarchy 分别启动,实现环境隔离。
同类项目对比
| 项目 | 方式 | 优点 | 缺点 |
|---|---|---|---|
| try-omarchy | 预编译二进制 + 临时 Nix 沙盒 | 零配置、无 sudo、快速、隔离 | 仅限 macOS;不支持持久化环境 |
| Nix 官方安装脚本 | 系统级安装 Nix | 完整功能,可持久化 | 需要 sudo、修改系统、学习成本高 |
| Homebrew + nix | brew 安装 Nix | 相对简单 | 仍需配置 /nix 权限,且可能冲突 |
| Docker + NixOS | 容器运行 NixOS | 完全隔离 | 需要 Docker,性能开销大,且非原生 macOS 体验 |
| devbox(Jetpack) | 自动安装 Nix 并管理项目环境 | 跨平台,支持持久化 | 需要安装 Nix 本身,且配置语法不同 |
try-omarchy 的独特之处在于它完全不需要预先安装 Nix,而是将 Nix 作为临时依赖。这使得它成为所有“零安装”方案中最轻量的一种。
技术实现细节(深度解析)
try-omarchy 的 Swift 源码主要包含以下几个模块:
- Downloader:负责从 Nix 官方二进制缓存下载
nix可执行文件,并校验 SHA256 哈希。 - MountManager:利用 macOS 的
mount命令(配合-o union)创建用户空间挂载点,避免修改系统卷。 - ConfigApplier:解析
omarchy.nix,调用 Nix 的nix-env或nix profile安装所需包,并生成zshrc和nvim配置。 - SandboxLauncher:通过
chroot或sandbox-exec启动一个受限的 shell,在该 shell 中设置PATH、HOME等环境变量,指向临时目录。
这种设计的巧妙之处在于,它利用了 Nix 的“无根安装”特性(Nix 本身支持在任何目录下运行,只要 /nix 存在),而 macOS 的 mount_unionfs 允许将一个普通目录当作 /nix 挂载,从而避免了对根目录的写操作。
局限性与未来展望
- 仅限 macOS:目前不支持 Linux,但作者表示未来可能支持,因为 Linux 上 Nix 安装相对容易,但也可以提供类似的无安装体验。
- 临时环境:退出后所有更改丢失,不适合需要长期保存的开发环境。但 Omarchy 本身支持持久化配置,你可以将
omarchy.nix保存到项目仓库中,每次启动 try-omarchy 时重新应用。 - 网络依赖:首次运行需要下载约 100MB 的二进制和包,但之后会缓存到
~/.cache/try-omarchy,再次运行无需下载。
结语
try-omarchy 是一个精致的工具,它解决了开发者“想尝试新工具却不想折腾”的普遍痛点。它并不是要替代 Nix,而是作为 Nix 生态的“试吃装”,让更多人在 5 分钟内体验 Omarchy 的魅力。如果你是一名 macOS 开发者,对声明式环境管理感兴趣,或者只是厌倦了手动配置开发环境,强烈建议尝试一下 try-omarchy。