guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 1/2] gnu: Add python-pyqi.


From: Ben Woodcroft
Subject: [PATCH 1/2] gnu: Add python-pyqi.
Date: Sun, 24 Apr 2016 22:27:39 +1000

* gnu/packages/python.scm (python-pyqi, python2-pyqi): New variables.
---
 gnu/packages/python.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 8ae7566..2436a1f 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -8626,6 +8626,54 @@ GnuPG encryption, and more.  It also supports management 
of Amazon's
 CloudFront content delivery network.")
     (license gpl2+)))
 
+(define-public python-pyqi
+  (package
+    (name "python-pyqi")
+    (version "0.3.2")
+    (source
+     (origin
+       (method url-fetch)
+       ;; Use GitHub as source because PyPI archive does not contain tests.
+       (uri (string-append "https://github.com/biocore/pyqi/archive/";
+                           version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "085gi3xr9q1py2nl96ry9fnb20kba5h1zkxzqrkd5dl3g7xdwvlw"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'remove-version-requirement
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "setup.py"
+               (("if ver not in \\['2.7', '3.3'\\]:")
+                (string-append
+                 "if ver not in ['2.7', '3.3', '"
+                 (string-take (string-take-right
+                               (assoc-ref inputs "python") 5) 3)
+                 "']:")))))
+         (replace 'check
+           (lambda _ (zero? (system* "nosetests")))))))
+    (native-inputs
+     `(("python-nose" ,python-nose)))
+    (home-page "http://bipy.github.io/pyqi";)
+    (synopsis "Wrapping commands in multiple interfaces")
+    (description "pyqi is a Python framework designed to support wrapping
+general commands in multiple types of interfaces, including at the command
+line, HTML and API levels. A @dfn{command} is a class that takes some inputs,
+performs some function, and produces some outputs.  An @dfn{interface} is a
+light wrapper around that command that makes it accessible to users.")
+    (license bsd-3)
+    (properties `((python2-variant . ,(delay python2-pyqi))))))
+
+(define-public python2-pyqi
+  (let ((base (package-with-python2 (strip-python2-variant python-pyqi))))
+    (package
+      (inherit base)
+      (native-inputs `(("python2-setuptools" ,python2-setuptools)
+                       ,@(package-native-inputs base))))))
+
 (define-public python-pkgconfig
   (package
     (name "python-pkgconfig")
-- 
2.5.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]