{ description = "NixOS from Scratch"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-25.11"; mango = { url = "github:tonybanters/mangowc"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, nixpkgs, nixpkgs-stable, mango, ... }: let system = "x86_64-linux"; pkgs-stable = import nixpkgs-stable { inherit system; config.allowUnfree = true; }; mkHost = hostname: nixpkgs.lib.nixosSystem { system = system; specialArgs = {inherit pkgs-stable;}; modules = [ ./configuration.nix ./hosts/${hostname}/hardware-configuration.nix {networking.hostName = hostname;} mango.nixosModules.mango ] ++ (if hostname == "nixos-srv" then [./server] else []); }; in { nixosConfigurations = { nixos-btw = mkHost "nixos-btw"; nixos-srv = mkHost "nixos-srv"; }; }; }