aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEfraim Flashner2021-08-31 14:38:47 +0300
committerEfraim Flashner2021-09-04 21:46:30 +0300
commit6b358542f5832376be16a165b897ea43270e2323 (patch)
tree779aad69ae543d2f1a1c252150d536e43132e365
parent90b466488a778cfea3693fb2157c58377849f4a6 (diff)
downloadguix-bioinformatics-6b358542f5832376be16a165b897ea43270e2323.tar.gz
gn: prep for more julia package upstreaming
-rw-r--r--gn/packages/julia.scm83
1 files changed, 48 insertions, 35 deletions
diff --git a/gn/packages/julia.scm b/gn/packages/julia.scm
index 555459f..1e546bf 100644
--- a/gn/packages/julia.scm
+++ b/gn/packages/julia.scm
@@ -200,36 +200,41 @@ leave-one-chromosome-out}, computation of kinship matrices, and support for
distributed computing.")
(license license:gpl3)))
+;; ready to upstream
(define-public julia-pyplot
- (package
- (name "julia-pyplot")
- (version "2.9.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/JuliaPy/PyPlot.jl")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0lvnraw8i851xnlfyd8d1p1bp8nrr1s9z56fw6znlmakpjjwny39"))))
- (build-system julia-build-system)
- (arguments
- `(;#:tests? #f
- ))
- (propagated-inputs
- `(
- ("julia-colors" ,julia-colors)
- ("julia-latexstrings" ,julia-latexstrings)
- ("julia-pycall" ,julia-pycall)
- ("julia-versionparsing" ,julia-versionparsing)
- ))
- (home-page "https://github.com/JuliaPy/PyPlot.jl")
- (synopsis "Plotting for Julia based on matplotlib.pyplot")
- (description "This module provides a Julia interface to the Matplotlib plotting library from Python, and specifically to the @code{matplotlib.pyplot} module. PyPlot uses the Julia PyCall package to call Matplotlib directly from Julia with little or no overhead (arrays are passed without making a copy).")
- (license license:expat)))
+ ;; Test suite was fixed since the last release.
+ (let ((commit "52a83c88fc10f159d044db5e14563f524562898b")
+ (revision "1"))
+ (package
+ (name "julia-pyplot")
+ (version (git-version "2.9.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/JuliaPy/PyPlot.jl")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1nbr9lva4s042l9n67xckak87lhn9q5jpajc18y7vk5r1vr89n5l"))))
+ (build-system julia-build-system)
+ (propagated-inputs
+ `(("julia-colors" ,julia-colors)
+ ("julia-latexstrings" ,julia-latexstrings)
+ ("julia-pycall" ,julia-pycall)
+ ("julia-versionparsing" ,julia-versionparsing)
+ ;; python-matplotlib is expected to be available at runtime.
+ ("python-matplotlib" ,(@ (gnu packages python-xyz) python-matplotlib))))
+ (home-page "https://github.com/JuliaPy/PyPlot.jl")
+ (synopsis "Plotting for Julia based on matplotlib.pyplot")
+ (description "This module provides a Julia interface to the Matplotlib
+plotting library from Python, and specifically to the @code{matplotlib.pyplot}
+module. PyPlot uses the Julia PyCall package to call Matplotlib directly from
+Julia with little or no overhead (arrays are passed without making a copy).")
+ (license license:expat))))
+;; ready to upstream
(define-public julia-pycall
(package
(name "julia-pycall")
@@ -246,7 +251,12 @@ distributed computing.")
"07r99ni6nkxpyrp3wsb5qg4jxz7i2r08dyqbiffy2zm3g0bn88jq"))))
(build-system julia-build-system)
(arguments
- `(#:phases
+ `(#:imported-modules ((guix build python-build-system)
+ ,@%julia-build-system-modules)
+ #:modules ((guix build julia-build-system)
+ (guix build utils)
+ ((guix build python-build-system) #:prefix python:))
+ #:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-conda
(lambda _
@@ -268,13 +278,14 @@ distributed computing.")
(format #t
"const python = \"~a/bin/python3\"~@
const pyprogramname = \"~a/bin/python3\"~@
- const libpython = \"~a/lib/libpython3.8.so.1.0\"~@
- const PYTHONHOME = \"~a/lib/python3.8\"~@
+ const libpython = \"~a/lib/libpython~a.so.1.0\"~@
+ const PYTHONHOME = \"~a\"~@
const pyversion_build = v\"~a\"~@
const conda = false~%"
python
python
python
+ (python:python-version python)
python
,(package-version python))))
#t)))
@@ -289,12 +300,14 @@ distributed computing.")
(inputs
`(("python" ,python)))
(native-inputs
- `(("python-numpy" ,(@ (gnu packages python-xyz) python-numpy))
- ("python-pip" ,(@ (gnu packages python-xyz) python-pip))
- ("python-virtualenv" ,(@ (gnu packages python-xyz) python-virtualenv))))
+ `(("python-numpy" ,(@ (gnu packages python-xyz) python-numpy))))
(home-page "https://github.com/JuliaPy/PyCall.jl")
(synopsis "Call Python functions from the Julia language")
- (description "This package provides the ability to directly call and fully interoperate with Python from the Julia language. You can import arbitrary Python modules from Julia, call Python functions (with automatic conversion of types between Julia and Python), define Python classes from Julia methods, and share large data structures between Julia and Python without copying them.")
+ (description "This package provides the ability to directly call and fully
+interoperate with Python from the Julia language. You can import arbitrary
+Python modules from Julia, call Python functions (with automatic conversion of
+types between Julia and Python), define Python classes from Julia methods, and
+share large data structures between Julia and Python without copying them.")
(license license:expat)))
(define-public julia-conda