aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/development/python-modules/virtualenv/0001-Check-base_prefix-and-base_exec_prefix-for-Python-2.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/virtualenv/0001-Check-base_prefix-and-base_exec_prefix-for-Python-2.patch')
-rw-r--r--nixpkgs/pkgs/development/python-modules/virtualenv/0001-Check-base_prefix-and-base_exec_prefix-for-Python-2.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/virtualenv/0001-Check-base_prefix-and-base_exec_prefix-for-Python-2.patch b/nixpkgs/pkgs/development/python-modules/virtualenv/0001-Check-base_prefix-and-base_exec_prefix-for-Python-2.patch
new file mode 100644
index 00000000000..2b34da289e2
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/virtualenv/0001-Check-base_prefix-and-base_exec_prefix-for-Python-2.patch
@@ -0,0 +1,37 @@
+From 21563405d6e2348ee457187f7fb61beb102bb367 Mon Sep 17 00:00:00 2001
+From: Frederik Rietdijk <fridh@fridh.nl>
+Date: Sun, 24 May 2020 09:33:13 +0200
+Subject: [PATCH] Check base_prefix and base_exec_prefix for Python 2
+
+This is a Nixpkgs-specific change so it can support virtualenvs from Nix envs.
+---
+ src/virtualenv/discovery/py_info.py | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/src/virtualenv/discovery/py_info.py b/src/virtualenv/discovery/py_info.py
+index 6f12128..74e9218 100644
+--- a/src/virtualenv/discovery/py_info.py
++++ b/src/virtualenv/discovery/py_info.py
+@@ -51,13 +51,17 @@ class PythonInfo(object):
+ self.version = u(sys.version)
+ self.os = u(os.name)
+
++ config_vars = {} if sys.version_info.major is not 2 else sysconfig._CONFIG_VARS
++ base_prefix = config_vars.get("prefix")
++ base_exec_prefix = config_vars.get("exec_prefix")
++
+ # information about the prefix - determines python home
+ self.prefix = u(abs_path(getattr(sys, "prefix", None))) # prefix we think
+- self.base_prefix = u(abs_path(getattr(sys, "base_prefix", None))) # venv
++ self.base_prefix = u(abs_path(getattr(sys, "base_prefix", base_prefix))) # venv
+ self.real_prefix = u(abs_path(getattr(sys, "real_prefix", None))) # old virtualenv
+
+ # information about the exec prefix - dynamic stdlib modules
+- self.base_exec_prefix = u(abs_path(getattr(sys, "base_exec_prefix", None)))
++ self.base_exec_prefix = u(abs_path(getattr(sys, "base_exec_prefix", base_exec_prefix)))
+ self.exec_prefix = u(abs_path(getattr(sys, "exec_prefix", None)))
+
+ self.executable = u(abs_path(sys.executable)) # the executable we were invoked via
+--
+2.25.1
+