214 lines
3.9 KiB
Nix
214 lines
3.9 KiB
Nix
{
|
|
inputs,
|
|
outputs,
|
|
_lib,
|
|
_config,
|
|
pkgs,
|
|
...
|
|
}:
|
|
{
|
|
imports = [
|
|
inputs.home-manager.darwinModules.home-manager
|
|
../../modules/aerospace
|
|
];
|
|
|
|
# Setting the user
|
|
networking.hostName = "dnsc-air";
|
|
networking.computerName = "dnsc-air";
|
|
|
|
users.users."dennis" = {
|
|
home = "/Users/dennis";
|
|
description = "Dennis Schoepf";
|
|
};
|
|
|
|
nix.settings.trusted-users = [ "dennis" ];
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
# System Packages
|
|
environment.systemPackages = with pkgs; [
|
|
git
|
|
btop
|
|
fish
|
|
ripgrep
|
|
fzf
|
|
fd
|
|
sd
|
|
bat
|
|
neovim
|
|
just
|
|
tldr
|
|
fortune
|
|
stylua
|
|
typescript-language-server
|
|
vscode-langservers-extracted
|
|
astro-language-server
|
|
tailwindcss-language-server
|
|
lua-language-server
|
|
prettierd
|
|
eslint_d
|
|
atuin
|
|
nil
|
|
shellcheck
|
|
lazygit
|
|
ffmpeg
|
|
yt-dlp
|
|
zoxide
|
|
sqlite
|
|
tree-sitter
|
|
rsync
|
|
fnm
|
|
imagemagick
|
|
restic
|
|
devenv
|
|
];
|
|
|
|
# Homebrew
|
|
nix-homebrew = {
|
|
enable = true;
|
|
# enableRosetta = true;
|
|
user = "dennis";
|
|
autoMigrate = true;
|
|
};
|
|
|
|
homebrew = {
|
|
user = "dennis";
|
|
enable = true;
|
|
|
|
onActivation = {
|
|
autoUpdate = true;
|
|
upgrade = true;
|
|
cleanup = "zap";
|
|
};
|
|
|
|
taps = [
|
|
"homebrew/services"
|
|
"d12frosted/emacs-plus"
|
|
];
|
|
|
|
masApps = {
|
|
Bitwarden = 1352778147;
|
|
"Wipr 2" = 1662217862;
|
|
"Yesterday For Old Reddit" = 1603279883;
|
|
};
|
|
|
|
brews = [
|
|
"harfbuzz"
|
|
"openexr"
|
|
"openjph"
|
|
"p11-kit"
|
|
"mas"
|
|
"go"
|
|
"ca-certificates"
|
|
"gettext"
|
|
];
|
|
|
|
casks = [
|
|
"chromium"
|
|
"font-victor-mono"
|
|
"font-victor-mono-nerd-font"
|
|
"vlc"
|
|
"wezterm"
|
|
"hiddenbar"
|
|
"eurkey"
|
|
"karabiner-elements"
|
|
"wezterm"
|
|
"cyberduck"
|
|
"caffeine"
|
|
"tailscale-app"
|
|
"raycast"
|
|
"spotify"
|
|
"zen"
|
|
];
|
|
};
|
|
|
|
# Shells
|
|
environment.shells = [ pkgs.fish ];
|
|
|
|
programs.direnv.enable = true;
|
|
|
|
# System settings
|
|
system = {
|
|
primaryUser = "dennis";
|
|
stateVersion = 5;
|
|
activationScripts.postActivation.text = ''
|
|
/System/Library/PrivateFrameworks/SystemAdministration.framework/Resources/activateSettings -u
|
|
'';
|
|
|
|
defaults = {
|
|
smb.NetBIOSName = "dnsc-air";
|
|
|
|
NSGlobalDomain."com.apple.swipescrolldirection" = false;
|
|
|
|
dock = {
|
|
autohide = true;
|
|
autohide-delay = 0.01;
|
|
autohide-time-modifier = 0.01;
|
|
expose-group-apps = true;
|
|
launchanim = false;
|
|
minimize-to-application = true;
|
|
orientation = "right";
|
|
show-recents = false;
|
|
persistent-apps = [
|
|
"/Applications/Zen.app"
|
|
"/Applications/WezTerm.app"
|
|
"/System/Applications/System Settings.app/"
|
|
];
|
|
persistent-others = [
|
|
"/Users/dennis/Downloads"
|
|
];
|
|
};
|
|
|
|
finder = {
|
|
AppleShowAllExtensions = true;
|
|
CreateDesktop = false;
|
|
FXEnableExtensionChangeWarning = false;
|
|
FXPreferredViewStyle = "clmv";
|
|
ShowPathbar = true;
|
|
ShowStatusBar = true;
|
|
};
|
|
|
|
loginwindow = {
|
|
LoginwindowText = "λ dnsc-air (powered by nix-darwin)";
|
|
};
|
|
|
|
menuExtraClock = {
|
|
Show24Hour = true;
|
|
ShowDate = 0;
|
|
};
|
|
|
|
screencapture = {
|
|
location = "/Users/dennis/Downloads";
|
|
target = "file";
|
|
};
|
|
|
|
spaces.spans-displays = false;
|
|
};
|
|
};
|
|
|
|
# Add ability to used TouchID for sudo authentication
|
|
security.pam.services.sudo_local.touchIdAuth = true;
|
|
|
|
# Home Manager Setup
|
|
home-manager = {
|
|
extraSpecialArgs = { inherit inputs outputs; };
|
|
useGlobalPkgs = true;
|
|
backupFileExtension = "backup";
|
|
users = {
|
|
dennis = import ../../home/darwin.nix;
|
|
};
|
|
};
|
|
|
|
# Nix settings
|
|
# Enable new Nix CLI and flakes
|
|
nix.settings.experimental-features = [
|
|
"nix-command"
|
|
"flakes"
|
|
];
|
|
|
|
nix.package = pkgs.nix;
|
|
nix.gc = {
|
|
automatic = true;
|
|
options = "--delete-older-than 1w";
|
|
};
|
|
}
|