gnu: Bootstrap python-next.
Changes
2 files changed · +43 −1
| File | Status | Add | Del | Content |
|---|---|---|---|---|
| gnu/packages/python-build.scm | modified | +8 | −0 | View file |
| gnu/packages/python.scm | modified | +35 | −1 | View file |
gnu/packages/python-build.scm
View filediff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index 02bf4d6..1bf4120 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -499,6 +499,14 @@ and many external plugins.")
build-system level.")
(license license:gpl3+)))
+(define-public python-next-pytest-guix
+ (package/inherit python-pytest-guix
+ (name "python-next-pytest-guix")
+ ;; Need to use the name "python" as that is what the builder accesses.
+ (native-inputs
+ `(("python" ,(module-ref (resolve-interface '(gnu packages python))
+ 'python-next))))))
+
(define-public python-pytoml
(package
(name "python-pytoml")
gnu/packages/python.scm
View filediff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index a108aec..d813677 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -1345,6 +1345,12 @@ data types.")
;; for XML support, which is generally expected to be available.
(inputs (list expat libffi openssl zlib))))
+(define-public python-next-minimal
+ (package/inherit python-next
+ (name "python-next-minimal")
+ (outputs '("out"))
+ (inputs (list expat libffi openssl zlib))))
+
(define-public python-debug
(package/inherit python
(name "python-debug")
@@ -1417,8 +1423,11 @@ and the unversioned commands available.")))
(define-public python-wrapper (wrap-python3 python))
(define-public python-minimal-wrapper (wrap-python3 python-minimal))
+(define-public python-next-wrapper (wrap-python3 python-next))
+(define-public python-next-minimal-wrapper (wrap-python3 python-next-minimal))
+
;; The Python used in pyproject-build-system.
-(define-public python-sans-pip
+(define-public (remove-pip python)
(hidden-package
(package/inherit python
(arguments
@@ -1427,9 +1436,34 @@ and the unversioned commands available.")))
#~(append '("--with-ensurepip=no")
(delete "--with-ensurepip=install" #$flags))))))))
+(define-public python-sans-pip
+ (remove-pip python))
+
(define-public python-sans-pip-wrapper
(wrap-python3 python-sans-pip))
+(define-public python-next-sans-pip
+ (remove-pip python-next))
+
+(define-public python-next-sans-pip-wrapper
+ (wrap-python3 python-next-sans-pip))
+
+(define-public python-next-setuptools-bootstrap
+ ((package-input-rewriting/spec
+ `(("python" . ,(const python-next-sans-pip))))
+ python-setuptools-bootstrap))
+
+(define-public with-python-next
+ (package-input-rewriting
+ `((,python . ,python-next)
+ (,python-minimal . ,python-next-minimal)
+ (,python-wrapper . ,python-next-wrapper)
+ (,python-minimal-wrapper . ,python-next-minimal-wrapper)
+ (,python-sans-pip . ,python-next-sans-pip)
+ (,python-sans-pip-wrapper . ,python-next-sans-pip-wrapper)
+ (,python-setuptools-bootstrap . ,python-next-setuptools-bootstrap)
+ (,python-pytest-guix . ,python-next-pytest-guix))))
+
(define-public pythoncapi-compat
;; No release nor tags: use the latest commit.
(let ((commit "b8fe76f597af6593dfcb43a6dd388bab98938b91")