137 lines
2.7 KiB
Nix

{
config,
pkgs,
...
}:
let
user = "olaf";
in
{
security = {
pam = {
services = {
sudo_local = {
touchIdAuth = true;
};
};
};
};
imports = [
../../modules/darwin/home-manager.nix
../../modules/shared
];
# Setup user, packages, programs
nix = {
package = pkgs.nix;
settings = {
trusted-users = [
"@admin"
"${user}"
];
substituters = [
"https://nix-community.cachix.org"
"https://cache.nixos.org"
];
trusted-public-keys = [ "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" ];
};
gc = {
automatic = true;
interval = {
Weekday = 0;
Hour = 2;
Minute = 0;
};
options = "--delete-older-than 30d";
};
extraOptions = ''
experimental-features = nix-command flakes
'';
};
# Turn off NIX_PATH warnings now that we're using flakes
system.checks.verifyNixPath = false;
# Load configuration that is shared across systems
environment.systemPackages =
with pkgs;
[
emacs-unstable
]
++ (import ../../modules/shared/packages.nix { inherit pkgs; })
;
launchd.user.agents.emacs.path = [ config.environment.systemPath ];
launchd.user.agents.emacs.serviceConfig = {
KeepAlive = true;
ProgramArguments = [
"/bin/sh"
"-c"
"/bin/wait4path ${pkgs.emacs}/bin/emacs && exec ${pkgs.emacs}/bin/emacs --fg-daemon"
];
StandardErrorPath = "/tmp/emacs.err.log";
StandardOutPath = "/tmp/emacs.out.log";
};
system = {
stateVersion = 4;
defaults = {
NSGlobalDomain = {
AppleShowAllExtensions = true;
ApplePressAndHoldEnabled = false;
# 120, 90, 60, 30, 12, 6, 2
KeyRepeat = 2;
# 120, 94, 68, 35, 25, 15
InitialKeyRepeat = 15;
"com.apple.mouse.tapBehavior" = 1;
"com.apple.sound.beep.volume" = 0.0;
"com.apple.sound.beep.feedback" = 0;
};
dock = {
autohide = false;
show-recents = false;
launchanim = true;
orientation = "bottom";
tilesize = 48;
};
finder = {
_FXShowPosixPathInTitle = false;
};
trackpad = {
Clicking = true;
TrackpadThreeFingerDrag = true;
};
};
patches = [
(pkgs.writeText "auto_master.patch" ''
-- /etc/auto_master
+++ /etc/auto_master
@@ -6,3 +6,5 @@
/home auto_home -nobrowse,hidefromfinder
/Network/Servers -fstab
/- -static
+/System/Volumes/Data/Users/olaf/NAS auto_nfs_smb -nosuid,noowners
+
'')
];
};
}