nixcfg/modules/darwin/system/homebrew/default.nix
Harald Hoyer 3390c39901 Update masApps and add Homebrew shell initialization
Convert masApps from list to set for better structure consistency. Add initialization for Homebrew in the Fish shell to ensure the environment is correctly set up.
2024-11-25 16:00:27 +01:00

47 lines
1.1 KiB
Nix

{
lib,
config,
inputs,
...
}:
with lib;
with lib.metacfg;
let
cfg = config.metacfg.system.fonts;
in
{
imports = [ inputs.nix-homebrew.darwinModules.nix-homebrew ];
options.metacfg.system.homebrew = with types; {
enable = mkBoolOpt false "Whether or not to enable homebrew";
};
config = mkIf cfg.enable {
nix-homebrew = {
# Install Homebrew under the default prefix
enable = true;
# Apple Silicon Only: Also install Homebrew under the default Intel prefix for Rosetta 2
enableRosetta = false;
# User owning the Homebrew prefix
user = "harald";
# Optional: Declarative tap management
taps = {
"homebrew/homebrew-core" = inputs.homebrew-core;
"homebrew/homebrew-cask" = inputs.homebrew-cask;
"homebrew/homebrew-bundle" = inputs.homebrew-bundle;
};
# Optional: Enable fully-declarative tap management
#
# With mutableTaps disabled, taps can no longer be added imperatively with `brew tap`.
mutableTaps = false;
};
programs.fish.shellInit = ''
/opt/homebrew/bin/brew shellenv | source
'';
};
}