105 lines
2.3 KiB
Nix
105 lines
2.3 KiB
Nix
{ agenix, config, pkgs, ... }:
|
|
|
|
let user = "olaf"; in
|
|
|
|
{
|
|
|
|
security = {
|
|
pam = {
|
|
services ={
|
|
sudo_local ={
|
|
touchIdAuth = true;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
imports = [
|
|
../../modules/darwin/secrets.nix
|
|
../../modules/darwin/home-manager.nix
|
|
../../modules/shared
|
|
agenix.darwinModules.default
|
|
];
|
|
|
|
# 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
|
|
agenix.packages."${pkgs.system}".default
|
|
nixd
|
|
] ++ (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;
|
|
};
|
|
};
|
|
};
|
|
}
|