{ lib, tree, ... }: let inherit (lib.lists) flatten; in { nixpkgs.overlays = [ (_final: super: { makeModulesClosure = x: super.makeModulesClosure (x // {allowMissing = true;}); }) ]; imports = flatten (with tree; [ users.root users.chaos (with tree.profiles.nixos; [ sshd connectivity.networkManager wifiHardware nixGC serverExtras ]) (with presets.home-manager.by-user; [ root.base root.minimalServer ]) ./hardware.nix ]); networking.firewall = { enable = true; allowPing = true; checkReversePath = "loose"; allowedTCPPorts = [22]; }; networking.hostName = "raspberry"; time.timeZone = "Europe/London"; system.stateVersion = "24.05"; home-manager.users.root.home.stateVersion = "24.05"; home-manager.users.chaos.home.stateVersion = "24.05"; }