flake.nix (1860B)
1 { 2 description = "A simple NixOS flake"; 3 4 inputs = { 5 nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; 6 nixpkgs-small.url = "github:NixOS/nixpkgs/nixos-unstable-small"; 7 nur = { 8 url = "github:nix-community/NUR"; 9 inputs.nixpkgs.follows = "nixpkgs"; 10 }; 11 betterfox = { 12 url = "github:HeitorAugustoLN/betterfox-nix"; 13 inputs.nixpkgs.follows = "nixpkgs"; 14 }; 15 catppuccin = { 16 url = "github:catppuccin/nix"; 17 inputs.nixpkgs.follows = "nixpkgs"; 18 }; 19 hermes-agent = { 20 url = "github:NousResearch/hermes-agent"; 21 inputs.nixpkgs.follows = "nixpkgs"; 22 }; 23 llm-agents = { 24 url = "github:numtide/llm-agents.nix"; 25 inputs.nixpkgs.follows = "nixpkgs"; 26 }; 27 home-manager = { 28 url = "github:nix-community/home-manager"; 29 inputs.nixpkgs.follows = "nixpkgs"; 30 }; 31 }; 32 33 outputs = { 34 nixpkgs, 35 nixpkgs-small, 36 nur, 37 betterfox, 38 catppuccin, 39 hermes-agent, 40 llm-agents, 41 home-manager, 42 ... 43 }: { 44 nixosConfigurations = { 45 nixosion = 46 nixpkgs.lib.nixosSystem rec { 47 system = "x86_64-linux"; 48 specialArgs = { 49 pkgs-small = import nixpkgs-small {inherit system;}; 50 }; 51 modules = [ 52 ./local/. 53 nur.modules.nixos.default 54 catppuccin.nixosModules.catppuccin 55 hermes-agent.nixosModules.default 56 {nixpkgs.overlays = [llm-agents.overlays.default];} 57 home-manager.nixosModules.home-manager 58 { 59 home-manager.extraSpecialArgs = specialArgs; 60 home-manager.useGlobalPkgs = true; 61 home-manager.useUserPackages = true; 62 home-manager.users.tb148 = { 63 imports = [ 64 ./home/. 65 betterfox.homeModules.betterfox 66 catppuccin.homeModules.catppuccin 67 ]; 68 }; 69 } 70 ]; 71 }; 72 hetznerion = 73 nixpkgs-small.lib.nixosSystem { 74 system = "x86_64-linux"; 75 modules = [ 76 ./remote/. 77 ]; 78 }; 79 }; 80 }; 81 }