feat: 声明式管理 Homebrew casks/brews/masApps
- 20 个 casks、11 个 brews、3 个 MAS 应用纳入 nix-darwin 管理 - onActivation.cleanup=zap 自动清理未声明的 brew 包 - 已在 nix 管理的 CLI 工具(biome, btop, fd 等)不再重复声明 - wget 移至 home-manager 实现跨平台可用 - 移除 zellij(已有 tmux)
This commit is contained in:
@@ -34,13 +34,64 @@
|
||||
};
|
||||
};
|
||||
|
||||
# ── Homebrew (GUI apps not in nixpkgs) ─────────────
|
||||
# ── Homebrew ───────────────────────────────────────
|
||||
homebrew = {
|
||||
enable = true;
|
||||
casks = [
|
||||
"raycast"
|
||||
"arc"
|
||||
|
||||
taps = [
|
||||
"antoniorodr/memo"
|
||||
"steipete/tap"
|
||||
];
|
||||
onActivation.cleanup = "zap";
|
||||
|
||||
# CLI tools not in nixpkgs or needing brew services
|
||||
brews = [
|
||||
"ffmpeg"
|
||||
"gitui"
|
||||
"mas"
|
||||
"memo"
|
||||
"mole"
|
||||
"ollama"
|
||||
"pandoc"
|
||||
"poppler"
|
||||
"tailscale"
|
||||
"steipete/tap/gogcli"
|
||||
"steipete/tap/remindctl"
|
||||
];
|
||||
|
||||
# GUI apps
|
||||
casks = [
|
||||
"1password"
|
||||
"brave-browser"
|
||||
"cc-switch"
|
||||
"cherry-studio"
|
||||
"dbeaver-community"
|
||||
"discord"
|
||||
"feishu"
|
||||
"ghostty"
|
||||
"keka"
|
||||
"logitech-g-hub"
|
||||
"mos"
|
||||
"orbstack"
|
||||
"qq"
|
||||
"raycast"
|
||||
"spotify"
|
||||
"telegram-desktop"
|
||||
"termius"
|
||||
"visual-studio-code"
|
||||
"wechat"
|
||||
"winbox"
|
||||
];
|
||||
|
||||
# Mac App Store
|
||||
masApps = {
|
||||
"Microsoft Word" = 462054704;
|
||||
"Windows App" = 1295203466;
|
||||
"Xnip" = 1221250572;
|
||||
};
|
||||
|
||||
onActivation = {
|
||||
autoUpdate = true;
|
||||
cleanup = "zap"; # remove anything not declared above
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user