/*
Name:     Link to where information on the name can be found
Why:      Why is it named this
Type:     VM/Physical
Hardware: - if its a VM, the hardware (PowerEdge r210) if its physical
From:     2023/2024/2025/...
Role:     What role does it have in teh cluster
Notes:
*/
{
  pkgs,
  lib,
  nodes,
  ...
}: let
  # name of the server, sets teh hostname and record for it
  name = "name";
  # Assigned IP address
  ip_pub = "193.1.99.000";

  # dont need to change these
  hostname = "${name}.skynet.ie";
  host = {
    ip = ip_pub;
    name = name;
    hostname = hostname;
  };
in {
  # what configurrations to import, email in this example
  imports = [
    ../applications/email.nix
  ];

  deployment = {
    # dont need to change these
    targetHost = hostname;
    targetPort = 22;
    targetUser = null;

    # deployment option: active-dns/active-core/active-ext/active
    tags = [
      "active"
    ];
  };

  services.skynet = {
    # pass in the details of the host server
    host = host;

    # enable the backup service
    backup.enable = true;

    # enable the imported service
    email.enable = true;
  };
}