the configuration for all my nixos machines (hacky! bad! ugly!)
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

at main 102 lines 2.3 kB view raw
1{pkgs, lib, config, ...}:{ 2 imports = [ 3 ./nix.nix 4 ./profiles/desktop 5 ./profiles/docs.nix 6 ./profiles/games.nix 7 ./profiles/laptop.nix 8 ./profiles/networking.nix 9 ./profiles/perftools.nix 10 ./profiles/zfs.nix 11 ]; 12 13 console = { 14 font = "Lat2-Terminus16"; 15 }; 16 time.timeZone = "America/New_York"; 17 18 i18n = let 19 locale = "en_US.UTF-8"; 20 in { 21 defaultLocale = locale; 22 extraLocaleSettings = { 23 LC_ADDRESS = locale; 24 LC_IDENTIFICATION = locale; 25 LC_MEASUREMENT = locale; 26 LC_MONETARY = locale; 27 LC_NAME = locale; 28 LC_NUMERIC = locale; 29 LC_PAPER = locale; 30 LC_TELEPHONE = locale; 31 LC_TIME = locale; 32 }; 33 }; 34 35 environment = { 36 systemPackages = with pkgs; [ 37 git 38 nano 39 # for lspci etc 40 pciutils 41 # for lsusb etc 42 usbutils 43 lshw 44 home-manager 45 lm_sensors 46 smartmontools 47 ]; 48 pathsToLink = ["/share/zsh"]; 49 }; 50 programs = { 51 mtr.enable = true; 52 zsh.enable = true; 53 }; 54 55 profiles = { 56 networking.enable = lib.mkDefault true; 57 }; 58 59 users.users.joshua = { 60 subUidRanges = [ { startUid = 100000; count = 65536; } ]; 61 subGidRanges = [ { startGid = 100000; count = 65536; } ]; 62 isNormalUser = true; 63 description = "Joshua Barrett"; 64 shell = pkgs.zsh; 65 extraGroups = [ 66 "wheel" 67 "docker" 68 "podman" 69 "wireshark" 70 "kvm" 71 "adbusers" 72 "dialout" 73 ]; 74 linger = true; 75 openssh.authorizedKeys.keys = [ 76 # prospero 77 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHM0G+Ri6crg86mYVWWDHUiO+FX0GB0di9QkdNvE8SWF" 78 # mercury 79 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG3JS6Mf2PwfjZOAh3Cztmeu1CFzxond254jHAeLQ85O" 80 # uruk 81 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN4yxSed86xXJ3wuBwxX7HrAHrHSkFliBg7s4Nx53NFS" 82 ]; 83 }; 84 85 # Enable the Docker daemon. 86 virtualisation.docker = { 87 enable = true; 88 # Docker appears to select `devicemapper` by default, which is not cool. 89 storageDriver = if config.profiles.zfs.enable then "zfs" else "overlay2"; 90 # Prune the docker registry weekly. 91 autoPrune.enable = true; 92 extraOptions = '' 93 --experimental 94 ''; 95 }; 96 97 virtualisation.oci-containers = { 98 backend = "docker"; 99 }; 100 101 security.pam.sshAgentAuth.enable = lib.mkDefault true; 102}