dev-python/pipenv: new package, add 2026.5.2

Signed-off-by: Oz Tiram <oz.tiram@gmail.com>
This commit is contained in:
Oz Tiram
2026-04-08 16:11:37 +02:00
parent 6fe6762e46
commit 2d3735a3c5
5 changed files with 217 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
From 33dadedbe186b15b9acb38d88c2fe86743305aa2 Mon Sep 17 00:00:00 2001
From: Oz Tiram <oz.tiram@gmail.com>
Date: Tue, 30 Dec 2025 16:25:59 +0100
Subject: [PATCH 1/2] Append always install to pip extra args
Signed-off-by: Oz Tiram <oz.tiram@gmail.com>
---
pipenv/routines/install.py | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/pipenv/routines/install.py b/pipenv/routines/install.py
index 71655eb3..f5cdae95 100644
--- a/pipenv/routines/install.py
+++ b/pipenv/routines/install.py
@@ -563,6 +563,18 @@ def batch_install_iteration(
allow_global=False,
extra_pip_args=None,
):
+
+ # Gentoo patch:
+ # Install dependencies into the venv even if they exist
+ # in the system.
+ # This is needed because pipenv imports the system packages to run.
+ # It does not change your system's packages.
+
+ if (extra_pip_args is not None) and ("-I" not in extra_pip_args):
+ extra_pip_args.append("-I")
+
+ # End of Gentoo patch
+
with temp_environ():
if not allow_global:
os.environ["PIP_USER"] = "0"
--
2.51.2

View File

@@ -0,0 +1,47 @@
From 13eca720efeb7b3288aa3ff7436732da90f602f1 Mon Sep 17 00:00:00 2001
From: Oz Tiram <oz.tiram@gmail.com>
Date: Tue, 30 Dec 2025 16:28:32 +0100
Subject: [PATCH 2/2] Inject system packages
Signed-off-by: Oz Tiram <oz.tiram@gmail.com>
---
pipenv/patched/pip/__main__.py | 6 ++++++
pipenv/resolver.py | 5 +++++
2 files changed, 11 insertions(+)
diff --git a/pipenv/patched/pip/__main__.py b/pipenv/patched/pip/__main__.py
index e76aed6e..5e62c70b 100644
--- a/pipenv/patched/pip/__main__.py
+++ b/pipenv/patched/pip/__main__.py
@@ -21,6 +21,12 @@ if __package__ == "":
if __name__ == "__main__":
import importlib.util
import sys
+
+ SITE_PACKAGES_ROOT = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(__file__))))
+
+ # Inject site directory into system path.
+ sys.path.insert(-1, SITE_PACKAGES_ROOT)
+
spec = importlib.util.spec_from_file_location(
"pipenv",
location=os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))), "__init__.py"))
diff --git a/pipenv/resolver.py b/pipenv/resolver.py
index b050d842..746a17d6 100644
--- a/pipenv/resolver.py
+++ b/pipenv/resolver.py
@@ -7,6 +7,11 @@ from dataclasses import dataclass, field
from pathlib import Path
from typing import Any, Dict, List, Optional, Set
+SITE_PACKAGES_ROOT = os.path.dirname(os.path.dirname(__file__))
+
+# Inject site directory into system path.
+sys.path.insert(-1, SITE_PACKAGES_ROOT)
+
def _ensure_modules():
# Try to ensure typing_extensions is available in sys.modules
--
2.51.2