aboutsummaryrefslogtreecommitdiff
path: root/src/nix-env
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2023-07-24 14:02:05 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2023-08-02 12:54:48 -0400
commit9b908fa70a07219a110ddd63ec3593c2c2269918 (patch)
tree484f4a4fb02229f0ce79ba40cfd7945fad1e7896 /src/nix-env
parentd00469ebf94dba4ae30120c1ba36085ac20443b8 (diff)
Factor out `nix-defexpr` path computation
Avoid duplicated code, and also avoid "on the fly" path construction (which makes it harder to keep track of which paths we use). The factored out code doesn't create the Nix state dir anymore, but this is fine because other in nix-env and nix-channel does: - nix-channel: Line 158 in this commit - nix-env: Line 1407 in this commit
Diffstat (limited to 'src/nix-env')
-rw-r--r--src/nix-env/nix-env.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/nix-env/nix-env.cc b/src/nix-env/nix-env.cc
index 91b073b49..3dc3db0fc 100644
--- a/src/nix-env/nix-env.cc
+++ b/src/nix-env/nix-env.cc
@@ -15,6 +15,7 @@
#include "value-to-json.hh"
#include "xml-writer.hh"
#include "legacy.hh"
+#include "eval-settings.hh" // for defexpr
#include <cerrno>
#include <ctime>
@@ -1399,7 +1400,7 @@ static int main_nix_env(int argc, char * * argv)
globals.instSource.type = srcUnknown;
globals.instSource.systemFilter = "*";
- Path nixExprPath = settings.useXDGBaseDirectories ? createNixStateDir() + "/defexpr" : getHome() + "/.nix-defexpr";
+ Path nixExprPath = getNixDefExpr();
if (!pathExists(nixExprPath)) {
try {