{
config,
pkgs,
lib,
...
}:
{
imports = [
../settings/darwin.nix
../settings/dev.nix
../settings/programs/shell.nix
../settings/programs/base.nix
];
local.web = {
enable = true;
projectRoot = "/Users/alan/projects";
};
system.primaryUser = "alan";
system.primaryUserHome = "/Users/alan";
services.caddy = {
user = "root";
group = "wheel";
};
services.redis = {
enable = true;
bind = "127.0.0.1 ::1";
extraConfig = ''
save ""
'';
};
services.tailscale = {
enable = true;
};
environment.etc."resolver/ts.net".text = lib.mkForce "nameserver fd7a:115c:a1e0::53";
programs.fish.enable = true;
environment.shells = with pkgs; [
fish
"/Users/alan/.local/state/nix/profile/bin/fish"
];
environment.variables.LANG = "en_GB.UTF-8";
# Used for backwards compatibility, please read the changelog before changing.
# $ darwin-rebuild changelog
system.stateVersion = 4;
ids.gids.nixbld = 350;
# You should generally set this to the total number of logical cores in your system.
# $ sysctl -n hw.ncpu
nix.settings = {
max-jobs = 8;
cores = 4;
};
nix = {
distributedBuilds = true;
buildMachines = [
{
protocol = "ssh-ng";
sshUser = "nixremote";
hostName = "linde";
system = "aarch64-linux";
maxJobs = 2;
speedFactor = 1;
supportedFeatures = [ "kvm" ];
}
];
};
nix.linux-builder = {
enable = !config.nix-rosetta-builder.enable;
systems = [
"x86_64-linux"
"aarch64-linux"
];
speedFactor = 8;
};
nix-rosetta-builder = {
enable = true; # turn off to bootstrap
memory = "32GiB";
onDemand = true;
onDemandLingerMinutes = 180;
};
}
system/hosts/marvin.nix (view raw)