29 lines
696 B
Nix
29 lines
696 B
Nix
|
{ 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" ];
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|