summaryrefslogtreecommitdiff
path: root/gnu/packages/python.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/python.scm')
-rw-r--r--gnu/packages/python.scm35
1 files changed, 34 insertions, 1 deletions
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 00c3eb7774..0c164d7991 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -26,7 +26,7 @@
;;; Copyright © 2016, 2017 Nikita <[email protected]>
;;; Copyright © 2016 Dylan Jeffers <sapientech@[email protected]>
;;; Copyright © 2016 David Craven <[email protected]>
-;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Marius Bakke <[email protected]>
+;;; Copyright © 2016-2022 Marius Bakke <[email protected]>
;;; Copyright © 2016, 2017 Stefan Reichör <[email protected]>
;;; Copyright © 2016, 2017 Alex Vong <[email protected]>
;;; Copyright © 2016, 2017, 2018 Arun Isaac <[email protected]>
@@ -60,6 +60,7 @@
;;; Copyright © 2020, 2021 Greg Hogan <[email protected]>
;;; Copyright © 2022 Philip McGrath <[email protected]>
;;; Copyright © 2022 jgart <[email protected]>
+;;; Copyright © 2021 Lars-Dominik Braun <[email protected]>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -87,6 +88,7 @@
#:use-module (gnu packages hurd)
#:use-module (gnu packages libffi)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages python-build)
#:use-module (gnu packages readline)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tcl)
@@ -674,6 +676,37 @@ and the unversioned commands available.")))
(define-public python-wrapper (wrap-python3 python))
(define-public python-minimal-wrapper (wrap-python3 python-minimal))
+;; The Python used in pyproject-build-system.
+(define-public python-sans-pip
+ (hidden-package
+ (package/inherit python
+ (arguments
+ (substitute-keyword-arguments (package-arguments python)
+ ((#:configure-flags flags #~())
+ #~(append '("--with-ensurepip=no")
+ (delete "--with-ensurepip=install" #$flags))))))))
+
+(define-public python-sans-pip-wrapper
+ (wrap-python3 python-sans-pip))
+
+(define-public python-toolchain
+ (let ((base (package/inherit python-sans-pip-wrapper)))
+ (package
+ (inherit base)
+ (properties '())
+ (name "python-toolchain")
+ (propagated-inputs
+ (modify-inputs (package-propagated-inputs base)
+ (append python-pip
+ python-pypa-build
+ python-setuptools
+ python-wheel)))
+ (synopsis "Python toolchain")
+ (description
+ "Python toolchain including Python itself, setuptools and pip.
+Use this package if you need a minimal Python toolchain instead of just
+the interpreter."))))
+
(define-public micropython
(package
(name "micropython")