my nix configs for my servers and desktop

Merge branch 'main' of https://git.nekomimi.pet/waveringana/nixcfg

Changed files
+120
common
hosts
+1
common/services.nix
··· 15 zfs 16 nixos-generators 17 sqlite 18 ]; 19 20 services.openssh.enable = true;
··· 15 zfs 16 nixos-generators 17 sqlite 18 + bun 19 ]; 20 21 services.openssh.enable = true;
+19
flake.nix
··· 20 microvm.url = "github:astro/microvm.nix"; 21 microvm.inputs.nixpkgs.follows = "nixpkgs"; 22 23 catppuccin.url = "github:catppuccin/nix"; 24 home-manager = { 25 url = "github:nix-community/home-manager"; ··· 113 agenix.nixosModules.default 114 115 { imports = builtins.attrValues nixosModules; } 116 ]; 117 }; 118 };
··· 20 microvm.url = "github:astro/microvm.nix"; 21 microvm.inputs.nixpkgs.follows = "nixpkgs"; 22 23 + disko.url = "github:nix-community/disko/v1.11.0"; 24 + 25 catppuccin.url = "github:catppuccin/nix"; 26 home-manager = { 27 url = "github:nix-community/home-manager"; ··· 115 agenix.nixosModules.default 116 117 { imports = builtins.attrValues nixosModules; } 118 + ]; 119 + }; 120 + 121 + baal = nixpkgs.lib.nixosSystem { 122 + system = "aarch64-linux"; 123 + specialArgs = { 124 + inherit inputs; 125 + system = "aarch64-linux"; 126 + }; 127 + modules = [ 128 + ./hosts/baal 129 + 130 + agenix.nixosModules.default 131 + disko.nixosModules.disko 132 + 133 + { imports = builtins.attrValues nixosModules; } 134 + 135 ]; 136 }; 137 };
+42
hosts/baal/default.nix
···
··· 1 + { config, lib, pkgs, modulesPath, inputs, ... }: 2 + { 3 + imports = [ 4 + ./hardware.nix 5 + ./secrets.nix 6 + 7 + ../../common/system.nix 8 + ../../common/users.nix 9 + ../../common/services.nix 10 + 11 + ../../host-secrets.nix 12 + ]; 13 + 14 + boot = { 15 + loader = { 16 + systemd-boot.enable = true; 17 + efi = { 18 + canTouchEfiVariables = true; 19 + efiSysMountPoint = "/boot"; 20 + }; 21 + }; 22 + initrd.systemd.enable = true; 23 + }; 24 + 25 + system.stateVersion = "24.11"; 26 + nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; 27 + 28 + systemd.targets.multi-user.enable = true; 29 + 30 + networking = { 31 + hostName = "baal"; 32 + hostId = "aaaaaaaa"; 33 + networkmanager.enable = true; 34 + }; 35 + 36 + virtualisation.docker = { 37 + enable = true; 38 + enableOnBoot = true; 39 + }; 40 + 41 + documentation.enable = false; 42 + }
+55
hosts/baal/hardware.nix
···
··· 1 + # Do not modify this file! It was generated by ‘nixos-generate-config’ 2 + # and may be overwritten by future invocations. Please make changes 3 + # to /etc/nixos/configuration.nix instead. 4 + { config, lib, pkgs, modulesPath, ... }: 5 + 6 + { 7 + imports = 8 + [ (modulesPath + "/profiles/qemu-guest.nix") 9 + ]; 10 + 11 + boot.initrd.availableKernelModules = [ "xhci_pci" "virtio_pci" "virtio_scsi" "usbhid" ]; 12 + boot.initrd.kernelModules = [ ]; 13 + boot.kernelModules = [ ]; 14 + boot.extraModulePackages = [ ]; 15 + 16 + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking 17 + # (the default) this is the recommended approach. When using systemd-networkd it's 18 + # still possible to use this option, but it's recommended to use it in conjunction 19 + # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. 20 + networking.useDHCP = lib.mkDefault true; 21 + # networking.interfaces.enp0s6.useDHCP = lib.mkDefault true; 22 + 23 + nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; 24 + 25 + disko.devices = { 26 + disk = { 27 + main = { 28 + type = "disk"; 29 + device = "/dev/sda"; 30 + content = { 31 + type = "gpt"; 32 + partitions = { 33 + boot = { 34 + size = "512M"; 35 + type = "EF00"; 36 + content = { 37 + type = "filesystem"; 38 + format = "vfat"; 39 + mountpoint = "/boot"; 40 + }; 41 + }; 42 + root = { 43 + size = "100%"; 44 + content = { 45 + type = "filesystem"; 46 + format = "ext4"; 47 + mountpoint = "/"; 48 + }; 49 + }; 50 + }; 51 + }; 52 + }; 53 + }; 54 + }; 55 + }
+3
hosts/baal/secrets.nix
···
··· 1 + { 2 + 3 + }