{ description = "Nyx's Nix/Nixos configs"; inputs = { nixpkgs = { url = "github:nixos/nixpkgs/nixos-26.05"; }; nur = { url = "github:nix-community/NUR"; inputs.nixpkgs.follows = "nixpkgs"; }; nix-darwin = { url = "github:nix-darwin/nix-darwin/nix-darwin-26.05"; inputs.nixpkgs.follows = "nixpkgs"; }; nix-homebrew = { url = "github:zhaofengli/nix-homebrew"; }; homebrew-core = { url = "github:homebrew/homebrew-core"; flake = false; }; homebrew-cask = { url = "github:homebrew/homebrew-cask"; flake = false; }; home-manager = { url = "github:nix-community/home-manager/release-26.05"; inputs.nixpkgs.follows = "nixpkgs"; }; sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; secrets ={ url = "git+ssh://git@git.nyxerinys.dev:222/nyxerinys/nix-secrets"; flake = false; }; }; outputs = { self, nixpkgs, nix-darwin, home-manager, ... } @ inputs: let blades = import ./hosts/servers/blades/systems.nix { inherit inputs; }; homeConf = home-manager.darwinModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; # Pass the home.nix configuration to your specific user profile home-manager.users."nyxerinys" = import ./modules/home/nyxerinys; }; in { nixosConfigurations = { Apollo = nixpkgs.lib.nixosSystem { modules = [ ./hosts/base.nix ]; specialArgs = { inherit inputs; }; }; iris = nixpkgs.lib.nixosSystem { modules = [ ./hosts/base.nix ./hosts/servers/iris ]; specialArgs = { inherit inputs; }; }; poseidon = nixpkgs.lib.nixosSystem { modules = [ ./hosts/base.nix ./hosts/servers/poseidon ]; specialArgs = { inherit inputs; }; }; nixos = nixpkgs.lib.nixosSystem { modules = [ ./hosts/base.nix /etc/nixos/hardware-configuration.nix ]; specialArgs = { inherit inputs; }; }; } // blades; darwinConfigurations."Artemis" = nix-darwin.lib.darwinSystem { modules = [ # ./hosts/base.nix ./hosts/artemis ./modules/home ]; specialArgs = { inherit inputs; }; }; }; }