summary refs log tree commit diff
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2019-06-16 19:41:21 +0200
committerTobias Geerinckx-Rice <me@tobias.gr>2019-06-16 19:44:42 +0200
commit914bba28096c1b85e368537c02e9841258887acb (patch)
tree50c72985d924e3157e602598ca9c2080a6d016de
parent10a32973893f5229c963241b6339ecab05b6098e (diff)
downloadguix-914bba28096c1b85e368537c02e9841258887acb.tar.gz
gnu: docker-compose: Add required Python dependencies.
* gnu/packages/python-xyz.scm (python-jsonschema-2.6):
New old public variable.
* gnu/packages/docker.scm (docker-compose)[inputs]:
Add python-docker-pycreds and use python-jsonschema-2.6.
-rw-r--r--gnu/packages/docker.scm5
-rw-r--r--gnu/packages/python-xyz.scm26
2 files changed, 30 insertions, 1 deletions
diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm
index eb76b85676..bb981665d6 100644
--- a/gnu/packages/docker.scm
+++ b/gnu/packages/docker.scm
@@ -91,6 +91,8 @@ pseudo-terminal (PTY) allocated to a Docker container using the Python
 client.")
     (license license:asl2.0)))
 
+;; When updating, check whether python-jsonschema-2.6 can be removed from Guix
+;; entirely.
 (define-public docker-compose
   (package
     (name "docker-compose")
@@ -107,9 +109,10 @@ client.")
     (arguments '(#:tests? #f))
     (inputs
      `(("python-docker-py" ,python-docker-py)
+       ("python-docker-pycreds" ,python-docker-pycreds)
        ("python-dockerpty" ,python-dockerpty)
        ("python-docopt" ,python-docopt)
-       ("python-jsonschema" ,python-jsonschema)
+       ("python-jsonschema" ,python-jsonschema-2.6)
        ("python-pyyaml" ,python-pyyaml)
        ("python-requests" ,python-requests-2.7)
        ("python-six" ,python-six)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index a7c88e9187..284ecbd441 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -1966,6 +1966,32 @@ between Julian dates and Gregorian dates.")
               `(("python2-functools32" ,python2-functools32)
                 ,@(package-propagated-inputs jsonschema))))))
 
+;; This old version is still required by docker-compose as of 1.24.0.
+(define-public python-jsonschema-2.6
+  (package
+    (name "python-jsonschema")
+    (version "2.6.0")
+    (source (origin
+             (method url-fetch)
+             (uri (pypi-uri "jsonschema" version))
+             (sha256
+              (base32
+               "00kf3zmpp9ya4sydffpifn0j0mzm342a2vzh82p6r0vh10cg7xbg"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (replace 'check (lambda _ (invoke "nosetests"))))))
+    (native-inputs
+     `(("python-nose" ,python-nose)
+       ("python-vcversioner" ,python-vcversioner)))
+    (home-page "https://github.com/Julian/jsonschema")
+    (synopsis "Implementation of JSON Schema for Python")
+    (description
+     "Jsonschema is an implementation of JSON Schema for Python.")
+    (license license:expat)
+    (properties `((python2-variant . ,(delay python2-jsonschema))))))
+
 (define-public python-schema
   (package
     (name "python-schema")