summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorDanial Behzadi <dani.behzi@ubuntu.com>2021-06-26 15:28:49 -0400
committerRaghav Gururajan <rg@raghavgururajan.name>2021-06-26 15:40:15 -0400
commit1f15a6559b308fdfec97bda09b03801582e7b302 (patch)
tree0e833cc3218f9261f8ed85c805072e5500b4c12b /gnu
parent43b87b4a05a754b7c7aed1f8ddc74f32125d4f3d (diff)
downloadguix-1f15a6559b308fdfec97bda09b03801582e7b302.tar.gz
gnu: Add python-fire.
* gnu/packages/python-xyz.scm (python-fire): New variable.

Signed-off-by: Raghav Gururajan <rg@raghavgururajan.name>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/python-xyz.scm39
1 files changed, 39 insertions, 0 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6c0930f8f7..7dae6607a0 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -101,6 +101,7 @@
 ;;; Copyright © 2021 LibreMiami <packaging-guix@libremiami.org>
 ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
 ;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
+;;; Copyright © 2021 Danial Behzadi <dani.behzi@ubuntu.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -220,6 +221,44 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-fire
+  (package
+    (name "python-fire")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "fire" version))
+       (sha256
+        (base32
+         "0qka44n88y3qcj7xz0k0f3qb4phcg4z0wvd4jcii9lcr6rvbiqn5"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest", python-pytest)))
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _ (invoke "pytest"))))))
+    (inputs
+     `(("python-six", python-six)
+       ("python-termcolor", python-termcolor)))
+    (synopsis "Library for automatically generating command line interfaces")
+    (description
+     "Fire is a library for automatically generating command line interfaces
+from absolutely any Python object.  The following are the advantages:
+@itemize
+@item A simple way to create a CLI in Python.
+@item A helpful tool for developing and debugging Python code.
+@item Helps with exploring existing code or turning other people's code into a
+command line interface.
+@item Makes transitioning between Bash and Python easier.
+@item Makes using a Python REPL easier by setting up the REPL with the modules
+and variables you'll need already imported and created.
+@end itemize")
+    (home-page "https://github.com/google/python-fire")
+    (license license:asl2.0)))
+
 (define-public python-twodict
   (package
     (name "python-twodict")