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:
+5
-7
@@ -31,6 +31,7 @@
|
|||||||
xh # curl/httpie
|
xh # curl/httpie
|
||||||
jq # JSON
|
jq # JSON
|
||||||
yq # YAML
|
yq # YAML
|
||||||
|
wget
|
||||||
|
|
||||||
# System info
|
# System info
|
||||||
fastfetch
|
fastfetch
|
||||||
@@ -39,20 +40,17 @@
|
|||||||
# File management
|
# File management
|
||||||
trash-cli
|
trash-cli
|
||||||
|
|
||||||
# Terminal multiplexer (alternative)
|
|
||||||
zellij
|
|
||||||
|
|
||||||
# Nix tools
|
# Nix tools
|
||||||
nix-output-monitor # nom — better nix build output
|
nix-output-monitor # nom
|
||||||
nvd # nix version diff
|
nvd # nix version diff
|
||||||
nh # nix helper (nixos-rebuild wrapper)
|
nh # nix helper
|
||||||
|
|
||||||
# AI coding agent
|
# AI coding agent
|
||||||
opencode
|
opencode
|
||||||
comment-checker # AI code comment detection hook
|
comment-checker
|
||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
micro # simple editor fallback
|
micro
|
||||||
];
|
];
|
||||||
|
|
||||||
# XDG directories
|
# XDG directories
|
||||||
|
|||||||
@@ -34,13 +34,64 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# ── Homebrew (GUI apps not in nixpkgs) ─────────────
|
# ── Homebrew ───────────────────────────────────────
|
||||||
homebrew = {
|
homebrew = {
|
||||||
enable = true;
|
enable = true;
|
||||||
casks = [
|
|
||||||
"raycast"
|
taps = [
|
||||||
"arc"
|
"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