138 lines
3.3 KiB
Nix
138 lines
3.3 KiB
Nix
|
{
|
||
|
pkgs,
|
||
|
inputs,
|
||
|
lib,
|
||
|
...
|
||
|
}: {
|
||
|
environment.variables.FLAKE = "/Users/marshall/nix-config";
|
||
|
|
||
|
fonts.packages = with pkgs; [
|
||
|
font-awesome
|
||
|
inter
|
||
|
maple-mono
|
||
|
nerdfonts
|
||
|
];
|
||
|
|
||
|
networking = {
|
||
|
computerName = "MacBook Air";
|
||
|
hostName = "canis";
|
||
|
};
|
||
|
|
||
|
nix = {
|
||
|
gc = {
|
||
|
automatic = true;
|
||
|
interval.Day = 7;
|
||
|
};
|
||
|
|
||
|
daemonIOLowPriority = true;
|
||
|
daemonProcessType = "Adaptive";
|
||
|
distributedBuilds = true;
|
||
|
nixPath = ["nixpkgs=${inputs.nixpkgs}"];
|
||
|
registry = lib.mapAttrs (_: v: {flake = v;}) inputs;
|
||
|
|
||
|
settings = {
|
||
|
auto-optimise-store = true;
|
||
|
builders-use-substitutes = true;
|
||
|
extra-experimental-features = "nix-command flakes";
|
||
|
flake-registry = "/etc/nix/registry.json";
|
||
|
keep-derivations = true;
|
||
|
keep-outputs = true;
|
||
|
max-jobs = "auto";
|
||
|
warn-dirty = false;
|
||
|
extra-sandbox-paths = ["/nix/var/cache/ccache"];
|
||
|
|
||
|
substituters = [
|
||
|
"https://cache.nixos.org"
|
||
|
"https://nix-community.cachix.org"
|
||
|
];
|
||
|
|
||
|
trusted-substituters = [
|
||
|
"cache.nixos.org"
|
||
|
"nix-community.cachix.org"
|
||
|
];
|
||
|
|
||
|
trusted-public-keys = [
|
||
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||
|
"hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
|
||
|
];
|
||
|
|
||
|
trusted-users = ["marshall"];
|
||
|
};
|
||
|
};
|
||
|
|
||
|
nixpkgs.config.allowUnfree = true;
|
||
|
|
||
|
programs = {
|
||
|
gnupg.agent = {
|
||
|
enable = true;
|
||
|
enableSSHSupport = true;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
security.pam.enableSudoTouchIdAuth = true;
|
||
|
|
||
|
services = {
|
||
|
nix-daemon.enable = true;
|
||
|
skhd = {
|
||
|
enable = true;
|
||
|
package = pkgs.skhd;
|
||
|
|
||
|
skhdConfig = ''
|
||
|
alt - return : wezterm
|
||
|
alt - w : open -na "Arc"
|
||
|
|
||
|
cmd - space : yabai -m window --toggle float
|
||
|
|
||
|
shift + cmd - q : yabai -m window --close
|
||
|
|
||
|
alt - h : yabai -m window --focus west
|
||
|
alt - j : yabai -m window --focus south
|
||
|
alt - k : yabai -m window --focus north
|
||
|
alt - l : yabai -m window --focus east
|
||
|
|
||
|
shift + cmd - h : yabai -m window --swap west
|
||
|
shift + cmd - j : yabai -m window --swap south
|
||
|
shift + cmd - k : yabai -m window --swap north
|
||
|
shift + cmd - l : yabai -m window --swap east
|
||
|
|
||
|
shift + cmd - 1 : yabai -m window --space 1
|
||
|
shift + cmd - 2 : yabai -m window --space 2
|
||
|
shift + cmd - 3 : yabai -m window --space 3
|
||
|
shift + cmd - 4 : yabai -m window --space 4
|
||
|
shift + cmd - 5 : yabai -m window --space 5
|
||
|
shift + cmd - 6 : yabai -m window --space 6
|
||
|
shift + cmd - 7 : yabai -m window --space 7
|
||
|
shift + cmd - 8 : yabai -m window --space 8
|
||
|
shift + cmd - 9 : yabai -m window --space 9
|
||
|
'';
|
||
|
};
|
||
|
};
|
||
|
|
||
|
users.users.marshall = {
|
||
|
name = "marshall";
|
||
|
home = "/Users/marshall";
|
||
|
};
|
||
|
|
||
|
system = {
|
||
|
keyboard.enableKeyMapping = true;
|
||
|
|
||
|
defaults = {
|
||
|
NSGlobalDomain = {
|
||
|
KeyRepeat = 1;
|
||
|
NSAutomaticCapitalizationEnabled = false;
|
||
|
NSAutomaticSpellingCorrectionEnabled = false;
|
||
|
};
|
||
|
|
||
|
dock = {
|
||
|
autohide = true;
|
||
|
autohide-delay = 1000.0;
|
||
|
expose-animation-duration = 0.0;
|
||
|
orientation = "bottom";
|
||
|
showhidden = true;
|
||
|
tilesize = 48;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|