{ inputs = { nixpkgs-stable = { url = "github:NixOS/nixpkgs/nixos-22.11"; }; nixpkgs-unstable = { url = "github:NixOS/nixpkgs/nixos-unstable"; }; home-manager-unstable = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs-unstable"; }; nixos-generators = { url = "github:nix-community/nixos-generators"; inputs.nixpkgs.follows = "nixpkgs-unstable"; }; fsh = { url = "github:ashhhleyyy/fsh"; inputs.nixpkgs.follows = "nixpkgs-stable"; }; }; outputs = { self, nixpkgs-stable, nixpkgs-unstable, fsh, home-manager-unstable, nixos-generators, ... }: let home-manager = home-manager-unstable; overlays = [ fsh.overlays.default ]; overlays-module = ({ nixpkgs, ... }: { nixpkgs.overlays = overlays; }); in { nixosConfigurations.fern = nixpkgs-unstable.lib.nixosSystem { system = "x86_64-linux"; modules = [ overlays-module ./hosts/fern/configuration.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.ash = { ... }: { imports = [ fsh.homeModules.fsh ./home/ash ./home/ash/desktop.nix ]; }; } ]; }; nixosConfigurations.alex = nixpkgs-unstable.lib.nixosSystem { system = "x86_64-linux"; modules = [ overlays-module ./hosts/alex/configuration.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.ash = { ... }: { imports = [ fsh.homeModules.fsh ./home/ash ./home/ash/desktop.nix # ./home/ash/vscodium.nix ]; }; } ]; }; nixosConfigurations.emira = nixpkgs-unstable.lib.nixosSystem { system = "x86_64-linux"; modules = [ overlays-module ./hosts/emira/configuration.nix ./common/generic-qemu.nix ]; }; packages.x86_64-linux = { emira = nixos-generators.nixosGenerate { system = "x86_64-linux"; modules = [ overlays-module ./hosts/emira/configuration.nix ]; format = "qcow"; }; }; }; }