{ machine1 = {pkgs, lib, config, options, ...}: let ipv4 = if options.networking.privateIPv4.isDefined then config.networking.privateIPv4 else "X.X.X.X"; in { config = { deployment.targetEnv = "virtualbox"; deployment.virtualbox.headless = true; deployment.virtualbox.memorySize = 1024; deployment.virtualbox.vcpu = 2; deployment.virtualbox.disks.disk1.baseImage = ; #deployment.virtualbox.disks.disk1.size = 6024; # NOTE: resize not yet supported. deployment.storeKeysOnMachine = true; deployment.autoLuks = { # NOTE: not working on virtualbox deployment secretdisk = { device = "/dev/sda"; passphrase = "foobar"; autoFormat = true; cipher = "aes-cbc-essiv:sha256"; }; }; networking = { interfaces."enp0s8" = { #macAddress = "00:11:22:33:44:55"; ipv4.addresses = [ { address = ipv4; prefixLength = 32; } ]; ipv6.addresses = [ { address = "fe80::1"; prefixLength = 64; } ]; }; zones = { net = { iface = "enp0s3"; ipv4 = ipv4; }; lan = { iface = "enp0s8"; ipv4 = ipv4; #ipv6 = "fe80::1"; }; }; }; }; }; }