{ description = "Default environment"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; nix-darwin.url = "github:nix-darwin/nix-darwin/master"; nix-darwin.inputs.nixpkgs.follows = "nixpkgs"; home-manager.url = "github:nix-community/home-manager"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; nixvim.url = "github:nix-community/nixvim"; nixvim.inputs.nixpkgs.follows = "nixpkgs"; claude-code.url = "github:sadjow/claude-code-nix"; firefox-addons = { url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons"; inputs.nixpkgs.follows = "nixpkgs"; }; nix-homebrew.url = "github:zhaofengli/nix-homebrew"; disko.url = "github:nix-community/disko"; disko.inputs.nixpkgs.follows = "nixpkgs"; }; outputs = inputs@{ self, nix-darwin, nixpkgs, home-manager, nixvim, claude-code, firefox-addons, nix-homebrew, disko }: { darwinConfigurations."imac" = nix-darwin.lib.darwinSystem { modules = [ ./hosts/darwin/imac/system.nix ]; specialArgs = { inherit nix-homebrew; }; }; darwinConfigurations."mba" = nix-darwin.lib.darwinSystem { modules = [ ./hosts/darwin/mba/system.nix ]; specialArgs = { inherit nix-homebrew; }; }; nixosConfigurations."hs" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ disko.nixosModules.disko ./hosts/nixos/hs/system.nix ./hosts/nixos/hs/disk-config.nix ]; specialArgs = { inherit home-manager nixvim claude-code; }; }; nixosConfigurations."hs-iso" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ disko.nixosModules.disko ./hosts/nixos/hs/iso.nix ]; }; homeConfigurations = { "yanlin@imac" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.aarch64-darwin; modules = [ ./hosts/darwin/imac/home.nix ]; extraSpecialArgs = { inherit claude-code nixvim firefox-addons; }; }; "yanlin@mba" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.aarch64-darwin; modules = [ ./hosts/darwin/mba/home.nix ]; extraSpecialArgs = { inherit claude-code nixvim firefox-addons; }; }; "yanlin@hs" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux; modules = [ ./hosts/nixos/hs/home.nix ]; extraSpecialArgs = { inherit claude-code nixvim; }; }; }; }; }