buildFHSEnv: propagate host /etc if nested
This fixes use cases like launching Lutris/Heroic from Steam.
This commit is contained in:
parent
be1866d698
commit
5eb4128d60
1 changed files with 7 additions and 1 deletions
|
@ -149,6 +149,13 @@ let
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# propagate /etc from the actual host if nested
|
||||||
|
if [[ -e /.host-etc ]]; then
|
||||||
|
ro_mounts+=(--ro-bind /.host-etc /.host-etc)
|
||||||
|
else
|
||||||
|
ro_mounts+=(--ro-bind /etc /.host-etc)
|
||||||
|
fi
|
||||||
|
|
||||||
for i in ${lib.escapeShellArgs etcBindEntries}; do
|
for i in ${lib.escapeShellArgs etcBindEntries}; do
|
||||||
if [[ "''${etc_ignored[@]}" =~ "$i" ]]; then
|
if [[ "''${etc_ignored[@]}" =~ "$i" ]]; then
|
||||||
continue
|
continue
|
||||||
|
@ -193,7 +200,6 @@ let
|
||||||
${lib.optionalString unshareCgroup "--unshare-cgroup"}
|
${lib.optionalString unshareCgroup "--unshare-cgroup"}
|
||||||
${lib.optionalString dieWithParent "--die-with-parent"}
|
${lib.optionalString dieWithParent "--die-with-parent"}
|
||||||
--ro-bind /nix /nix
|
--ro-bind /nix /nix
|
||||||
--ro-bind /etc /.host-etc
|
|
||||||
${lib.optionalString privateTmp "--tmpfs /tmp"}
|
${lib.optionalString privateTmp "--tmpfs /tmp"}
|
||||||
# Our glibc will look for the cache in its own path in `/nix/store`.
|
# Our glibc will look for the cache in its own path in `/nix/store`.
|
||||||
# As such, we need a cache to exist there, because pressure-vessel
|
# As such, we need a cache to exist there, because pressure-vessel
|
||||||
|
|
Loading…
Reference in a new issue