forked from aylac.top/nixcfg
this repo has no description
1{ 2 self, 3 config, 4 ... 5}: { 6 imports = [ 7 ./home.nix 8 ./secrets.nix 9 ./notifier.nix 10 ./backups.nix 11 self.nixosModules.locale-en-gb 12 ]; 13 14 networking.hostName = "nanpi"; 15 system.stateVersion = "25.05"; 16 time.timeZone = "America/Sao_Paulo"; 17 myHardware.acer.aspire."A315-53".enable = true; 18 19 myNixOS = { 20 programs = { 21 lanzaboote.enable = true; 22 nix.enable = true; 23 }; 24 profiles = { 25 base.enable = true; 26 server.enable = true; 27 backups.enable = true; 28 btrfs = { 29 enable = true; 30 deduplicate = true; 31 }; 32 swap = { 33 enable = true; 34 size = 4096; 35 location = "/.swap"; 36 }; 37 arr.enable = true; 38 }; 39 services = { 40 audiobookshelf.enable = false; 41 caddy.enable = true; 42 cloudflared.enable = true; 43 copyparty.enable = false; 44 dnsmasq.enable = true; 45 forgejo.enable = true; 46 glance.enable = true; 47 jellyfin.enable = true; 48 jellyseerr.enable = true; 49 karakeep.enable = false; 50 miniflux.enable = true; 51 ntfy.enable = true; 52 pds.enable = true; 53 privatebin.enable = true; 54 qbittorrent = { 55 enable = true; 56 webuiPort = config.mySnippets.tailnet.networkMap.qbittorrent.port; 57 openFirewall = true; 58 }; 59 radicale.enable = true; 60 redlib.enable = true; 61 syncthing = { 62 enable = true; 63 certFile = config.age.secrets.syncthingCert.path; 64 keyFile = config.age.secrets.syncthingKey.path; 65 user = "ayla"; 66 }; 67 tailscale = { 68 enable = true; 69 enableCaddy = true; 70 operator = "ayla"; 71 }; 72 vaultwarden.enable = true; 73 webdav.enable = true; 74 tangled-knot.enable = true; 75 }; 76 }; 77 78 myUsers = { 79 ayla = { 80 enable = true; 81 passwordFile = config.age.secrets.aylaPassword.path; 82 }; 83 }; 84 85 boot = { 86 initrd = { 87 availableKernelModules = [ 88 "xhci_pci" 89 "ahci" 90 "usb_storage" 91 "sd_mod" 92 "rtsx_pci_sdmmc" 93 ]; 94 95 luks.devices = { 96 crypted.device = "/dev/disk/by-uuid/d82fc855-f29a-4aef-90d4-da94c23d0ac1"; 97 crypted_external.device = "/dev/disk/by-uuid/0e477648-92d6-4cf5-a0c5-8d0707b69935"; 98 }; 99 }; 100 101 kernelParams = [ 102 "consoleblank=30" 103 ]; 104 }; 105 106 fileSystems = { 107 "/" = { 108 device = "/dev/disk/by-uuid/97fd311a-2575-487e-be03-45dfa9c2db8a"; 109 fsType = "btrfs"; 110 options = ["subvol=/root" "compress=zstd" "noatime"]; 111 }; 112 113 "/home" = { 114 device = "/dev/disk/by-uuid/97fd311a-2575-487e-be03-45dfa9c2db8a"; 115 fsType = "btrfs"; 116 options = ["subvol=/home" "compress=zstd" "noatime"]; 117 }; 118 119 "/home/.snapshots" = { 120 device = "/dev/disk/by-uuid/97fd311a-2575-487e-be03-45dfa9c2db8a"; 121 fsType = "btrfs"; 122 options = ["subvol=/home/.snapshots" "compress=zstd" "noatime"]; 123 }; 124 125 "/nix" = { 126 device = "/dev/disk/by-uuid/97fd311a-2575-487e-be03-45dfa9c2db8a"; 127 fsType = "btrfs"; 128 options = ["subvol=/nix" "compress=zstd" "noatime"]; 129 }; 130 131 "/boot" = { 132 device = "/dev/disk/by-uuid/7D56-EE82"; 133 fsType = "vfat"; 134 options = ["fmask=0077" "dmask=0077"]; 135 }; 136 137 "/external1" = { 138 device = "/dev/disk/by-uuid/130ead1c-6642-45d5-9053-b6cb2df9c7e4"; 139 fsType = "btrfs"; 140 options = ["compress=zstd" "noatime"]; 141 }; 142 }; 143}