nixos/nixos-containers: require mounts for bind mount host paths

Fixes starting containers before bind mount host paths are mounted
This commit is contained in:
Kira Bruneau 2024-03-20 14:22:44 -04:00
parent 7872526e9c
commit 7f3643bef6
3 changed files with 40 additions and 1 deletions

View file

@ -828,7 +828,10 @@ in
script = startScript containerConfig;
postStart = postStartScript containerConfig;
serviceConfig = serviceDirectives containerConfig;
unitConfig.RequiresMountsFor = lib.optional (!containerConfig.ephemeral) "${stateDirectory}/%i";
unitConfig.RequiresMountsFor = lib.optional (!containerConfig.ephemeral) "${stateDirectory}/%i"
++ builtins.map
(d: if d.hostPath != null then d.hostPath else d.mountPoint)
(builtins.attrValues cfg.bindMounts);
environment.root = if containerConfig.ephemeral then "/run/nixos-containers/%i" else "${stateDirectory}/%i";
} // (
optionalAttrs containerConfig.autoStart