Files

44 lines
967 B
Nix

{
lib,
config,
homebrew-core,
homebrew-cask,
...
}:
let
cfg = config.os.homebrew;
in
{
options.os.homebrew = {
enable = lib.mkEnableOption "Homebrew options";
};
config = lib.mkIf cfg.enable {
nix-homebrew = {
# User owning the Homebrew prefix
user = "alistreaza";
# Install Homebrew under the default prefix
enable = true;
# Apple Silicon Only: Also install Homebrew under the default Intel prefix for Rosetta 2
enableRosetta = false;
# Optional: Declarative tap management
taps = {
"homebrew/homebrew-core" = homebrew-core;
"homebrew/homebrew-cask" = homebrew-cask;
};
# Optional: Enable fully-declarative tap management
#
# With mutableTaps disabled, taps can no longer be added imperatively with `brew tap`.
mutableTaps = false;
};
homebrew.enable = true;
homebrew.taps = builtins.attrNames config.nix-homebrew.taps;
};
}