{ config, lib, ... }: with lib; mkIf (elem "nspawn" config.machine.services) { systemd = let fn = import ../fn.nix { inherit lib; }; in { nspawn = recursiveUpdate (listToAttrs ( (map ( name: { name = name; value = { networkConfig.VirtualEthernet = "no"; }; } ) (fn.lst { p = /var/lib/machines; t = "directory"; b = false; }) ))) { "64Arch" = { filesConfig = { "BindReadOnly" = ["/tmp/.X11-unix"]; "Bind" = ["/dev/snd" "/dev/dri"]; # TODO: Add this to service overrides # "DeviceAllow" = [ "/dev/dri/renderD128" ]; }; }; }; }; }