about summary refs log tree commit diff
path: root/pkgs/development/python-modules/virtualenv/virtualenv-change-prefix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/virtualenv/virtualenv-change-prefix.patch')
-rw-r--r--pkgs/development/python-modules/virtualenv/virtualenv-change-prefix.patch62
1 files changed, 0 insertions, 62 deletions
diff --git a/pkgs/development/python-modules/virtualenv/virtualenv-change-prefix.patch b/pkgs/development/python-modules/virtualenv/virtualenv-change-prefix.patch
deleted file mode 100644
index f3e8ea854f6a..000000000000
--- a/pkgs/development/python-modules/virtualenv/virtualenv-change-prefix.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-Without this patch `virtualenv --python=python2.7 .` fails with an
-error because it notices that the python readline.so is not in the
-same path as python2.7. I assume this is to avoid copying the wrong
-file on systems where it is possible to find incompatible libraries by
-accident. Adding "/nix/store" to the prefix fixes this problem.
-
-A sitecustomize.py is created in the virtualenv which makes libraries
-from the python specified by the --python argument available to the
-virtualenv. For example, this makes readline and sqlite3 available
-when a wrapped python is specified. If no --python argument is passed,
-it will only add the path to the python used when building
-`virtualenv`, which is the unwrapped python, so sqlite3 won't be
-available.
-
-
-diff --git a/virtualenv.py b/virtualenv.py
-index bcf3225..3530997 100755
---- a/virtualenv.py
-+++ b/virtualenv.py
-@@ -1163,20 +1163,7 @@ def path_locations(home_dir, dry_run=False):
- 
- 
- def change_prefix(filename, dst_prefix):
--    prefixes = [sys.prefix]
--
--    if IS_DARWIN:
--        prefixes.extend(
--            (
--                os.path.join("/Library/Python", VERSION, "site-packages"),
--                os.path.join(sys.prefix, "Extras", "lib", "python"),
--                os.path.join("~", "Library", "Python", VERSION, "site-packages"),
--                # Python 2.6 no-frameworks
--                os.path.join("~", ".local", "lib", "python", VERSION, "site-packages"),
--                # System Python 2.7 on OSX Mountain Lion
--                os.path.join("~", "Library", "Python", VERSION, "lib", "python", "site-packages"),
--            )
--        )
-+    prefixes = ["/nix/store", sys.prefix]
- 
-     if hasattr(sys, "real_prefix"):
-         prefixes.append(sys.real_prefix)
-@@ -1199,6 +1186,8 @@ def change_prefix(filename, dst_prefix):
-             if src_prefix != os.sep:  # sys.prefix == "/"
-                 assert relative_path[0] == os.sep
-                 relative_path = relative_path[1:]
-+                if src_prefix == "/nix/store":
-+                    relative_path = "/".join(relative_path.split("/")[1:])
-             return join(dst_prefix, relative_path)
-     assert False, "Filename {} does not start with any of these prefixes: {}".format(filename, prefixes)
- 
-@@ -1375,6 +1364,11 @@ def install_python(home_dir, lib_dir, inc_dir, bin_dir, site_packages, clear, sy
-     site_filename_dst = change_prefix(site_filename, home_dir)
-     site_dir = os.path.dirname(site_filename_dst)
-     writefile(site_filename_dst, SITE_PY)
-+    wrapper_path = join(prefix, "lib", PY_VERSION, "site-packages")
-+    writefile(
-+        join(site_dir, 'sitecustomize.py',),
-+        "import sys; sys.path.append('%s')" % wrapper_path
-+    )
-     writefile(join(site_dir, "orig-prefix.txt"), prefix)
-     site_packages_filename = join(site_dir, "no-global-site-packages.txt")
-     if not site_packages: