{ config, lib, ... }:

{
  # device.address device.hostname
  generateDeviceStrings = devices: lib.concatStringsSep "\n"
    (lib.mapAttrsToList (name: device: "${device.address} ${device.hostname}") devices);
    
  getDeviceAddress = interface: device:
    config.architect.networks.${interface}.devices.${device}.address;

  architectInterfaceAddress = interface:
    config.architect.networks.${interface}.devices.architect.address;
}