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 lix-module = { 8 url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.0.tar.gz"; 9 inputs.nixpkgs.follows = "nixpkgs"; 10 }; 11 12 vscode-server.url = "github:nix-community/nixos-vscode-server"; 13 agenix.url = "github:ryantm/agenix"; 14 zen-browser = { 15 url = "github:0xc000022070/zen-browser-flake"; 16 inputs.nixpkgs.follows = "nixpkgs"; 17 }; 18 microvm.url = "github:astro/microvm.nix"; 19 microvm.inputs.nixpkgs.follows = "nixpkgs"; 20 21 catppuccin.url = "github:catppuccin/nix"; 22 home-manager = { 23 url = "github:nix-community/home-manager"; 24 inputs.nixpkgs.follows = "nixpkgs"; 25 }; 26 }; 27 28 outputs = 29 { self, ... }@inputs: 30 with inputs; 31 let 32 nixosModules = builtins.listToAttrs ( 33 map (module: { 34 name = module; 35 value = import (./modules + "/${module}"); 36 }) (builtins.attrNames (builtins.readDir ./modules)) 37 ); 38 in 39 { 40 nixosConfigurations = { 41 focalor = nixpkgs.lib.nixosSystem { 42 system = "x86_64-linux"; 43 specialArgs = { 44 inherit inputs; 45 system = "x86_64-linux"; 46 }; 47 modules = [ 48 agenix.nixosModules.default 49 50 ./hosts/focalor 51 lix-module.nixosModules.default 52 vscode-server.nixosModules.default 53 catppuccin.nixosModules.catppuccin 54 home-manager.nixosModules.home-manager 55 { 56 home-manager.useGlobalPkgs = true; 57 home-manager.backupFileExtension = "HMBackup"; 58 home-manager.users.regent.imports = [ 59 ./home/regent/home.nix 60 catppuccin.homeModules.catppuccin 61 ]; 62 home-manager.extraSpecialArgs = { 63 inherit inputs; 64 system = "x86_64-linux"; 65 }; 66 } 67 68 { imports = builtins.attrValues nixosModules; } 69 ]; 70 }; 71 72 valefar = nixpkgs.lib.nixosSystem { 73 system = "x86_64-linux"; 74 specialArgs = { 75 inherit inputs; 76 system = "x86_64-linux"; 77 }; 78 modules = [ 79 agenix.nixosModules.default 80 81 ./hosts/valefar 82 lix-module.nixosModules.default 83 vscode-server.nixosModules.default 84 microvm.nixosModules.host 85 86 { imports = builtins.attrValues nixosModules; } 87 ]; 88 }; 89 90 buer = nixpkgs.lib.nixosSystem { 91 system = "x86_64-linux"; 92 specialArgs = { 93 inherit inputs; 94 system = "x86_64-linux"; 95 }; 96 modules = [ 97 ./hosts/buer 98 99 agenix.nixosModules.default 100 101 { imports = builtins.attrValues nixosModules; } 102 ]; 103 }; 104 }; 105 }; 106}