summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Kubisiak <brian@kubisiak.com>2022-09-25 05:59:24 -0700
committerLudovic Courtès <ludo@gnu.org>2022-10-06 23:17:04 +0200
commit96cbfc620263550002a897682e89b8dc0620d933 (patch)
tree88fe8a376fa1eddadb94c682173f510541d3e2c3
parent5e63e51afee0f674ff2ac961e3103011f53035cd (diff)
gnu: Add python-textual.
* gnu/packages/python-xyz.scm (python-textual): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/python-xyz.scm44
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 8575d4a67e..823e5952e4 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16041,6 +16041,50 @@ is made as zipfile like as possible.")
syntax highlighting, markdown and more to the terminal.")
(license license:expat)))
+(define-public python-textual
+ (package
+ (name "python-textual")
+ (version "0.1.18")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "textual" version))
+ (sha256
+ (base32
+ "08yg5a51hz1axfj5hx28hx31gq5apcj6vpkkmawmiplisa73z25j"))))
+ (build-system python-build-system)
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key inputs tests? #:allow-other-keys)
+ (when tests?
+ (copy-recursively (string-append
+ (assoc-ref inputs "tests") "/tests")
+ "tests")
+ (invoke "python" "-m" "pytest" "-vv")))))))
+ (propagated-inputs
+ (list python-rich python-typing-extensions))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("tests"
+ ;; The release on pypi comes without tests. We can't build from this
+ ;; checkout, though, because installation requires an invocation of
+ ;; poetry.
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Textualize/textual")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0b3ycwqhp21mg9fvmadgxhgbvkwq6fd784l2xcmvy77rravrnnax"))))))
+ (home-page "https://github.com/Textualize/textual")
+ (synopsis "Build text user interfaces in Python")
+ (description "Textual is a @acronym{TUI, Text User Interface} framework
+for Python inspired by modern web development.")
+ (license license:expat)))
+
(define-public python-magic
(package
(name "python-magic")