22作者: bwm8 天前
大家好!很高兴推出 machine0,一个易于创建、配置和快照持久化 NixOS(和 Ubuntu)虚拟机的命令行工具。 您可以将 machine0 视为一个现代化的 VPS 提供商。虚拟机将保持运行状态,除非被关闭(拥有 99.99% 的可用性),它们拥有静态 IP 和 HTTPS 端点,提供 1-60 个 vCPU,最高 240GB RAM,并可选配 GPU。该 CLI 提供了管理生命周期、快照以及使用 Nix flakes 或 Ansible playbooks 配置虚拟机的命令。虚拟机按使用时长计费。 machine0 的独特之处在于它对 NixOS 提供了头等支持!简而言之,NixOS 允许您将整个操作系统定义为代码(类似于 Terraform,但用于 Linux)。一个 flake 声明您的系统状态(软件包、服务、防火墙规则、用户等),并通过锁定文件固定所有依赖项。给定相同的 flake.nix 和 flake.lock,`nixos-rebuild switch` 始终会生成完全相同的系统。 NixOS 生态系统已经成熟,并且 flakes 非常强大:在系统层面,您可以定义软件包、`/etc` 目录的内容、防火墙规则、用户和组等。在用户层面,您可以定义您的 shell、别名、tmux 和 vim 配置。将整个环境定义为代码,可以轻松审计已安装的内容以及系统的配置方式。您可以通过回滚最后一个提交来恢复到之前的状态。代理可以为您编写代码,并在一次性的 machine0 虚拟机上进行测试。 如果您想立即开始,以下命令将帮助您入门: ```bash npm install -g @machine0/cli machine0 new my-vm --image nixos-25-11 # 创建一个新的 nixos 虚拟机 machine0 provision my-vm ./flake#my-profile # 使用 nix flake 进行配置 machine0 ssh my-vm # SSH 登录 machine0 stop my-vm # 停止虚拟机 machine0 images new my-vm my-snapshot # 创建一个快照 machine0 new my-clone --image my-snapshot # 从快照创建新虚拟机 ``` - 通过 Claude Code 进行安装 + NixOS 配置演示:[https://www.youtube.com/watch?v=RT8N0_e3Vfg](https://www.youtube.com/watch?v=RT8N0_e3Vfg) - 文档:[https://docs.machine0.io/introduction/overview](https://docs.machine0.io/introduction/overview) - machine0 NixOS flakes:[https://github.com/fdmtl/machine0-nixos](https://github.com/fdmtl/machine0-nixos) 如果您习惯使用虚拟机,或者想了解 NixOS 的热门之处,我们非常欢迎您尝试 machine0!
3作者: vipulag8 天前
我以前经常在 HN 和 Github 之间来回切换,寻找热门的仓库。现在我可以在一个地方看到所有这些内容了。而且它还会自动更新。
1作者: kinduff8 天前
各位 HN 的朋友们: 自从我发布了“像素年”(Year in Pixels)[1] 之后,我脑海里就一直萦绕着一个想法。我一直在往这个应用里添加一些小功能,现在它已经足够完善,可以分享给大家了。 每天进行追踪对人的思维方式有着非常有趣的影响。虽然我已经有了一些追踪睡眠、心率等其他一切事物的应用,但我仍然缺少一个追踪我情绪的应用。每天思考几次自己的感受,这个简单的行为本身就会带来改变。这是一种反思的时刻。 我选择添加了占星、习惯打卡以及其他一些有用的功能。希望你们和我一样喜欢它。 此致, @kinduff [1]: https://news.ycombinator.com/item?id=16199871
1作者: xiaoyu20068 天前
我不得不承认,最新的模型和辅助工具已经做得非常出色,即使是普通的提示也能很快生成可用的代码,这就像“许愿式编程”。 问题更多出在我这边,而不是 LLM 方面。我感觉我 1) 对我的项目失去了控制,甚至是我的业余项目,因为 LLM 生成代码的速度太快了,而且 2) 我懒得手动审查所有代码,即使我确实掌握了整体架构设计和有时直接用自然语言写的伪代码。但自然语言,顾名思义,不是形式化的,而编程是将非正式需求转化为正式语言的过程。这与软件工程中通过导入库等方式来降低复杂性的抽象化是根本不同的。其结果是,不深入细节的实现会加剧失控感和不自信感。 这可能读起来不像一篇连贯的投稿,因为它只是我一些随机的、令人不安的想法,但我相信至少有一些像我一样的 HN 用户有(过)同样的感受。你们对此有什么看法?