summaryrefslogtreecommitdiff
path: root/gnu/packages/python-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r--gnu/packages/python-xyz.scm66
1 files changed, 66 insertions, 0 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 05a0c14a709..f3dd18a5515 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -184,6 +184,7 @@
184;;; Copyright © 2026 Sughosha <sughosha@disroot.org> 184;;; Copyright © 2026 Sughosha <sughosha@disroot.org>
185;;; Copyright © 2026 orahcio <orahcio@gmail.com> 185;;; Copyright © 2026 orahcio <orahcio@gmail.com>
186;;; Copyright © 2026 John Dawson <dawson.john.andrew@gmail.com> 186;;; Copyright © 2026 John Dawson <dawson.john.andrew@gmail.com>
187;;; Copyright © 2026 Kevin Deldycke <kevin@deldycke.com>
187;;; 188;;;
188;;; This file is part of GNU Guix. 189;;; This file is part of GNU Guix.
189;;; 190;;;
@@ -777,6 +778,71 @@ templates language.")
777 (license (list license:zpl2.1 778 (license (list license:zpl2.1
778 license:psfl)))) 779 license:psfl))))
779 780
781(define-public python-click-extra
782 (package
783 (name "python-click-extra")
784 (version "8.1.4")
785 (source
786 (origin
787 (method git-fetch)
788 (uri (git-reference
789 (url "https://github.com/kdeldycke/click-extra")
790 (commit (string-append "v" version))))
791 (file-name (git-file-name name version))
792 (sha256
793 (base32 "1mglhfrmwq616irga69vv206bf3d20kp1jm8fvhgcidj53cxygj7"))))
794 (build-system pyproject-build-system)
795 ;; Upstream uses uv-build which is not yet available in Guix.
796 (arguments
797 (list
798 #:build-backend "setuptools.build_meta"
799 #:test-flags
800 ;; Skip the network tests.
801 #~(list "-m" "not network")
802 #:phases
803 ;; The setuptools backend used here (in place of upstream's
804 ;; uv-build) installs only ``*.py``; declare the data files loaded
805 ;; at import time as package data.
806 #~(modify-phases %standard-phases
807 (add-after 'unpack 'declare-package-data
808 (lambda _
809 (substitute* "pyproject.toml"
810 (("^\\[build-system\\]")
811 (string-append
812 "[tool.setuptools.package-data]\n"
813 "click_extra = [\"*.toml\", \"py.typed\"]\n"
814 "\n[build-system]"))))))))
815
816 (native-inputs
817 ;; Optional libraries imported at module level by the test suite.
818 (list python-hjson
819 python-jsonschema
820 python-pygments
821 python-pytest
822 python-pytest-httpserver
823 python-pyyaml
824 python-requests
825 python-setuptools
826 python-tomlkit
827 python-xmltodict))
828 (propagated-inputs
829 (list python-boltons
830 python-click
831 python-cloup
832 python-deepmerge
833 python-extra-platforms
834 python-tabulate
835 python-wcmatch
836 python-wcwidth))
837 (home-page "https://kdeldycke.github.io/click-extra/")
838 (synopsis "Drop-in replacement for Click to build colorful CLIs")
839 (description
840 "Click Extra extends the Click framework with colored help screens,
841configuration file support, table rendering, and platform detection. It
842serves as a drop-in replacement adding features for user-friendly command-line
843interfaces.")
844 (license license:gpl2+)))
845
780(define-public python-conda-content-trust 846(define-public python-conda-content-trust
781 (package 847 (package
782 (name "python-conda-content-trust") 848 (name "python-conda-content-trust")