let module_inst = { interfaces = let AP = { # AP enable = true; interface-mode = "trunk"; vlans = [ "users" "admin" ]; }; off.enable = false; in { "ge-0/0/12" = AP; "ge-0/0/13" = AP; "ge-0/0/14" = AP; "ge-0/0/15" = AP; "ge-0/0/16" = AP; "ge-0/0/17" = AP; "ge-0/1/1" = { enable = true; interface-mode = "trunk"; vlans = [ "uplink-cri" ]; }; "xe-0/1/0" = { # upstream enable = true; interface-mode = "trunk"; vlans = [ "all" ]; dhcp_trusted = true; }; "me0" = { # mgmt enable = true; management = "192.168.42.6/24"; }; }; vlans = { "users".ids = [ { begin = 3045; end = 4094; } ]; "admin" = { ids = 3000; management = "10.0.0.2/22"; }; "uplink-cri".ids = [ 223 ]; }; }; module = import ./moduleMaker.nix [ "ge-0/0/0" "ge-0/0/1" "ge-0/0/2" "ge-0/0/3" "ge-0/0/4" "ge-0/0/5" "ge-0/0/6" "ge-0/0/7" "ge-0/0/8" "ge-0/0/9" "ge-0/0/10" "ge-0/0/11" "ge-0/0/12" "ge-0/0/13" "ge-0/0/14" "ge-0/0/15" "ge-0/0/16" "ge-0/0/17" "ge-0/0/18" "ge-0/0/19" "ge-0/0/20" "ge-0/0/21" "ge-0/0/22" "ge-0/0/23" "ge-0/0/24" "ge-0/0/25" "ge-0/0/26" "ge-0/0/27" "ge-0/0/28" "ge-0/0/29" "ge-0/0/30" "ge-0/0/31" "ge-0/0/32" "ge-0/0/33" "ge-0/0/34" "ge-0/0/35" "ge-0/0/36" "ge-0/0/37" "ge-0/0/38" "ge-0/0/39" "ge-0/0/40" "ge-0/0/41" "ge-0/0/42" "ge-0/0/43" "ge-0/0/44" "ge-0/0/45" "ge-0/0/46" "ge-0/0/47" "ge-0/1/0" "ge-0/1/1" "ge-0/1/2" "ge-0/1/3" "xe-0/1/0" "xe-0/1/1" "xe-0/1/2" "xe-0/1/3" "me0" ]; in (import ).evalModules { specialArgs.pkgs = import {}; modules = [ module module_inst ]; }