nixmac icon

nixmac

nixmac 是一款 macOS 組態管理工具,可將自然語言需求轉為 Nix 系統變更,協助建立、套用並追蹤可重現的 Mac 設定,支援 git 歷史與安全檢查。

nixmac

概覽

Nixmac 是一款建構於 nix-darwin 的 macOS 組態管理工具。它的核心工作是將你想要的 Mac 以自然語言描述轉為 Nix 程式碼,建立該組態,並安全地套用到系統。

這項產品鎖定想要可重現、可版本控管的 Mac 設定,但不想手動撰寫每個細節的人。首頁展示兩種起始路徑:從合適的範本建立新的 flake,或匯入既有的 flake 並從那裡繼續。

它也包含一套 AI 推論流程,用於產生組態變更。使用者可以使用代管模型、自備 API 金鑰,或用 Ollama 在本機執行,然後在變更套用並提交至 git 前先檢視逐行 diff。

功能

自然語言組態

用自然語言描述你想要的 Mac,Nixmac 會撰寫 Nix、建置它,並套用到系統。這個流程旨在減少手動編輯,同時仍會顯示產生的組態。

以範本建立 flake

Nixmac 可根據範本建立可運作的 flake,選項包含 nix-darwin 搭配 Determinate、nixos-unified 或 flake-parts。這有助於使用者以預期可在第一次就順利建置的結構開始。

匯入既有 flake

如果你已經用 Nix 管理 Mac,Nixmac 可以指向既有的 flake,並從那裡繼續。它可以自動偵測 flake.nix 檔案,也可接受本機資料夾或 flake 參照。

唯讀匯入自訂項目

Nixmac 會執行唯讀命令來偵測你已在 Mac 上變更的設定、套件與服務,包括 defaults、brew list 和 launchctl 等指令。這些發現會整理成可採用的程式碼。

即時建置可視化

建置進度會即時串流,包含評估 flake、建置套件、從快取擷取、編譯與啟用組態等階段。頁面強調建置會端到端驗證。

安全套用、回復與漂移追蹤

變更會以原子方式透過 darwin-rebuild switch 套用,而頁面也指出若建置失敗,執行中的系統不會改變。每次套用都會以附有 AI 撰寫語意訊息的 git commit 保存,且漂移偵測可在之後找出手動變更。

使用情境

  • 開始新的 Mac 設定

    當你正在設定一台新的 Mac,並希望有可重現的組態,而不必從零設計 flake 結構時,使用 Nixmac。範本路徑會建立可運作的 flake,並專注於快速到達可建置的設定。

  • 採用既有的 Nix 組態

    如果你已經有一台由 Nix 管理的 Mac,且想保留現有成果,請使用匯入流程。Nixmac 可以偵測既有 flake、讀取目前的自訂內容,並將其轉為可追蹤的程式碼。

  • 用一句話變更組態

    當你知道想要的結果,但不想手動編輯 Nix 檔案時,請使用自然語言流程。你描述變更、檢視產生的 diff,然後在確認建置後套用。

  • 安全檢視並套用系統變更

    當你希望在系統變更期間有更高的可視性時,請使用即時建置與回復行為。此工具會顯示重建的每個階段,然後以原子方式套用結果,因此建置失敗不會覆寫執行中的系統。

  • 追蹤變更並管理漂移

    當你想保留隨時間累積的變更記錄時,請使用以 git 為基礎的歷史與漂移偵測。手動編輯可以被偵測到,之後也可納入設定或還原。

Pros and Cons

Pros

  • 以自然語言輸入,可降低例行變更所需的手動 Nix 編輯量。
  • 使用者可以從範本開始或匯入既有 flake,因此既適合新設定,也適合既有的 Nix 管理 Mac。
  • 建置流程會逐步顯示,而不是藏在單一進度指示器後面。
  • 變更會以原子方式套用,且頁面說明建置失敗不會影響執行中的系統。
  • 每次套用都會儲存為 git commit,有助於保留可稽核的組態歷史。

Cons

  • 公開頁面在渲染文字中沒有列出支援的 macOS 版本。
  • 定價頁的價格資訊目前無法取得,因為該頁面目前回傳 Not Found,因此確切的方案結構不清楚。

FAQ

什麼是 Nixmac?

Nixmac 是一款建立於 nix-darwin 的 macOS 組態管理工具。它讓你用自然語言描述想要的 Mac,接著產生 Nix、建置它,並安全地套用結果。

使用 Nixmac 需要懂 Nix 嗎?

這個頁面是為了想用 Nix 管理 Mac、但不想手動撰寫所有內容的人而設計。它支援從全新範本開始,也支援匯入既有的 flake。

Nixmac 是免費的嗎?

首頁表示 Nixmac 是免費且開源的,而且試用時不需要帳號。它也提供代管模型,AI 推論可選擇按用量付費。

支援哪些 macOS 版本?

首頁包含一個常見問題,詢問支援哪些 macOS 版本,但畫面上沒有列出具體版本。公開頁面也說它適用於 Mac,因此明確是以 macOS 為主。

Nixmac 會安全地修改我的系統嗎?

Nixmac 表示變更會透過 darwin-rebuild switch 套用,而且如果建置失敗,執行中的系統會維持原狀。它也說明會以原子方式套用,並在失敗時自動回復。

Quick Facts

類別
Developer Tool
平台
macOS
主要工作流程
為以 Nix 為基礎的 Mac 設定產生自然語言組態
底層技術堆疊
nix-darwin, Nixpkgs, home-manager, Homebrew, Git, launchd
來源網域
nixmac.com
定價 संकेत號
首頁表示免費且開源;代管 AI 推論說明為按用量付費