summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-12-17 22:04:00 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-01-10 11:44:33 -0500
commit8b7a304e99ed9b486fd18c50a325d8066838835b (patch)
tree0230d128daccd9fcfa82c509277f55b61f54d437 /gnu
parent8faa04c316fd2318708f2fcfaeea402615aafef9 (diff)
downloadguix-8b7a304e99ed9b486fd18c50a325d8066838835b.tar.gz
gnu: python-nose: Fix build.
This unmaintained package doesn't build anymore on Python 3.9.9.

* gnu/packages/check.scm (python-nose)[phases]{invoke-2to3}: New phase.
[properties]: New field.
(python2-nose): Strip python2 property.
[phases]{invoke-2to3}: Delete phase.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/check.scm18
1 files changed, 15 insertions, 3 deletions
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 0a90a3b167..194bdf20ad 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -845,6 +845,7 @@ available via the @code{unittest.mock} module.")
          ("python2-funcsigs" ,python2-funcsigs)
          ,@(package-propagated-inputs base))))))
 
+;;; This package is unmaintained (see the note at the top of doc/index.rst).
 (define-public python-nose
   (package
     (name "python-nose")
@@ -858,15 +859,26 @@ available via the @code{unittest.mock} module.")
             "164a43k7k2wsqqk1s6vavcdamvss4mz0vd6pwzv2h9n8rgwzxgzi"))))
     (build-system python-build-system)
     (arguments
-     '(#:tests? #f)) ; FIXME: test suite fails
+     '(#:tests? #f
+       #:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'invoke-2to3
+                    (lambda _
+                      (invoke "2to3" "-w" "."))))))
     (home-page "http://readthedocs.org/docs/nose/")
     (synopsis "Python testing library")
     (description
      "Nose extends the unittest library to make testing easier.")
-    (license license:lgpl2.0+)))
+    (license license:lgpl2.0+)
+    (properties `((python2-variant . ,(delay python2-nose))))))
 
 (define-public python2-nose
-  (package-with-python2 python-nose))
+  (let ((base (package-with-python2
+               (strip-python2-variant python-nose))))
+    (package/inherit base
+      (arguments (substitute-keyword-arguments (package-arguments base)
+                   ((#:phases phases)
+                    `(modify-phases ,phases
+                       (delete 'invoke-2to3))))))))
 
 (define-public python-nose2
   (package