Enable Homebrew for aarch64-darwin
Added configuration to enable Homebrew on aarch64-darwin systems. Created a new module for managing Homebrew settings and added support for declarative tap management.
This commit is contained in:
parent
cbe03d1060
commit
a8acb0900b
38
modules/darwin/system/homebrew/default.nix
Normal file
38
modules/darwin/system/homebrew/default.nix
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
{ 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;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -2,7 +2,14 @@
|
||||||
|
|
||||||
with lib.metacfg;
|
with lib.metacfg;
|
||||||
{
|
{
|
||||||
|
|
||||||
|
homebrew = {
|
||||||
|
enable = true;
|
||||||
|
brews = [ "libusb"];
|
||||||
|
};
|
||||||
|
|
||||||
metacfg = {
|
metacfg = {
|
||||||
|
system.homebrew = enabled;
|
||||||
suites = {
|
suites = {
|
||||||
common = enabled;
|
common = enabled;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue