my nix configs for my servers and desktop
1# flake.nix 2{ 3 inputs = { 4 nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; 5 nixos-hardware.url = "github:nixos/nixos-hardware/master"; 6 7 proxmox-nixos.url = "github:SaumonNet/proxmox-nixos"; 8 9 lix-module = { 10 url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.0.tar.gz"; 11 inputs.nixpkgs.follows = "nixpkgs"; 12 }; 13 14 vscode-server.url = "github:nix-community/nixos-vscode-server"; 15 agenix.url = "github:ryantm/agenix"; 16 zen-browser = { 17 url = "github:0xc000022070/zen-browser-flake"; 18 inputs.nixpkgs.follows = "nixpkgs"; 19 }; 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"; 26 inputs.nixpkgs.follows = "nixpkgs"; 27 }; 28 }; 29 30 outputs = 31 { self, ... }@inputs: 32 with inputs; 33 let 34 nixosModules = builtins.listToAttrs ( 35 map (module: { 36 name = module; 37 value = import (./modules + "/${module}"); 38 }) (builtins.attrNames (builtins.readDir ./modules)) 39 ); 40 in 41 { 42 nixosConfigurations = { 43 focalor = nixpkgs.lib.nixosSystem { 44 system = "x86_64-linux"; 45 specialArgs = { 46 inherit inputs; 47 system = "x86_64-linux"; 48 }; 49 modules = [ 50 agenix.nixosModules.default 51 52 ./hosts/focalor 53 lix-module.nixosModules.default 54 vscode-server.nixosModules.default 55 catppuccin.nixosModules.catppuccin 56 home-manager.nixosModules.home-manager 57 { 58 home-manager.useGlobalPkgs = true; 59 home-manager.backupFileExtension = "HMBackup"; 60 home-manager.users.regent.imports = [ 61 ./home/regent/home.nix 62 catppuccin.homeModules.catppuccin 63 ]; 64 home-manager.extraSpecialArgs = { 65 inherit inputs; 66 system = "x86_64-linux"; 67 }; 68 } 69 70 { imports = builtins.attrValues nixosModules; } 71 ]; 72 }; 73 74 valefar = nixpkgs.lib.nixosSystem { 75 system = "x86_64-linux"; 76 specialArgs = { 77 inherit inputs; 78 system = "x86_64-linux"; 79 }; 80 modules = [ 81 agenix.nixosModules.default 82 83 ./hosts/valefar 84 lix-module.nixosModules.default 85 vscode-server.nixosModules.default 86 87 proxmox-nixos.nixosModules.proxmox-ve 88 89 ({ pkgs, lib, ... }: { 90 services.proxmox-ve = { 91 enable = true; 92 ipAddress = "10.0.0.30"; 93 }; 94 95 nixpkgs.overlays = [ 96 proxmox-nixos.overlays.x86_64-linux 97 ]; 98 }) 99 100 { imports = builtins.attrValues nixosModules; } 101 ]; 102 }; 103 104 buer = nixpkgs.lib.nixosSystem { 105 system = "x86_64-linux"; 106 specialArgs = { 107 inherit inputs; 108 system = "x86_64-linux"; 109 }; 110 modules = [ 111 ./hosts/buer 112 113 agenix.nixosModules.default 114 115 { imports = builtins.attrValues nixosModules; } 116 ]; 117 }; 118 }; 119 }; 120}