137 lines
2.7 KiB
Nix
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
|
|
+
|
|
'')
|
|
];
|
|
|
|
};
|
|
}
|