Make the resource name available in all resources
Set _type for all resource types
Allow using EC2 key pairs by direct reference

So you can now say (in an EC2 machine definition)

  deployment.ec2.keyPair = resources.ec2KeyPairs.my-keypair;

instead of

  deployment.ec2.keyPair = resources.ec2KeyPairs.my-keypair.name;
Allow using elastic IP resources by direct reference

Example:

  resources.elasticIPs.my-ip =
    { region = "eu-west-1"; ...
    };

  machine =
    { config, pkgs, resources, ... }:
    { deployment.targetEnv = "ec2"; ...
      deployment.ec2.elasticIPv4 = resources.elasticIPs.my-ip;
    };