nixpkgs/pkgs/build-support/build-fhsenv-bubblewrap
Bjørn Forsman dfd0be8cd2 buildFHSEnv: don't overwrite env vars to /usr prefix
Overwriting needlessly breaks using buildFHSEnv programs inside other
derivations / build envs. Fix it by prepending the FHS paths instead.

(I think the FHS paths should have the lowest priority, by suffixing
them, but prefixing is a less disruptive change, so do that for now.)

Test setup:

  $ NIXPKGS_ALLOW_UNFREE=1 nix-build -A quartus-prime-lite

Before:

  $ NIX_CFLAGS_COMPILE="-I /path" NIX_CFLAGS_LINK="-L /path" NIX_LDFLAGS="-L /path" PKG_CONFIG_PATH=/path ACLOCAL_PATH=/path ./result/bin/quartus-prime-lite bash -c 'printf "NIX_CFLAGS_COMPILE=$NIX_CFLAGS_COMPILE\nNIX_CFLAGS_LINK=$NIX_CFLAGS_LINK\nNIX_LDFLAGS=$NIX_LDFLAGS\nPKG_CONFIG_PATH=$PKG_CONFIG_PATH\nACLOCAL_PATH=$ACLOCAL_PATH\n"'
  NIX_CFLAGS_COMPILE=-idirafter /usr/include
  NIX_CFLAGS_LINK=-L/usr/lib -L/usr/lib32
  NIX_LDFLAGS=-L/usr/lib -L/usr/lib32
  PKG_CONFIG_PATH=/usr/lib/pkgconfig
  ACLOCAL_PATH=/usr/share/aclocal

After:

  $ NIX_CFLAGS_COMPILE="-I /path" NIX_CFLAGS_LINK="-L /path" NIX_LDFLAGS="-L /path" PKG_CONFIG_PATH=/path ACLOCAL_PATH=/path ./result/bin/quartus-prime-lite bash -c 'printf "NIX_CFLAGS_COMPILE=$NIX_CFLAGS_COMPILE\nNIX_CFLAGS_LINK=$NIX_CFLAGS_LINK\nNIX_LDFLAGS=$NIX_LDFLAGS\nPKG_CONFIG_PATH=$PKG_CONFIG_PATH\nACLOCAL_PATH=$ACLOCAL_PATH\n"'
  NIX_CFLAGS_COMPILE=-idirafter /usr/include -I /path
  NIX_CFLAGS_LINK=-L/usr/lib -L/usr/lib32 -L /path
  NIX_LDFLAGS=-L/usr/lib -L/usr/lib32 -L /path
  PKG_CONFIG_PATH=/usr/lib/pkgconfig:/path
  ACLOCAL_PATH=/usr/share/aclocal:/path

(I also included GST_PLUGIN_SYSTEM_PATH_1_0, although it's not a "build"
oriented variable.)
2026-01-29 18:55:01 +01:00
..
rootfs-builder buildFHSEnv: update deps 2025-07-27 14:37:30 +03:00
buildFHSEnv.nix buildFHSEnv: don't overwrite env vars to /usr prefix 2026-01-29 18:55:01 +01:00
container-init.cc
default.nix buildFHSEnvBubblewrap: do not use read-only bind on /nix 2025-11-21 15:43:24 -08:00