2024-04-20 13:42:06 +00:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
pkgs,
|
|
|
|
lib,
|
|
|
|
...
|
|
|
|
}:
|
|
|
|
{
|
2022-06-14 11:54:18 +00:00
|
|
|
|
2022-06-20 03:44:29 +00:00
|
|
|
# Homebrew - Mac-specific packages that aren't in Nix
|
2022-12-21 21:18:03 +00:00
|
|
|
config = lib.mkIf pkgs.stdenv.isDarwin {
|
2022-06-20 19:49:25 +00:00
|
|
|
|
2022-12-21 21:18:03 +00:00
|
|
|
# Requires Homebrew to be installed
|
|
|
|
system.activationScripts.preUserActivation.text = ''
|
|
|
|
if ! xcode-select --version 2>/dev/null; then
|
|
|
|
$DRY_RUN_CMD xcode-select --install
|
|
|
|
fi
|
2024-02-04 17:02:50 +00:00
|
|
|
if ! /opt/homebrew/bin/brew --version 2>/dev/null; then
|
2022-12-21 21:18:03 +00:00
|
|
|
$DRY_RUN_CMD /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
|
|
|
fi
|
|
|
|
'';
|
|
|
|
|
2024-01-25 19:57:18 +00:00
|
|
|
# Add homebrew paths to CLI path
|
2024-04-20 13:42:06 +00:00
|
|
|
home-manager.users.${config.user}.home.sessionPath = [ "/opt/homebrew/bin/" ];
|
2024-01-25 19:57:18 +00:00
|
|
|
|
2022-12-21 21:18:03 +00:00
|
|
|
homebrew = {
|
|
|
|
enable = true;
|
|
|
|
onActivation = {
|
|
|
|
autoUpdate = false; # Don't update during rebuild
|
|
|
|
cleanup = "zap"; # Uninstall all programs not declared
|
|
|
|
upgrade = true;
|
|
|
|
};
|
|
|
|
global = {
|
|
|
|
brewfile = true; # Run brew bundle from anywhere
|
|
|
|
lockfiles = false; # Don't save lockfile (since running from anywhere)
|
|
|
|
};
|
|
|
|
brews = [
|
|
|
|
"trash" # Delete files and folders to trash instead of rm
|
|
|
|
];
|
|
|
|
casks = [
|
2024-01-25 02:52:33 +00:00
|
|
|
"1password" # 1Password will not launch from Nix on macOS
|
2024-01-25 12:55:31 +00:00
|
|
|
# "gitify" # Git notifications in menu bar (downgrade manually from 4.6.1)
|
2023-04-08 16:26:14 +00:00
|
|
|
"keybase" # GUI on Nix not available for macOS
|
2024-01-24 16:02:06 +00:00
|
|
|
# "logitech-g-hub" # Mouse and keyboard management
|
2024-01-19 20:11:15 +00:00
|
|
|
"logitune" # Logitech webcam firmware
|
2023-04-08 16:26:14 +00:00
|
|
|
"meetingbar" # Show meetings in menu bar
|
|
|
|
"scroll-reverser" # Different scroll style for mouse vs. trackpad
|
2024-05-28 14:27:54 +00:00
|
|
|
"notunes" # Don't launch Apple Music with the play button
|
|
|
|
"steam" # Not packaged for Nixon macOS
|
2024-01-24 16:02:06 +00:00
|
|
|
# "epic-games" # Not packaged for Nix
|
2022-12-21 21:18:03 +00:00
|
|
|
];
|
2022-09-11 23:35:56 +00:00
|
|
|
};
|
2022-06-14 11:54:18 +00:00
|
|
|
};
|
|
|
|
}
|