Browse Source

gn: julia packages upstreamed

wip-kaleido
Efraim Flashner 2 months ago
parent
commit
dd13ae09c6
Signed by: efraim GPG Key ID: 41AAE7DCCA3D8351
  1. 2
      VERSION
  2. 390
      gn/packages/julia.scm

2
VERSION

@ -1 +1 @@
2ca982ff41270288913ad6b7d5d9e1cad87b06d9
7b59508ca711d1fe299de3f8d9710da36aeb6829

390
gn/packages/julia.scm

@ -236,82 +236,6 @@ 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")
(version "1.92.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaPy/PyCall.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"07r99ni6nkxpyrp3wsb5qg4jxz7i2r08dyqbiffy2zm3g0bn88jq"))))
(build-system julia-build-system)
(arguments
`(#: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 _
(substitute* "Project.toml"
((".*Conda.*") ""))
(substitute* (list "src/PyCall.jl"
"test/runtests.jl")
(("import Conda") ""))
(substitute* "deps/depsutils.jl"
(("Conda.PYTHONDIR") "\"/\""))
#t))
(add-after 'unpack 'set-python
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((python (assoc-ref inputs "python")))
(setenv "PYCALL_JL_RUNTIME_PYTHON"
(string-append python "/bin/python3"))
(with-output-to-file "deps/deps.jl"
(lambda _
(format #t
"const python = \"~a/bin/python3\"~@
const pyprogramname = \"~a/bin/python3\"~@
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)))
(add-before 'check 'pre-check
(lambda _
(setenv "CI" "true")
(setenv "JULIA_PKGEVAL" "true")
#t)))))
(propagated-inputs
`(("julia-macrotools" ,julia-macrotools)
("julia-versionparsing" ,julia-versionparsing)))
(inputs
`(("python" ,python)))
(native-inputs
`(("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.")
(license license:expat)))
(define-public julia-conda
(package
(name "julia-conda")
@ -439,239 +363,6 @@ properties
@end enumerate")
(license license:expat)))
;; ready to upstream!
;; By removing all the javascript and css downloads any HTML documentation
;; produced by this package will not be very useful.
(define-public julia-documenter
(package
(name "julia-documenter")
(version "0.27.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaDocs/Documenter.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1y6rql7cxc7hfhc8rfq1mdmffp70sqzyh4vnnq93fziwrc8c8sbj"))))
(build-system julia-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-source
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/Deps.jl"
(("pip install")
(string-append (assoc-ref inputs "python")
"/bin/pip install")))
#t))
(add-after 'unpack 'remove-javascript-downloads
(lambda _
(substitute* "src/Writers/HTMLWriter.jl"
(("cdnjs.cloudflare.com") "example.com"))
;; Removing the javascript downloads causes these tests fail.
(substitute* "test/examples/tests.jl"
((".*Main\\.examples_html_doc.*") "")
((".*Main\\.examples_html_mathjax3_doc.*") ""))
#t)))))
(propagated-inputs
`(("julia-ansicoloredprinters" ,julia-ansicoloredprinters)
("julia-docstringextensions" ,julia-docstringextensions)
("julia-iocapture" ,julia-iocapture)
("julia-json" ,julia-json)))
(inputs
`(("python" ,python-wrapper)))
(native-inputs
`(("git" ,(S "git-minimal"))
("julia-documentermarkdown" ,julia-documentermarkdown)
("julia-documentertools" ,julia-documentertools)))
(home-page "https://juliadocs.github.io/Documenter.jl")
(synopsis "Documentation generator for Julia")
(description "This package provides a documentation generator for Julia.")
(license license:expat)))
;; ready to upstream with julia-documenter
(define-public julia-documenter-0.22
(package
(inherit julia-documenter)
(name "julia-documenter")
(version "0.22.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaDocs/Documenter.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1z8b7267y7yn5nx8sjwkmc0ph97vmv42q52jg7s89ghqb9xx3wv5"))))
(arguments
`(#:tests? #f ; Some tests require network.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-javascript-downloads
(lambda _
;; This isn't problematic because we only use
;; this package for bootstrapping.
(substitute* '("assets/html/documenter.js"
"assets/html/search.js"
"src/Writers/HTMLWriter.jl")
(("cdnjs.cloudflare.com") "example.com"))
#t)))))
(propagated-inputs
`(("julia-docstringextensions" ,julia-docstringextensions)
("julia-json" ,julia-json)))
(inputs `())
(native-inputs `())
(properties '((hidden? . #t)))))
;; ready to upstream; depends on julia-documenter
(define-public julia-documentermarkdown
(package
(name "julia-documentermarkdown")
(version "0.2.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0sx89hi5p2f8zi2rp5qrv06m270d90pxj5d2y5cxls1spax7wqx8"))))
(build-system julia-build-system)
(inputs
;; We don't want to propagate the bootstrap version.
;; Cycle with Documenter.jl in later versions.
`(("julia-documenter" ,julia-documenter-0.22)))
(home-page "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
(synopsis "Documenter's Markdown")
(description "This package enables the Markdown / MkDocs backend of
@code{Documenter.jl}.")
(license license:expat)))
(define-public julia-documentertools
(package
(name "julia-documentertools")
(version "0.1.13")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaDocs/DocumenterTools.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05p57p8xlkn42m1lv9gq4hl96vp7hpj19d51p828ai1rbpcpi3a6"))))
(build-system julia-build-system)
(arguments
`(#:tests? #f)) ; Tests require network.
(inputs
;; We don't want to propagate the bootstrap version.
;; Cycle with Documenter.jl in later versions.
`(("julia-documenter" ,julia-documenter-0.22)))
(propagated-inputs
`(("julia-docstringextensions" ,julia-docstringextensions)
("julia-gumbo" ,julia-gumbo)
("julia-sass" ,julia-sass)))
(native-inputs
`(("julia-example" ,julia-example)))
(home-page "https://github.com/JuliaDocs/DocumenterTools.jl")
(synopsis "Extra tools for setting up Documenter")
(description "This package contains utilities for setting up documentation
generation with @code{Documenter.jl}.")
(license license:expat)))
;; raedy to upstream
(define-public julia-ansicoloredprinters
(package
(name "julia-ansicoloredprinters")
(version "0.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaDocs/ANSIColoredPrinters.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0dp5agljr0g50s5gn0pr70wrz01ggck6pb40ay3l4szhswq7mqzf"))))
(build-system julia-build-system)
(home-page "https://github.com/JuliaDocs/ANSIColoredPrinters.jl")
(synopsis "ANSI escape code translator")
(description "@code{ANSIColoredPrinters.jl} converts a text qualified by
ANSI escape codes to another format.")
(license license:expat)))
;; ready to upstream
(define-public julia-sass
(package
(name "julia-sass")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/piever/Sass.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0y7kkkj717h5cj659ssry89i5r64symr6pvhr6vv4qmaxrnjxj92"))))
(build-system julia-build-system)
(propagated-inputs
`(("julia-libsass-jll" ,julia-libsass-jll)))
(home-page "https://github.com/piever/Sass.jl")
(synopsis "Compile scss and sass file to css in Julia")
(description "This library provides a simple Julian API to use the
@code{libsass} library to compile scss and sass files to css.")
(license license:expat)))
;; ready to upstream
(define-public julia-libsass-jll
(let ((commit "69bf10603aad0ebf1f6df088c5fd7c4a5d1eb0ca"))
(package
(name "julia-libsass-jll")
(version "3.5.5+0") ;tag not created upstream
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaBinaryWrappers/libsass_jll.jl")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1fb6rf422533bsmfslvc20ag1hr50bf9xaj32rvh7nv593sbiygn"))))
(build-system julia-build-system)
(arguments
`(#:tests? #f ; no runtests.jl
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'override-binary-path
(lambda* (#:key inputs #:allow-other-keys)
(map
(lambda (wrapper)
(substitute* wrapper
(("generate_wrapper_header.*")
(string-append
"generate_wrapper_header(\"libsass\", \""
(assoc-ref inputs "libsass") "\")\n"))))
;; There's a Julia file for each platform, override them all
(find-files "src/wrappers/" "\\.jl$"))
#t)))))
(inputs
`(("libsass" ,(@ (gnu packages web) libsass))))
(propagated-inputs
`(("julia-jllwrappers" ,julia-jllwrappers)))
(home-page "https://github.com/JuliaBinaryWrappers/libsass_jll.jl")
(synopsis "Julia wrapper for libsass")
(description "This package provides a wrapper for libsass. It is an
autogenerated source package constructed using @code{BinaryBuilder.jl}. The
originating @code{build_tarballs.jl} script can be found on the community
build tree Yggdrasil.")
(license license:expat))))
;; ready to upstream
;; if the test suite passes
(define-public julia-optim
@ -997,29 +688,6 @@ metaprogramming on Julia Expr, the meta programming standard library for
@code{MLStyle}.")
(license license:expat)))
;; ready to upstream
(define-public julia-mlstyle
(package
(name "julia-mlstyle")
(version "0.4.10")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/thautwarm/MLStyle.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0h1cd7cr4c4cnpqyj3180113gdbvcc047lqphp8a8gq5smp3c059"))))
(build-system julia-build-system)
(native-inputs
`(("julia-datastructures" ,julia-datastructures)))
(home-page "https://thautwarm.github.io/MLStyle.jl/latest/")
(synopsis "Julia functional programming infrastructures")
(description "This package provides consistent and extensible functional
programming infrastructures, and metaprogramming facilities.")
(license license:expat)))
;; ready to upstream
(define-public julia-statsfuns
(package
@ -1778,61 +1446,3 @@ in Julia).")
(synopsis "binary provider for Julia")
(description "Packages are installed to a @code{Prefix}; a folder that acts similar to the @code{/usr/local} directory on Unix-like systems, containing a @code{bin} folder for binaries, a @code{lib} folder for libraries, etc... @code{Prefix} objects can have tarballs @code{install()}'ed within them, @code{uninstall()}'ed from them, etc...")
(license license:expat)))
;; ready to upstream
(define-public julia-measurements
(package
(name "julia-measurements")
(version "2.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaPhysics/Measurements.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05p3f0gr4sv4maq8cix5fi8ldq0zagswqsd43xn6fhy046f936mz"))))
(build-system julia-build-system)
(propagated-inputs
`(("julia-calculus" ,julia-calculus)
("julia-recipesbase" ,julia-recipesbase)
("julia-requires" ,julia-requires)))
(native-inputs
`(("julia-specialfunctions" ,julia-specialfunctions)
("julia-quadgk" ,julia-quadgk)
("julia-unitful" ,julia-unitful)))
(home-page "https://juliaphysics.github.io/Measurements.jl/stable/")
(synopsis "Error propagation calculator and library")
(description "@code{Measurements.jl} is an error propagation calculator and
library for physical measurements. It supports real and complex numbers with
uncertainty, arbitrary precision calculations, operations with arrays, and
numerical integration. The linear error propagation theory is employed to
propagate the errors.")
(license license:expat)))
;; ready to upstream
(define-public julia-quadgk
(package
(name "julia-quadgk")
(version "2.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaMath/QuadGK.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hy0629yai6xflgxaflk9764lzr1lzhlghimxk1aqi212q9c6n33"))))
(build-system julia-build-system)
(propagated-inputs
`(("julia-datastructures" ,julia-datastructures)))
(home-page "https://github.com/JuliaMath/QuadGK.jl")
(synopsis "Adaptive 1d numerical Gauss–Kronrod integration in Julia")
(description "This package provides support for one-dimensional numerical
integration in Julia using adaptive Gauss-Kronrod quadrature. The code was
originally part of Base Julia. It supports integration of arbitrary numeric
types, including arbitrary precision (@code{BigFloat}), and even integration of
arbitrary normed vector spaces (e.g. matrix-valued integrands).")
(license license:expat)))
Loading…
Cancel
Save