aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2021-11-21 15:52:01 +0000
committerAlyssa Ross <hi@alyssa.is>2021-11-21 16:14:19 +0000
commit664ee49e0d6f1ce0a1608559beeaf82bd039c690 (patch)
tree6d218c9abe702b86fb2b8fca4220d793370a6934
parent9cd8cffefc65fe425c6aa07aa3bc67a8eec46087 (diff)
nix-shell --pure: let variables for Wayland through
We let DISPLAY (X11) through, so we should let the Wayland equivalents through as well. Similarly, we let HOME through, so it should be okay to allow XDG_RUNTIME_DIR (which is needed for connecting to Wayland with WAYLAND_DISPLAY) through as well. Otherwise graphical applications will either fall back to X11 (if they support it), or just not work (if they don't).
-rwxr-xr-xsrc/nix-build/nix-build.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/nix-build/nix-build.cc b/src/nix-build/nix-build.cc
index 73d93480e..75576ef8a 100755
--- a/src/nix-build/nix-build.cc
+++ b/src/nix-build/nix-build.cc
@@ -105,7 +105,8 @@ static void main_nix_build(int argc, char * * argv)
// List of environment variables kept for --pure
std::set<string> keepVars{
- "HOME", "USER", "LOGNAME", "DISPLAY", "PATH", "TERM", "IN_NIX_SHELL",
+ "HOME", "XDG_RUNTIME_DIR", "USER", "LOGNAME", "DISPLAY",
+ "WAYLAND_DISPLAY", "WAYLAND_SOCKET", "PATH", "TERM", "IN_NIX_SHELL",
"NIX_SHELL_PRESERVE_PROMPT", "TZ", "PAGER", "NIX_BUILD_SHELL", "SHLVL",
"http_proxy", "https_proxy", "ftp_proxy", "all_proxy", "no_proxy"
};