all repos — nixfiles @ 6b728ddc1131480d2ff44d98f7b9f165ae06dc60

System and user configuration, managed by nix and home-manager

system/hosts/marvin.nix (view raw)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
{
  config,
  pkgs,
  ...
}:
{
  imports = [
    ../settings/darwin.nix
    ../settings/programs/shell.nix
    ../settings/programs/base.nix
  ];

  system.primaryUser = "alin";
  system.primaryUserHome = "/Users/alin";
  users.users."${config.system.primaryUser}".openssh.authorizedKeys.keys = [
    "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBENXbdPPOq0mA+9bPklpUkikvIXjCEKE5IRwNPNMr5/Ta1J/ND737fexCjEb7YPoAJtaf0gD/JThQQi/RxDTvy4= alin@alin.ovh"
  ];

  services.openssh.extraConfig = ''
    PermitUserEnvironment yes
    AcceptEnv TERM_PROGRAM
  '';

  networking = {
    hostName = "marvin";
    localHostName = "Paranoid-Android";
  };

  services.redis = {
    enable = true;
    bind = "127.0.0.1 ::1";
    extraConfig = ''
      save ""
    '';
  };

  services.tailscale = {
    enable = true;
  };
  environment.etc."resolver/ts.net".text = ''
    nameserver fd7a:115c:a1e0::53
  '';
  environment.etc."resolver/home.arpa".text = ''
    nameserver fe80::3e7c:3fff:fe31:3e40
    nameserver fd7a:115c:a1e0::53
  '';

  environment.shells = with pkgs; [
    fish
    "/Users/alin/.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 = 4;
    cores = 8;
  };

  nix.linux-builder = {
    enable = false; # will be needed for building the rosetta image
    systems = [ "aarch64-linux" ];
    speedFactor = 8;
  };

  nix-rosetta-builder = {
    enable = true;
    memory = "8GiB";
    speedFactor = 8;
    permitNonRootSshAccess = true;
  };
}