{ config, pkgs, lib, ... }: with lib; let vmixLib = import ./../lib {inherit pkgs lib; }; vmixCfg = config.vmix; vmixNetwork = import ./modules/network.nix { inherit config pkgs lib ;}; vmixNetworkFunctions = import ./functions/network.nix { inherit pkgs lib ;}; #vmixVM = import ./modules/network.nix { inherit config pkgs lib ;}; in { options.vmix = { networks = lib.mkOption { type = types.attrsOf (types.submodule vmixNetwork); default = { }; }; }; config = with vmixNetworkFunctions; #with vmixVMFunctions; let networkServices = lib.concatMapAttrs mkNetworkService vmixCfg.networks; #vmServices = lib.concatMapAttrs mkVMService vmixCfg.vms; in { systemd.services = namespaceGlobalService // networkServices; }; }