gnu: Add python-activepapers.
* gnu/packages/python.scm (python-activepapers, python2-activepapers): New variables. Co-authored-by: Ludovic Courtès <ludovic.courtes@inria.fr>
This commit is contained in:
parent
4a32f58aa1
commit
de2032b912
|
@ -12001,3 +12001,73 @@ particularly convenient for use in tests.")
|
||||||
(define-public python2-tempdir
|
(define-public python2-tempdir
|
||||||
(package-with-python2 python-tempdir))
|
(package-with-python2 python-tempdir))
|
||||||
|
|
||||||
|
(define-public python-activepapers
|
||||||
|
(package
|
||||||
|
(name "python-activepapers")
|
||||||
|
(version "0.2.2")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "ActivePapers.Py" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"12wkhjh90ffipjzv10swndp2xv9hd7xrxvg6v0n4n3i411pj4xb8"))))
|
||||||
|
(build-system python-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:modules ((ice-9 ftw)
|
||||||
|
(srfi srfi-1)
|
||||||
|
(guix build utils)
|
||||||
|
(guix build python-build-system))
|
||||||
|
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'delete-python2-code
|
||||||
|
(lambda _
|
||||||
|
(for-each delete-file
|
||||||
|
'("lib/activepapers/builtins2.py"
|
||||||
|
"lib/activepapers/standardlib2.py"
|
||||||
|
"lib/activepapers/utility2.py"))))
|
||||||
|
(replace 'check
|
||||||
|
(lambda _
|
||||||
|
;; Deactivate the test cases that download files
|
||||||
|
(setenv "NO_NETWORK_ACCESS" "1")
|
||||||
|
;; For some strange reason, some tests fail if nosetests runs all
|
||||||
|
;; test modules in a single execution. They pass if each test
|
||||||
|
;; module is run individually.
|
||||||
|
(for-each (lambda (filename)
|
||||||
|
(invoke "nosetests"
|
||||||
|
(string-append "tests/" filename)))
|
||||||
|
(scandir "tests"
|
||||||
|
(lambda (filename)
|
||||||
|
(string-suffix? ".py" filename)))))))))
|
||||||
|
(native-inputs
|
||||||
|
`(("python-tempdir" ,python-tempdir)
|
||||||
|
("python-nose" ,python-nose)))
|
||||||
|
(propagated-inputs
|
||||||
|
`(("python-h5py" ,python-h5py)))
|
||||||
|
(home-page "http://www.activepapers.org/")
|
||||||
|
(synopsis "Executable papers for scientific computing")
|
||||||
|
(description
|
||||||
|
"ActivePapers is a tool for working with executable papers, which
|
||||||
|
combine data, code, and documentation in single-file packages,
|
||||||
|
suitable for publication as supplementary material or on repositories
|
||||||
|
such as figshare or Zenodo.")
|
||||||
|
(properties `((python2-variant . ,(delay python2-activepapers))))
|
||||||
|
(license license:bsd-3)))
|
||||||
|
|
||||||
|
(define-public python2-activepapers
|
||||||
|
(let ((base (package-with-python2
|
||||||
|
(strip-python2-variant python-activepapers))))
|
||||||
|
(package
|
||||||
|
(inherit base)
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments (package-arguments base)
|
||||||
|
((#:phases phases)
|
||||||
|
`(modify-phases ,phases
|
||||||
|
(delete 'delete-python2-code)
|
||||||
|
(add-after 'unpack 'delete-python3-code
|
||||||
|
(lambda _
|
||||||
|
(for-each delete-file
|
||||||
|
'("lib/activepapers/builtins3.py"
|
||||||
|
"lib/activepapers/standardlib3.py"
|
||||||
|
"lib/activepapers/utility3.py")))))))))))
|
||||||
|
|
Loading…
Reference in New Issue