# This is the configuration.nix # of the target machine in production. # Used by NixOps. # It is NOT copied nor usable on the target machine, # only the resulting closure is copied to the target machine. { pkgs, lib, config, ... }: let inherit (builtins.extraBuiltins) pass; #inherit (config) networking; mapImportedConfigRecursively = mapConfig: map (m: modArgs: let mod = if builtins.isFunction m || builtins.isAttrs m then lib.unifyModuleSyntax null null (lib.applyIfFunction null m modArgs) else lib.unifyModuleSyntax (toString m) (toString m) (lib.applyIfFunction (toString m) (import m) modArgs); in mod // { imports = mapImportedConfigRecursively mapConfig mod.imports; config = mapConfig mod.config; } ); in { imports = [ ../../base/unbound.nix ../../defaults.nix ./debug.nix ./fileSystems.nix ./hardware.nix #./netdata.nix ./networking.nix #./prometheus.nix ./sanoid.nix ./shorewall.nix ./syncoid.nix ./system.nix ./transmission.nix ./users.nix ]; }