Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nix-shell: don't use XDG_RUNTIME_DIR if TMPDIR is unset #2728

Open
wants to merge 1 commit into
base: master
from

Conversation

Projects
None yet
1 participant
@catern
Copy link
Contributor

catern commented Mar 15, 2019

XDG_RUNTIME_DIR isn't meant for possibly-large build processes; it's
mostly meant for small sockets, named pipes, and other IPC
mechanisms. As a result it's limited in size on many systems, and so
using it as a temporary directory (by setting TMPDIR to it) will cause
some test and build processes to fail when they try to use more space
than is available in XDG_RUNTIME_DIR.

For example, XDG_RUNTIME_DIR is limited to 100MB on an older Debian
system, and some build and test processes try to use several GB of
space for temporary artifacts; these failures are spurious, and can be
avoided if we just default directly to /tmp instead of trying to
default to XDG_RUNTIME_DIR first.

nix-shell: don't use XDG_RUNTIME_DIR if TMPDIR is unset
XDG_RUNTIME_DIR isn't meant for possibly-large build processes; it's
mostly meant for small sockets, named pipes, and other IPC
mechanisms. As a result it's limited in size on many systems, and so
using it as a temporary directory (by setting TMPDIR to it) will cause
some test and build processes to fail when they try to use more space
than is available in XDG_RUNTIME_DIR.

For example, XDG_RUNTIME_DIR is limited to 100MB on an older Debian
system, and some build and test processes try to use several GB of
space for temporary artifacts; these failures are spurious, and can be
avoided if we just default directly to /tmp instead of trying to
default to XDG_RUNTIME_DIR first.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.