aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/python-build.scm
diff options
context:
space:
mode:
authorLars-Dominik Braun <lars@6xq.net>2022-04-23 11:07:58 +0200
committerMarius Bakke <marius@gnu.org>2022-10-27 19:43:06 +0200
commitc485a9d8af210425a0435280fff8588563e49684 (patch)
tree2808afa7226bfb9c1a52633d92b8d37acfcebdf5 /gnu/packages/python-build.scm
parentcae327a3b0507cc2d0d69c9c1abf4ec8c45c92e8 (diff)
downloadguix-c485a9d8af210425a0435280fff8588563e49684.tar.gz
guix-c485a9d8af210425a0435280fff8588563e49684.zip
gnu: python-setuptools: Move to python-build.
* gnu/packages/python-xyz.scm (python-setuptools): Move… * gnu/packages/python-build.scm: …here. * gnu/packages/chemistry.scm, gnu/packages/messaging.scm, gnu/packages/sequoia.scm, tests/lint.scm: Adjust module imports accordingly. Co-authored-by: Marius Bakke <marius@gnu.org>
Diffstat (limited to 'gnu/packages/python-build.scm')
-rw-r--r--gnu/packages/python-build.scm39
1 files changed, 39 insertions, 0 deletions
diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index 9d9b07f769..7572bc5ce3 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -41,6 +41,45 @@
;;;
;;; Code:
+(define-public python-setuptools
+ (package
+ (name "python-setuptools")
+ (version "64.0.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "setuptools" version))
+ (sha256
+ (base32
+ "1sllqf0bhsl2yilf1w0xnlz0r4yaksmwaj0ap91zdc6kgbigdjiv"))
+ (modules '((guix build utils)))
+ (snippet
+ ;; TODO: setuptools now bundles the following libraries:
+ ;; packaging, pyparsing, six and appdirs. How to unbundle?
+ ;; Remove included binaries which are used to build self-extracting
+ ;; installers for Windows.
+ '(for-each delete-file (find-files "setuptools"
+ "^(cli|gui).*\\.exe$")))))
+ (build-system python-build-system)
+ ;; FIXME: Tests require pytest, which itself relies on setuptools.
+ ;; One could bootstrap with an internal untested setuptools.
+ (arguments (list #:tests? #f))
+ (home-page "https://pypi.org/project/setuptools/")
+ (synopsis "Library designed to facilitate packaging Python projects")
+ (description "Setuptools is a fully-featured, stable library designed to
+facilitate packaging Python projects, where packaging includes:
+@itemize
+@item Python package and module definitions
+@item distribution package metadata
+@item test hooks
+@item project installation
+@item platform-specific details.
+@end itemize")
+ (license (list license:psfl ;setuptools itself
+ license:expat ;six, appdirs, pyparsing
+ license:asl2.0 ;packaging is dual ASL2/BSD-2
+ license:bsd-2))))
+
(define-public python-wheel
(package
(name "python-wheel")