a1315b7f |
1 | ;;; GNU Guix --- Functional package management for GNU |
f7a98af0 |
2 | ;;; Copyright © 2020, 2021 Nicolò Balzarotti <nicolo@nixo.xyz> |
35044d3e |
3 | ;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com> |
a1315b7f |
4 | ;;; |
5 | ;;; This file is part of GNU Guix. |
6 | ;;; |
7 | ;;; GNU Guix is free software; you can redistribute it and/or modify it |
8 | ;;; under the terms of the GNU General Public License as published by |
9 | ;;; the Free Software Foundation; either version 3 of the License, or (at |
10 | ;;; your option) any later version. |
11 | ;;; |
12 | ;;; GNU Guix is distributed in the hope that it will be useful, but |
13 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of |
14 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
15 | ;;; GNU General Public License for more details. |
16 | ;;; |
17 | ;;; You should have received a copy of the GNU General Public License |
18 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. |
19 | |
20 | (define-module (gnu packages julia-xyz) |
21 | #:use-module ((guix licenses) #:prefix license:) |
22 | #:use-module (guix packages) |
23 | #:use-module (guix git-download) |
3291e4ba |
24 | #:use-module (guix build-system julia) |
25 | #:use-module (gnu packages tls)) |
a1315b7f |
26 | |
651a5573 |
27 | (define-public julia-abstractffts |
28 | (package |
29 | (name "julia-abstractffts") |
30 | (version "1.0.1") |
31 | (source |
32 | (origin |
33 | (method git-fetch) |
34 | (uri (git-reference |
35 | (url "https://github.com/JuliaMath/AbstractFFTS.jl") |
36 | (commit (string-append "v" version)))) |
37 | (file-name (git-file-name name version)) |
38 | (sha256 |
39 | (base32 "0083pwdyxjb04i330ir9pc8kmp4bwk59lx1jgc9qi05y8j7xzbp0")))) |
40 | (build-system julia-build-system) |
41 | (inputs ;required for tests |
42 | `(("julia-unitful" ,julia-unitful))) |
43 | (home-page "https://github.com/JuliaGPU/Adapt.jl") |
44 | (synopsis "General framework for fast Fourier transforms (FFTs)") |
45 | (description "This package allows multiple FFT packages to co-exist with |
46 | the same underlying @code{fft(x)} and @code{plan_fft(x)} interface. It is |
47 | mainly not intended to be used directly. Instead, developers of packages that |
48 | implement FFTs (such as @code{FFTW.jl} or @code{FastTransforms.jl}) extend the |
49 | types/functions defined in AbstractFFTs.") |
50 | (license license:expat))) |
51 | |
20767b9b |
52 | (define-public julia-adapt |
53 | (package |
54 | (name "julia-adapt") |
55 | (version "3.1.1") |
56 | (source |
57 | (origin |
58 | (method git-fetch) |
59 | (uri (git-reference |
60 | (url "https://github.com/JuliaGPU/Adapt.jl") |
61 | (commit (string-append "v" version)))) |
81d45a66 |
62 | (file-name (git-file-name name version)) |
20767b9b |
63 | (sha256 |
64 | (base32 "1lks6k3a1gvwlplld47nh6xfy3nnlpc0vhkzg6zg0qn33qdmavrg")))) |
65 | (build-system julia-build-system) |
66 | (home-page "https://github.com/JuliaGPU/Adapt.jl") |
67 | (synopsis "Package providing the @code{adapt} function, similar to @code{convert}") |
68 | (description "This Julia package provides the @code{adapt(T, x)} function |
69 | acts like @code{convert(T, x)}, but without the restriction of returning a |
70 | @code{T}. This allows you to \"convert\" wrapper types like @code{Adjoint} to |
71 | be GPU compatible without throwing away the wrapper.") |
72 | (license license:expat))) |
73 | |
03010d5d |
74 | (define-public julia-benchmarktools |
75 | (package |
76 | (name "julia-benchmarktools") |
77 | (version "0.5.0") |
78 | (source |
79 | (origin |
80 | (method git-fetch) |
81 | (uri (git-reference |
82 | (url "https://github.com/JuliaCI/BenchmarkTools.jl") |
83 | (commit (string-append "v" version)))) |
84 | (file-name (git-file-name name version)) |
85 | (sha256 |
86 | (base32 "0nsx21m3i5h22lkgyrmfj6r085va6ag40khwssqs8y7l0wz98lvp")))) |
87 | (build-system julia-build-system) |
88 | (propagated-inputs `(("julia-json" ,julia-json))) |
89 | (home-page "https://github.com/JuliaCI/BenchmarkTools.jl") |
90 | (synopsis "Benchmarking framework for the Julia language") |
91 | (description "@code{BenchmarkTools.jl} makes performance tracking of Julia |
92 | code easy by supplying a framework for writing and running groups of |
93 | benchmarks as well as comparing benchmark results.") |
94 | (license license:expat))) |
95 | |
52d09b1f |
96 | (define-public julia-bufferedstreams |
97 | (package |
98 | (name "julia-bufferedstreams") |
99 | (version "1.0.0") |
100 | (source |
101 | (origin |
102 | (method git-fetch) |
103 | (uri (git-reference |
104 | (url "https://github.com/BioJulia/BufferedStreams.jl") |
105 | (commit (string-append "v" version)))) |
106 | (file-name (git-file-name name version)) |
107 | (sha256 |
108 | (base32 "0sf4sxbq55mg2pwxyxf0c839z1lk0yxg8nmb7617bfbvw31cp88z")))) |
109 | (build-system julia-build-system) |
110 | ;; The package is old and tests are using undefined functions. They also |
111 | ;; freeze, see |
112 | ;; https://travis-ci.org/BioJulia/BufferedStreams.jl/jobs/491050182 |
113 | (arguments |
114 | '(#:tests? #f |
115 | #:julia-package-name "BufferedStreams")) |
116 | (propagated-inputs `(("julia-compat" ,julia-compat))) |
117 | (home-page "https://github.com/BioJulia/BufferedStreams.jl") |
118 | (synopsis "Fast composable IO streams") |
119 | (description "@code{BufferedStreams.jl} provides buffering for IO |
120 | operations. It can wrap any @code{IO} type automatically making incremental |
121 | reading and writing faster.") |
122 | (license license:expat))) |
123 | |
13a8b866 |
124 | (define-public julia-colors |
125 | (package |
126 | (name "julia-colors") |
127 | (version "0.12.6") |
128 | (source |
129 | (origin |
130 | (method git-fetch) |
131 | (uri (git-reference |
132 | (url "https://github.com/JuliaGraphics/Colors.jl") |
133 | (commit (string-append "v" version)))) |
134 | (file-name (git-file-name name version)) |
135 | (sha256 |
136 | (base32 "156zsszgwh6bmznsan0zyha6yvcxw3c5mvc5vr2qfsgxbyh36ln6")))) |
137 | (build-system julia-build-system) |
138 | (propagated-inputs |
139 | `(("julia-colortypes" ,julia-colortypes) |
140 | ("julia-fixedpointnumbers" ,julia-fixedpointnumbers) |
141 | ("julia-reexport" ,julia-reexport))) |
142 | (home-page "https://github.com/JuliaGraphics/Colors.jl") |
143 | (synopsis "Tools for dealing with color") |
144 | (description "This package provides a wide array of functions for dealing |
145 | with color. This includes conversion between colorspaces, measuring distance |
146 | between colors, simulating color blindness, parsing colors, and generating |
147 | color scales for graphics.") |
148 | (license license:expat))) |
149 | |
9b8b132e |
150 | (define-public julia-colortypes |
151 | (package |
152 | (name "julia-colortypes") |
153 | (version "0.10.12") |
154 | (source |
155 | (origin |
156 | (method git-fetch) |
157 | (uri (git-reference |
158 | (url "https://github.com/JuliaGraphics/ColorTypes.jl") |
159 | (commit (string-append "v" version)))) |
160 | (file-name (git-file-name name version)) |
161 | (sha256 |
162 | (base32 "176hr3qbz7lncmykks2qaj3cqisnzim7wi5jwsca9ld26wwyvyqq")))) |
163 | (arguments |
164 | '(#:tests? #f)) ;require Documenter, not packaged yet |
165 | (build-system julia-build-system) |
166 | (propagated-inputs |
167 | `(("julia-fixedpointnumbers" ,julia-fixedpointnumbers))) |
168 | (home-page "https://github.com/JuliaGraphics/ColorTypes.jl") |
169 | (synopsis "Basic color types and constructor") |
170 | (description "This minimalistic package serves as the foundation for |
171 | working with colors in Julia. It defines basic color types and their |
172 | constructors, and sets up traits and show methods to make them easier to work |
173 | with.") |
174 | (license license:expat))) |
175 | |
a1315b7f |
176 | (define-public julia-compat |
177 | (package |
178 | (name "julia-compat") |
f7a98af0 |
179 | (version "3.25.0") |
a1315b7f |
180 | (source |
181 | (origin |
182 | (method git-fetch) |
183 | (uri (git-reference |
184 | (url "https://github.com/JuliaLang/Compat.jl") |
185 | (commit (string-append "v" version)))) |
54721e7e |
186 | (file-name (git-file-name name version)) |
a1315b7f |
187 | (sha256 |
f7a98af0 |
188 | (base32 "1m4r5i8mq29xjp3mllh6047n5a78sdyld57m15anrnsjgaapcgby")))) |
a1315b7f |
189 | (build-system julia-build-system) |
190 | (home-page "https://github.com/JuliaLang/Compat.jl") |
191 | (synopsis "Compatibility across Julia versions") |
192 | (description "The Compat package is designed to ease interoperability |
193 | between older and newer versions of the Julia language. The Compat package |
194 | provides a macro that lets you use the latest syntax in a backwards-compatible |
195 | way.") |
196 | (license license:expat))) |
eccd448c |
197 | |
35044d3e |
198 | (define-public julia-constructionbase |
199 | (let ((commit "de77e2865b554f9b078fd8c35b593cce0554ae02")) |
200 | (package |
201 | (name "julia-constructionbase") |
202 | (version "1.1.0") ;tag not created upstream |
203 | (source |
204 | (origin |
205 | (method git-fetch) |
206 | (uri (git-reference |
207 | (url "https://github.com/JuliaObjects/ConstructionBase.jl") |
208 | (commit commit))) |
209 | (file-name (git-file-name name version)) |
210 | (sha256 |
211 | (base32 "1y79sfj0rds1skl9j16p9161hwa9khm0xc2m4hgjcbh5zzvyr57v")))) |
212 | (build-system julia-build-system) |
213 | (home-page "https://juliaobjects.github.io/ConstructionBase.jl/dev/") |
214 | (synopsis "Primitive functions for construction of objects") |
215 | (description "This very lightweight package provides primitive functions |
216 | for construction of objects.") |
217 | (license license:expat)))) |
218 | |
6545cef5 |
219 | (define-public julia-datastructures |
220 | (package |
221 | (name "julia-datastructures") |
222 | (version "0.18.9") |
223 | (source |
224 | (origin |
225 | (method git-fetch) |
226 | (uri (git-reference |
227 | (url "https://github.com/JuliaCollections/DataStructures.jl") |
228 | (commit (string-append "v" version)))) |
229 | (file-name (git-file-name name version)) |
230 | (sha256 |
231 | (base32 "0hdqp8ipsqdw5bqqkdvz4j6n67x80sj5azr9vzyxwjfsgkfbnk2l")))) |
232 | (propagated-inputs |
233 | `(("julia-compat" ,julia-compat) |
234 | ("julia-orderedcollections" ,julia-orderedcollections))) |
235 | (build-system julia-build-system) |
236 | (home-page "https://github.com/JuliaCollections/DataStructures.jl") |
237 | (synopsis "Julia module providing different data structures") |
238 | (description "This package implements a variety of data structures, |
239 | including, @code{CircularBuffer}, @code{Queue}, @code{Stack}, |
240 | @code{Accumulators}, @code{LinkedLists}, @code{SortedDicts} and many others.") |
241 | (license license:expat))) |
242 | |
50f99cc5 |
243 | (define-public julia-fixedpointnumbers |
244 | (package |
245 | (name "julia-fixedpointnumbers") |
246 | (version "0.8.4") |
247 | (source |
248 | (origin |
249 | (method git-fetch) |
250 | (uri (git-reference |
251 | (url "https://github.com/JuliaMath/FixedPointNumbers.jl") |
252 | (commit (string-append "v" version)))) |
253 | (file-name (git-file-name name version)) |
254 | (sha256 |
255 | (base32 "0j0n40n04q9sk68wh9jq90m6c67k4ws02k41djjzkrqmpzv4rcdi")))) |
256 | (build-system julia-build-system) |
257 | (arguments |
258 | `(#:phases |
259 | (modify-phases %standard-phases |
260 | (add-after 'unpack 'disable-failing-test |
261 | (lambda* (#:key outputs #:allow-other-keys) |
262 | (substitute* "test/fixed.jl" |
263 | ;; A deprecation warning is not thrown |
264 | (("@test_logs.*:warn" all) (string-append "# " all))) |
265 | #t))))) |
266 | (propagated-inputs `(("julia-compat" ,julia-compat))) |
267 | (home-page "https://github.com/JuliaMath/FixedPointNumbers.jl") |
268 | (synopsis "Fixed point types for Julia") |
269 | (description "@code{FixedPointNumbers.jl} implements fixed-point number |
270 | types for Julia. A fixed-point number represents a fractional, or |
271 | non-integral, number. In contrast with the more widely known floating-point |
272 | numbers, with fixed-point numbers the decimal point doesn't \"float\": |
273 | fixed-point numbers are effectively integers that are interpreted as being |
274 | scaled by a constant factor. Consequently, they have a fixed number of |
275 | digits (bits) after the decimal (radix) point.") |
276 | (license license:expat))) |
d4987a50 |
277 | |
278 | (define-public julia-http |
279 | (package |
280 | (name "julia-http") |
281 | (version "0.9.2") |
282 | (source |
283 | (origin |
284 | (method git-fetch) |
285 | (uri (git-reference |
286 | (url "https://github.com/JuliaWeb/HTTP.jl") |
287 | (commit (string-append "v" version)))) |
288 | (file-name (git-file-name name version)) |
289 | (sha256 |
290 | (base32 "0ij0yci13c46p92m4zywvcs02nn8pm0abyfffiyhxvva6hq48lyl")))) |
291 | (build-system julia-build-system) |
292 | (arguments |
293 | `(#:phases |
294 | (modify-phases %standard-phases |
295 | (add-before 'install 'disable-network-tests |
296 | (lambda _ |
297 | (substitute* "test/runtests.jl" |
298 | (("\"async.jl") "# \"async.jl") |
299 | (("\"client.jl") "# \"client.jl")) |
300 | (substitute* "test/aws4.jl" |
301 | (("@testset.*HTTP.request with AWS authentication.*" all) |
302 | (string-append all "return\n"))) |
303 | (substitute* "test/insert_layers.jl" |
304 | (("@testset.*Inserted final layer runs handler.*" all) |
305 | (string-append all "return\n"))) |
306 | (substitute* "test/multipart.jl" |
307 | (("@testset \"Setting of Content-Type.*" all) |
308 | (string-append all "return\n")) |
309 | (("@testset \"Deprecation of .*" all) |
310 | (string-append all "return\n"))) |
311 | (substitute* "test/websockets.jl" |
312 | (("@testset.*External Host.*" all) |
313 | (string-append all "return\n"))) |
314 | (substitute* "test/messages.jl" |
315 | (("@testset.*Read methods.*" all) |
316 | (string-append all "return\n")) |
317 | (("@testset.*Body - .*" all) |
318 | (string-append all "return\n")) |
319 | (("@testset.*Write to file.*" all) |
320 | (string-append all "return\n"))) |
321 | #t))))) |
322 | (propagated-inputs |
323 | `(("julia-inifile" ,julia-inifile) |
324 | ("julia-mbedtls" ,julia-mbedtls) |
325 | ("julia-uris" ,julia-uris))) |
326 | ;; required for tests |
327 | (inputs |
328 | `(("julia-json" ,julia-json) |
329 | ("julia-bufferedstreams" ,julia-bufferedstreams))) |
330 | (home-page "https://juliaweb.github.io/HTTP.jl/") |
331 | (synopsis "HTTP support for Julia") |
332 | (description "@code{HTTP.jl} is a Julia library for HTTP Messages, |
333 | implementing both a client and a server.") |
334 | (license license:expat))) |
50f99cc5 |
335 | |
fc781578 |
336 | (define-public julia-inifile |
337 | (package |
338 | (name "julia-inifile") |
339 | (version "0.5.0") |
340 | (source |
341 | (origin |
342 | (method git-fetch) |
343 | (uri (git-reference |
344 | (url "https://github.com/JuliaIO/IniFile.jl") |
345 | (commit "8ba59958495fa276d6489d2c3903e765d75e0bc0"))) |
346 | (file-name (git-file-name name version)) |
347 | (sha256 |
348 | (base32 "11h6f99jpbg729lplw841m68jprka7q3n8yw390bndlmcdsjabpd")))) |
349 | (build-system julia-build-system) |
350 | (home-page "https://github.com/JuliaIO/IniFile.jl") |
351 | (synopsis "Reading Windows-style INI files") |
352 | (description "This is a Julia package that defines an IniFile type that |
353 | allows to interface with @file{.ini} files.") |
354 | (license license:expat))) |
355 | |
57653707 |
356 | (define-public julia-irtools |
357 | (package |
358 | (name "julia-irtools") |
359 | (version "0.4.2") |
360 | (source |
361 | (origin |
362 | (method git-fetch) |
363 | (uri (git-reference |
364 | (url "https://github.com/FluxML/IRTools.jl") |
365 | (commit (string-append "v" version)))) |
366 | (file-name (git-file-name name version)) |
367 | (sha256 |
368 | (base32 "0wwzy77jcdnffnd5fr6xan7162g4wydz67igrq82wflwnrhlcx5y")))) |
369 | (arguments |
370 | '(#:tests? #f)) ;require Documenter, not packaged yet |
371 | (build-system julia-build-system) |
372 | (propagated-inputs |
373 | `(("julia-macrotools" ,julia-macrotools))) |
374 | (home-page "https://github.com/FluxML/IRTools.jl") |
375 | (synopsis "Simple and flexible IR format") |
376 | (description "This package provides a simple and flexible IR format, |
377 | expressive enough to work with both lowered and typed Julia code, as well as |
378 | external IRs. It can be used with Julia metaprogramming tools such as |
379 | Cassette.") |
380 | (license license:expat))) |
381 | |
a06db9c1 |
382 | (define-public julia-jllwrappers |
383 | (package |
384 | (name "julia-jllwrappers") |
385 | (version "1.2.0") |
386 | (source |
387 | (origin |
388 | (method git-fetch) |
389 | (uri (git-reference |
390 | (url "https://github.com/JuliaPackaging/JLLWrappers.jl") |
391 | (commit (string-append "v" version)))) |
392 | (file-name (git-file-name name version)) |
393 | (sha256 |
394 | (base32 "1sj3mi2dcc13apqfpy401wic5n0pgbck1p98b2g3zw0mln9s83m4")))) |
395 | (arguments |
396 | ;; Wants to download stuff |
397 | '(#:tests? #f |
398 | #:phases |
399 | (modify-phases %standard-phases |
400 | (add-after 'unpack 'custom-override-path |
401 | (lambda* (#:key inputs #:allow-other-keys) |
402 | ;; Make @generate_wrapper_header take an optional argument that |
403 | ;; guix packagers can pass to override the default "override" |
404 | ;; binary path. This won't be needed when something like |
405 | ;; https://github.com/JuliaPackaging/JLLWrappers.jl/pull/27 |
406 | ;; will be merged. |
407 | (substitute* "src/wrapper_generators.jl" |
408 | (("generate_wrapper_header.*") |
409 | "generate_wrapper_header(src_name, override_path = nothing)\n") |
410 | (("pkg_dir = .*" all) |
411 | (string-append |
412 | all "\n" "override = something(override_path," |
413 | "joinpath(dirname(pkg_dir), \"override\"))\n")) |
414 | (("@static if isdir.*") "@static if isdir($override)\n") |
415 | (("return joinpath.*") "return $override\n")) |
416 | #t))))) |
417 | (build-system julia-build-system) |
418 | (home-page "https://github.com/JuliaPackaging/JLLWrappers.jl") |
419 | (synopsis "Julia macros used by JLL packages") |
420 | (description "This package contains Julia macros that enable JLL packages |
421 | to generate themselves. It is not intended to be used by users, but rather is |
422 | used in autogenerated packages via @code{BinaryBuilder.jl}.") |
423 | (license license:expat))) |
424 | |
dae521a0 |
425 | (define-public julia-json |
426 | (package |
427 | (name "julia-json") |
428 | (version "0.21.1") |
429 | (source |
430 | (origin |
431 | (method git-fetch) |
432 | (uri (git-reference |
433 | (url "https://github.com/JuliaIO/JSON.jl") |
434 | (commit (string-append "v" version)))) |
435 | (file-name (git-file-name name version)) |
436 | (sha256 |
437 | (base32 "1f9k613kbknmp4fgjxvjaw4d5sfbx8a5hmcszmp1w9rqfqngjx9m")))) |
438 | (build-system julia-build-system) |
439 | (propagated-inputs |
440 | `(("julia-datastructures" ,julia-datastructures) |
441 | ("julia-fixedpointnumbers" ,julia-fixedpointnumbers) |
442 | ("julia-parsers" ,julia-parsers) |
443 | ("julia-offsetarrays" ,julia-offsetarrays))) |
444 | (home-page "https://github.com/JuliaIO/JSON.jl") |
445 | (synopsis "JSON parsing and printing library for Julia") |
446 | (description "@code{JSON.jl} is a pure Julia module which supports parsing |
447 | and printing JSON documents.") |
448 | (license license:expat))) |
449 | |
45debc7b |
450 | (define-public julia-macrotools |
451 | (package |
452 | (name "julia-macrotools") |
453 | (version "0.5.6") |
454 | (source |
455 | (origin |
456 | (method git-fetch) |
457 | (uri (git-reference |
458 | (url "https://github.com/FluxML/MacroTools.jl") |
459 | (commit (string-append "v" version)))) |
460 | (file-name (git-file-name name version)) |
461 | (sha256 |
462 | (base32 "0k4z2hyasd9cwxf4l61zk3w4ajs44k69wx6z1ghdn8f5p8xy217f")))) |
463 | (build-system julia-build-system) |
464 | (home-page "https://fluxml.ai/MacroTools.jl") |
465 | (synopsis "Tools for working with Julia code and expressions") |
466 | (description "This library provides tools for working with Julia code and |
467 | expressions. This includes a template-matching system and code-walking tools |
468 | that let you do deep transformations of code.") |
469 | (license license:expat))) |
470 | |
a72d3ca8 |
471 | (define-public julia-mbedtls |
472 | (package |
473 | (name "julia-mbedtls") |
474 | (version "1.0.3") |
475 | (source |
476 | (origin |
477 | (method git-fetch) |
478 | (uri (git-reference |
479 | (url "https://github.com/JuliaLang/MbedTLS.jl") |
480 | (commit (string-append "v" version)))) |
481 | (file-name (git-file-name name version)) |
482 | (sha256 |
483 | (base32 "0zjzf2r57l24n3k0gcqkvx3izwn5827iv9ak0lqix0aa5967wvfb")))) |
484 | (build-system julia-build-system) |
485 | (arguments |
486 | `(#:phases |
487 | (modify-phases %standard-phases |
488 | (add-before 'install 'disable-network-tests |
489 | ;; Tries to connect to httpbin.org |
490 | (lambda _ |
491 | (substitute* "test/runtests.jl" |
492 | (("testhost =") "return #")) |
493 | #t))))) |
494 | (propagated-inputs `(("julia-mbedtls-jll" ,julia-mbedtls-jll))) |
495 | (home-page "https://github.com/JuliaLang/MbedTLS.jl") |
496 | (synopsis "Apache's mbed TLS library wrapper") |
497 | (description "@code{MbedTLS.jl} provides a wrapper around the @code{mbed |
498 | TLS} and cryptography C libary for Julia.") |
499 | (license license:expat))) |
500 | |
3291e4ba |
501 | (define-public julia-mbedtls-jll |
502 | (package |
503 | (name "julia-mbedtls-jll") |
504 | ;; version 2.25.0+0 is not compatible with current mbedtls 2.23.0, |
505 | ;; upgrade this when mbedtls is updated in guix |
506 | (version "2.24.0+1") |
507 | (source |
508 | (origin |
509 | (method git-fetch) |
510 | (uri (git-reference |
511 | (url "https://github.com/JuliaBinaryWrappers/MbedTLS_jll.jl") |
512 | (commit (string-append "MbedTLS-v" version)))) |
513 | (file-name (git-file-name name version)) |
514 | (sha256 |
515 | (base32 "0kk9dlxdh7yms21npgrdfmjbj8q8ng6kdhrzw3jr2d7rp696kp99")))) |
516 | (build-system julia-build-system) |
517 | (arguments |
518 | '(#:tests? #f ; No runtests.jl |
519 | #:phases |
520 | (modify-phases %standard-phases |
521 | (add-after 'unpack 'override-binary-path |
522 | (lambda* (#:key inputs #:allow-other-keys) |
523 | (map |
524 | (lambda (wrapper) |
525 | (substitute* wrapper |
526 | (("generate_wrapper_header.*") |
527 | (string-append |
528 | "generate_wrapper_header(\"MbedTLS\", \"" |
529 | (assoc-ref inputs "mbedtls-apache") "\")\n")))) |
530 | ;; There's a Julia file for each platform, override them all |
531 | (find-files "src/wrappers/" "\\.jl$")) |
532 | #t))))) |
533 | (inputs `(("mbedtls-apache" ,mbedtls-apache))) |
534 | (propagated-inputs `(("julia-jllwrappers" ,julia-jllwrappers))) |
535 | (home-page "https://github.com/JuliaBinaryWrappers/MbedTLS_jll.jl") |
536 | (synopsis "Apache's mbed TLS binary wrappers") |
537 | (description "This Julia module provides @code{mbed TLS} libraries and |
538 | wrappers.") |
539 | (license license:expat))) |
540 | |
a5edd83d |
541 | (define-public julia-nanmath |
542 | (package |
543 | (name "julia-nanmath") |
544 | (version "0.3.5") |
545 | (source |
546 | (origin |
547 | (method git-fetch) |
548 | (uri (git-reference |
549 | (url "https://github.com/mlubin/NaNMath.jl") |
550 | (commit (string-append "v" version)))) |
551 | (file-name (git-file-name name version)) |
552 | (sha256 |
553 | (base32 "1hczhz00qj99w63vp627kwk02l2sr2qmzc2rkwwkdwvzy670p25q")))) |
554 | (build-system julia-build-system) |
555 | (home-page "https://github.com/mlubin/NaNMath.jl") |
556 | (synopsis "Implementations of basic math functions") |
557 | (description "Implementations of basic math functions which return |
558 | @code{NaN} instead of throwing a @code{DomainError}.") |
559 | (license license:expat))) |
560 | |
eccd448c |
561 | (define-public julia-orderedcollections |
562 | (package |
563 | (name "julia-orderedcollections") |
564 | (version "1.3.2") |
565 | (source |
566 | (origin |
567 | (method git-fetch) |
568 | (uri (git-reference |
569 | (url "https://github.com/JuliaCollections/OrderedCollections.jl") |
570 | (commit (string-append "v" version)))) |
571 | (file-name (git-file-name name version)) |
572 | (sha256 |
573 | (base32 "0sfip1ixghsz91q2s7d62rgzw3gppg42fg6bccxlplqa3hfmbycf")))) |
574 | (build-system julia-build-system) |
575 | (home-page "https://github.com/JuliaCollections/OrderedCollections.jl") |
576 | (synopsis "Associative containers that preserve insertion order") |
577 | (description "This package implements @code{OrderedDicts} and |
578 | @code{OrderedSets}, which are similar to containers in base Julia. However, |
579 | during iteration the @code{Ordered*} containers return items in the order in |
580 | which they were added to the collection.") |
581 | (license license:expat))) |
c0c21d77 |
582 | |
fb634a0e |
583 | (define-public julia-offsetarrays |
584 | (package |
585 | (name "julia-offsetarrays") |
586 | (version "1.5.2") |
587 | (source |
588 | (origin |
589 | (method git-fetch) |
590 | (uri (git-reference |
591 | (url "https://github.com/JuliaArrays/OffsetArrays.jl") |
592 | (commit (string-append "v" version)))) |
593 | (file-name (git-file-name name version)) |
594 | (sha256 |
595 | (base32 "1y3fnssw2hzyghrk6jfcxslab0f8sjkjszh482snfq4k6mkrhy77")))) |
596 | (build-system julia-build-system) |
597 | (propagated-inputs |
598 | `(("julia-adapt" ,julia-adapt))) |
599 | ;; CatIndices depends on OffsetArrays, introducing a recursive dependency |
600 | (arguments '(#:tests? #f)) |
601 | (home-page "https://juliaarrays.github.io/OffsetArrays.jl/stable/") |
602 | (synopsis "Fortran-like arrays with arbitrary, zero or negative indices") |
603 | (description "@code{OffsetArrays.jl} provides Julia users with arrays that |
604 | have arbitrary indices, similar to those found in some other programming |
605 | languages like Fortran.") |
606 | (license license:expat))) |
607 | |
c0c21d77 |
608 | (define-public julia-parsers |
609 | (package |
610 | (name "julia-parsers") |
611 | (version "1.0.15") |
612 | (source |
613 | (origin |
614 | (method git-fetch) |
615 | (uri (git-reference |
616 | (url "https://github.com/JuliaData/Parsers.jl") |
617 | (commit (string-append "v" version)))) |
618 | (file-name (git-file-name name version)) |
619 | (sha256 |
620 | (base32 "16iffl6l28kspgqch48mhi1s8qhspr3cpqcwsph3rqi72lbfqygx")))) |
621 | (build-system julia-build-system) |
622 | (home-page "https://github.com/JuliaData/Parsers.jl") |
623 | (synopsis "Fast parsing machinery for basic types in Julia") |
624 | (description "@code{Parsers.jl} is a collection of type parsers and |
625 | utilities for Julia.") |
626 | (license license:expat))) |
8f59a9fb |
627 | |
02543b52 |
628 | (define-public julia-reexport |
629 | (package |
630 | (name "julia-reexport") |
631 | (version "1.0.0") |
632 | (source |
633 | (origin |
634 | (method git-fetch) |
635 | (uri (git-reference |
636 | (url "https://github.com/simonster/Reexport.jl") |
637 | (commit version))) |
638 | (file-name (git-file-name name version)) |
639 | (sha256 |
640 | (base32 "1yhhja1zz6dy5f4fd19bdwd6jwgj7q4w3avzgyg1hjhmdl8jrh0s")))) |
641 | (build-system julia-build-system) |
642 | (home-page "https://github.com/simonster/Reexport.jl") |
643 | (synopsis "Re-export modules and symbols") |
644 | (description "This package provides tools to re-export modules and symbols.") |
645 | (license license:expat))) |
646 | |
be802277 |
647 | (define-public julia-staticarrays |
648 | (package |
649 | (name "julia-staticarrays") |
650 | (version "1.0.1") |
651 | (source |
652 | (origin |
653 | (method git-fetch) |
654 | (uri (git-reference |
655 | (url "https://github.com/JuliaArrays/StaticArrays.jl") |
656 | (commit (string-append "v" version)))) |
657 | (file-name (git-file-name name version)) |
658 | (sha256 |
659 | (base32 "01z8bcqwpfkp8p1h1r36pr5cc3798y76zkas7g3206pcsdhvlkz1")))) |
660 | (build-system julia-build-system) |
661 | (inputs |
662 | `(("julia-benchmarktools" ,julia-benchmarktools))) |
663 | (home-page "https://github.com/JuliaArrays/StaticArrays.jl") |
664 | (synopsis "Statically sized arrays") |
665 | (description "This package provides a framework for implementing |
666 | statically sized arrays in Julia, using the abstract type |
667 | @code{StaticArray{Size,T,N} <: AbstractArray{T,N}}. Subtypes of |
668 | @code{StaticArray} will provide fast implementations of common array and |
669 | linear algebra operations.") |
670 | (license license:expat))) |
671 | |
8f59a9fb |
672 | (define-public julia-uris |
673 | (package |
674 | (name "julia-uris") |
675 | (version "1.2.0") |
676 | (source |
677 | (origin |
678 | (method git-fetch) |
679 | (uri (git-reference |
680 | (url "https://github.com/JuliaWeb/URIs.jl") |
681 | (commit (string-append "v" version)))) |
682 | (file-name (git-file-name name version)) |
683 | (sha256 |
684 | (base32 "0fqyagsqks5za7m0czafr34m2xh5501f689k9cn5x3npajdnh2r3")))) |
685 | (build-system julia-build-system) |
686 | (arguments |
687 | '(#:julia-package-name "URIs" ;required to run tests |
688 | #:phases |
689 | (modify-phases %standard-phases |
690 | (add-before 'check 'change-dir |
691 | ;; Tests must be run from the testdir |
692 | (lambda* (#:key source outputs #:allow-other-keys) |
693 | (let ((out (assoc-ref outputs "out"))) |
694 | (chdir |
695 | (string-append out "/share/julia/packages/URIs/test"))) |
696 | #t))))) |
697 | ;; required for tests |
698 | (inputs `(("julia-json" ,julia-json))) |
699 | (home-page "https://github.com/JuliaWeb/URIs.jl") |
700 | (synopsis "URI parsing in Julia") |
701 | (description "@code{URIs.jl} is a Julia package that allows parsing and |
702 | working with @acronym{URIs,Uniform Resource Identifiers}, as defined in RFC |
703 | 3986.") |
704 | (license license:expat))) |
a8e3be6a |
705 | |
706 | (define-public julia-unitful |
707 | (package |
708 | (name "julia-unitful") |
709 | (version "1.6.0") |
710 | (source |
711 | (origin |
712 | (method git-fetch) |
713 | (uri (git-reference |
714 | (url "https://github.com/PainterQubits/Unitful.jl") |
715 | (commit (string-append "v" version)))) |
716 | (file-name (git-file-name name version)) |
717 | (sha256 |
718 | (base32 "0g5bhlvay9yk11c5dqwbzmb3q7lzj0cq5zchyk39d59fkvvmxvq3")))) |
719 | (build-system julia-build-system) |
720 | (propagated-inputs |
721 | `(("julia-constructionbase" ,julia-constructionbase))) |
722 | (home-page "https://painterqubits.github.io/Unitful.jl/stable/") |
723 | (synopsis "Physical units in Julia") |
724 | (description "This package supports SI units and also many other unit |
725 | system.") |
726 | (license license:expat))) |