{ config, lib, pkgs, ... }: { imports = [ ./network/interfaces.nix ./network/vlans.nix ./bgp/default.nix ./routing/static.nix ]; options.nix-nos = { enable = lib.mkEnableOption "Nix-NOS legacy compatibility and low-level network primitives only; not a supported cluster authoring source"; version = lib.mkOption { type = lib.types.str; default = "0.1.0"; readOnly = true; description = "Nix-NOS version"; }; }; config = lib.mkIf config.nix-nos.enable { warnings = [ '' nix-nos is limited to legacy compatibility and low-level network primitives. ultracloud.cluster backed by nix/lib/cluster-schema.nix is the only supported cluster authoring source. '' ]; # Global assertions assertions = [ { assertion = pkgs.stdenv.isLinux; message = "Nix-NOS is only supported on Linux systems"; } ]; }; }