{ description = "Stationette nix config"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; disko.url = "github:nix-community/disko/latest"; impermanence.url = "github:nix-community/impermanence"; home-manager = { url = "github:nix-community/home-manager/release-25.11"; inputs.nixpkgs.follows = "nixpkgs"; }; firefox-addons = { url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons"; inputs.nixpkgs.follows = "nixpkgs"; }; try-cli = { url = "github:tobi/try-cli"; inputs.nixpkgs.follows = "nixpkgs"; }; elephant = { url = "github:abenz1267/elephant"; # inputs.nixpkgs.follows = "nixpkgs"; }; walker = { url = "github:abenz1267/walker"; inputs.elephant.follows = "elephant"; inputs.nixpkgs.follows = "nixpkgs"; }; voxtype = { url = "github:peteonrails/voxtype"; inputs.nixpkgs.follows = "nixpkgs"; }; # hyprland-preview-share-picker = { # url = "github:WhySoBad/hyprland-preview-share-picker"; # inputs.nixpkgs.follows = "nixpkgs"; # }; }; outputs = { self, nixpkgs, nixpkgs-unstable, impermanence, disko, home-manager, try-cli, voxtype, walker, # hyprland-preview-share-picker, ... } @ inputs: let lib = nixpkgs.lib; system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; pkgs-unstable = nixpkgs-unstable.legacyPackages.${system}; in { nixosConfigurations = { stationette = nixpkgs.lib.nixosSystem { modules = [ ./hardware-configuration.nix ./hardware ./system home-manager.nixosModules.home-manager { powerManagement.enable = true; system.stateVersion = "25.11"; home-manager = { users.chris = import ./home; extraSpecialArgs = { inherit inputs; inherit pkgs-unstable; inherit try-cli; inherit voxtype; inherit walker; inherit impermanence; }; }; } ]; specialArgs = { inherit inputs; inherit pkgs-unstable; inherit impermanence; inherit disko; }; }; }; # Standalone home-manager configuration entrypoint homeConfigurations = { chris = home-manager.lib.homeManagerConfiguration { inherit pkgs; extraSpecialArgs = { inherit inputs; inherit pkgs-unstable; inherit try-cli; inherit voxtype; inherit walker; inherit impermanence; }; modules = [ ./home ]; }; }; nix.settings = { extra-substituters = [ "https://walker.cachix.org" "https://walker-git.cachix.org" ]; extra-trusted-public-keys = [ "walker.cachix.org-1:fG8q+uAaMqhsMxWjwvk0IMb4mFPFLqHjuvfwQxE4oJM=" "walker-git.cachix.org-1:vmC0ocfPWh0S/vRAQGtChuiZBTAe4wiKDeyyXM0/7pM=" ]; }; }; }