;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2016, 2017 Raoul Bonnal <ilpuccio.febo@gmail.com>
;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com>
-;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix hg-download)
#:use-module (guix git-download)
#:use-module (guix utils)
+ #:use-module (guix build-system ant)
#:use-module (guix build-system gnu)
#:use-module (guix build-system r)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
+ #:use-module (gnu packages algebra)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cran)
(define-public r-minimal
(package
(name "r-minimal")
- (version "3.4.3")
+ (version "3.4.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cran/src/base/R-"
version ".tar.gz"))
(sha256
(base32
- "09pl0w01fr09bsrwd7nz2r5psysj0z93w4chz3hm2havvqqvhg3s"))))
+ "0dq3jsnwsb5j3fhl0wi3p5ycv8avf8s5j1y4ap3d2mkjmcppvsdk"))))
(build-system gnu-build-system)
(arguments
- `(#:disallowed-references (,tzdata-2017a)
+ `(#:disallowed-references (,tzdata-for-tests)
#:make-flags
(list (string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
;; queries the mtime of a given file and records it in an object.
;; This is acceptable at runtime to detect stale source files,
;; but it destroys reproducibility at build time.
- ;;
- ;; Instead of disabling this feature, which may have unexpected
- ;; consequences, we reset the mtime of generated files before
- ;; passing them to the "srcfile" procedure.
- (substitute* "src/library/Makefile.in"
- (("@\\(cd base && \\$\\(MAKE\\) mkdesc\\)" line)
- (string-append line "\n find $(top_builddir)/library/tools | xargs touch -d '1970-01-01'; \n"))
- (("@\\$\\(MAKE\\) Rdobjects" line)
- (string-append "@find $(srcdir)/tools | xargs touch -d '1970-01-01'; \n "
- line)))
- (substitute* "src/library/tools/Makefile.in"
- (("@\\$\\(INSTALL_DATA\\) all.R \\$\\(top_builddir\\)/library/\\$\\(pkg\\)/R/\\$\\(pkg\\)" line)
- (string-append
- line
- "\n find $(srcdir)/$(pkg) $(top_builddir)/library/$(pkg) | xargs touch -d \"1970-01-01\"; \n")))
+
+ ;; Similarly, the "srcfilecopy" procedure records the current
+ ;; time. We change both of them to respect SOURCE_DATE_EPOCH.
+ (substitute* "src/library/base/R/srcfile.R"
+ (("timestamp <- (timestamp.*|file.mtime.*)" _ time)
+ (string-append "timestamp <- \
+as.POSIXct(if (\"\" != Sys.getenv(\"SOURCE_DATE_EPOCH\")) {\
+ as.numeric(Sys.getenv(\"SOURCE_DATE_EPOCH\"))\
+} else { " time "}, origin=\"1970-01-01\")\n")))
;; This library is installed using "install_package_description",
;; so we need to pass the "builtStamp" argument.
("perl" ,perl)
("pkg-config" ,pkg-config)
("texinfo" ,texinfo) ; for building HTML manuals
- ("tzdata" ,tzdata-2017a)
+ ("tzdata" ,tzdata-for-tests)
("xz" ,xz)))
(inputs
`(;; We need not only cairo here, but pango to ensure that tests for the
("libxt" ,libxt)
("pcre" ,pcre)
("readline" ,readline)
+ ;; This avoids a reference to the ungraftable static bash. R uses the
+ ;; detected shell for the "system" procedure.
+ ("bash" ,bash-minimal)
("which" ,which)
("zlib" ,zlib)))
(native-search-paths
(list (search-path-specification
(variable "R_LIBS_SITE")
(files (list "site-library/")))))
- (home-page "http://www.r-project.org/")
+ (home-page "https://www.r-project.org/")
(synopsis "Environment for statistical computing and graphics")
(description
"R is a language and environment for statistical computing and graphics.
(define-public r-mass
(package
(name "r-mass")
- (version "7.3-48")
+ (version "7.3-49")
(source
(origin
(method url-fetch)
(uri (cran-uri "MASS" version))
(sha256
(base32
- "02q95ba909p2gxnzfp295ipxjnv14f7bm55nicxwn2kj8hizpzqd"))))
+ "1yjbnj1p4z0vw84wga8q5fyqiw4n6r7pc6rdwam7vsbiamyzfcqs"))))
(properties `((upstream-name . "MASS")))
(build-system r-build-system)
(home-page "http://www.stats.ox.ac.uk/pub/MASS4/")
(define-public r-nlme
(package
(name "r-nlme")
- (version "3.1-131")
+ (version "3.1-131.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "nlme" version))
(sha256
(base32
- "0k2nvdzhic6bzhfsbq6la6q6a1i5nlj4pnh6lpdxiiwvxdks3nkr"))))
+ "1xafi670a9jzb52kqxkacxfmy0viac3aql5byfq86kgkgla2sg0y"))))
(build-system r-build-system)
(propagated-inputs
`(("r-lattice" ,r-lattice)))
(define-public r-rpart
(package
(name "r-rpart")
- (version "4.1-12")
+ (version "4.1-13")
(source
(origin
(method url-fetch)
(uri (cran-uri "rpart" version))
(sha256
(base32
- "177p03w4m0qshb3sqkdyixim3f44g2an31v3vlbjmpzjvd5ff6yq"))))
+ "0k29qx3k3pj5sgrpg0p47yd8i811rmdakaw57bigpq1449asc4cf"))))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/rpart")
(synopsis "Recursive partitioning and regression trees")
(define-public r-stringi
(package
(name "r-stringi")
- (version "1.1.6")
+ (version "1.1.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "stringi" version))
(sha256
(base32
- "122im5m8x9bqpahc0hbxmvdq6hnsmgnxwwyjpvbihyv2jq5kd44m"))))
+ "0nck1s2iglmkrn15ay2chrrwsy5lngcylz2sc87fxy5skxaahxdl"))))
(build-system r-build-system)
(inputs `(("icu4c" ,icu4c)))
(native-inputs `(("pkg-config" ,pkg-config)))
(define-public r-stringr
(package
(name "r-stringr")
- (version "1.2.0")
+ (version "1.3.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "stringr" version))
(sha256
- (base32 "16hj2rmv8x03lp6cp2jk0k2plibvbggf444kp05przdvd03v7l31"))))
+ (base32 "07dvfbkhv8gk6l32j43jvxpmqlhqp0mdby406h5a3bsc6k94ic13"))))
(build-system r-build-system)
(propagated-inputs
- `(("r-magrittr" ,r-magrittr)
+ `(("r-glue" ,r-glue)
+ ("r-magrittr" ,r-magrittr)
("r-stringi" ,r-stringi)))
(home-page "https://github.com/hadley/stringr")
(synopsis "Simple, consistent wrappers for common string operations")
(define-public r-gdtools
(package
(name "r-gdtools")
- (version "0.1.6")
+ (version "0.1.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "gdtools" version))
(sha256
(base32
- "103wnc8sq0iwcnj4j14hd420d2dqdyf13s3f25icsznrlyzdkhf5"))))
+ "122k9spymawfnfyksxyapwq9cigydy5nrjwhrwrhy3qkax3aycf6"))))
(build-system r-build-system)
(native-inputs
`(("r-rcpp" ,r-rcpp)
("pkg-config" ,pkg-config)))
(inputs
- `(("cairo" ,cairo)))
+ `(("cairo" ,cairo)
+ ("zlib" ,zlib)))
(propagated-inputs
`(("r-withr" ,r-withr)))
(home-page "https://cran.r-project.org/web/packages/gdtools")
(define-public r-dbi
(package
(name "r-dbi")
- (version "0.7")
+ (version "0.8")
(source (origin
(method url-fetch)
(uri (cran-uri "DBI" version))
(sha256
(base32
- "04fyrxdpqcygg5wviy637y6lgk64xqjjq31lvv4hwqj5kbaxamr5"))))
+ "16nf8flxr5vdz8yrpprfbzydy3ajixkp9hc8ibd9n7r9nc29waym"))))
(build-system r-build-system)
(home-page "https://github.com/rstats-db/DBI")
(synopsis "R database interface")
(define-public r-bh
(package
(name "r-bh")
- (version "1.65.0-1")
+ (version "1.66.0-1")
(source (origin
(method url-fetch)
(uri (cran-uri "BH" version))
(sha256
(base32
- "0n6byzrvl1w4hjdxz479q4a7w1118f9ckqc4gqydq7lgzs5agfl2"))))
+ "14kab6wp0c27d8x4jqyf065p4bj210s9b67c0bfsfjnp29aypn8p"))))
(build-system r-build-system)
(home-page "https://github.com/eddelbuettel/bh")
(synopsis "R package providing subset of Boost headers")
(define-public r-yaml
(package
(name "r-yaml")
- (version "2.1.16")
+ (version "2.1.17")
(source (origin
(method url-fetch)
(uri (cran-uri "yaml" version))
(sha256
(base32
- "1xlsmqal607w6c9rx86061y1fwpbyd5lqp9bad5n7cc9a0blpnkm"))))
+ "10y6wnv2v8k396far29haqv2s82p4zm04rrsxk183wg19gb51was"))))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/yaml/")
(synopsis "Methods to convert R data to YAML and back")
(define-public r-knitr
(package
(name "r-knitr")
- (version "1.19")
+ (version "1.20")
(source (origin
(method url-fetch)
(uri (cran-uri "knitr" version))
(sha256
(base32
- "1gyj9bw90h4h9rc9k1iqrnzirm2f8mj45zi8bkjc6rp610vlh63j"))))
+ "1408dm25cxahk2clff8hlajaqdj5v1gs40nm3q6rf0ghd82hj93v"))))
(build-system r-build-system)
(propagated-inputs
`(("r-evaluate" ,r-evaluate)
(define-public r-pryr
(package
(name "r-pryr")
- (version "0.1.3")
+ (version "0.1.4")
(source (origin
(method url-fetch)
(uri (cran-uri "pryr" version))
(sha256
(base32
- "1b1rcywq9sqzgjsnh3ynnx16gp41n94kkzfalm3y4kyy3ls8ikba"))))
+ "06vj5xl9x37kbd3l5bw7sbgfdnp37spvrjrn976rxi04clqk966k"))))
(build-system r-build-system)
(propagated-inputs
`(("r-stringr" ,r-stringr)
(define-public r-rlang
(package
(name "r-rlang")
- (version "0.1.6")
+ (version "0.2.0")
(source (origin
(method url-fetch)
(uri (cran-uri "rlang" version))
(sha256
(base32
- "1x62assn8m7cd0q75r809gxsdqmxmd2br1xz53ykzhrfz3j768kp"))))
+ "0f87fhw5pj6s2zjdxnpnd7pwn78czdz71b0xhm5adqg1p38sfwj8"))))
(build-system r-build-system)
(home-page "http://rlang.tidyverse.org")
(synopsis "Functions for base types, core R and Tidyverse features")
(define-public r-dbplyr
(package
(name "r-dbplyr")
- (version "1.2.0")
+ (version "1.2.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "dbplyr" version))
(sha256
(base32
- "17br61mhssi2pm6v8604f89ykglng3qp9ymfzmhw10cary6zm982"))))
+ "1nwrls9c3kc9q7405jp6b9sh23642sz13yw55iikgw134shffj5k"))))
(build-system r-build-system)
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
(define-public r-openssl
(package
(name "r-openssl")
- (version "1.0")
+ (version "1.0.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "openssl" version))
(sha256
(base32
- "1j8smqrb79lnaf2n9icksjiy641fcazsbkhmgg916s3nnyjngjz3"))))
+ "1qyql5gpwf88bkm1qarjhbqbq4hn6w0d8j4pxb5x7i96is30ap30"))))
(build-system r-build-system)
(inputs
`(("libressl" ,libressl)))
(define-public r-devtools
(package
(name "r-devtools")
- (version "1.13.4")
+ (version "1.13.5")
(source (origin
(method url-fetch)
(uri (cran-uri "devtools" version))
(sha256
(base32
- "1az1qf50vyhm4w6k2a6wqw3pqc8jv2iqzdhs36cg079hx9swm0mb"))))
+ "1x3wsk7dh3yakii61kbfvafx9yz66h40ixiwfkf03dnp2n24hngs"))))
(build-system r-build-system)
(propagated-inputs
`(("r-digest" ,r-digest)
(define-public r-withr
(package
(name "r-withr")
- (version "2.1.1")
+ (version "2.1.2")
(source (origin
(method url-fetch)
(uri (cran-uri "withr" version))
(sha256
(base32
- "17pbllxv18gf1mli9mm5px4wzp364907a4wrl20r1y5q8qwawpxx"))))
+ "11j6zykklxnvp4xqsr6a2xib665i38m3khdspp887nwagmvnydj1"))))
(build-system r-build-system)
(home-page "https://github.com/jimhester/withr")
(synopsis "Run code with temporarily modified global state")
(define-public r-rcpparmadillo
(package
(name "r-rcpparmadillo")
- (version "0.8.300.1.0")
+ (version "0.8.400.0.0")
(source (origin
(method url-fetch)
(uri (cran-uri "RcppArmadillo" version))
(sha256
(base32
- "0p6cbnwxgzigf7n5qhqvxdr3nd3pq3c2qq6pskqz7avzf813fy83"))))
+ "11y2ksf46zw6fcz0kk70szyfn7qqxwwd33xylrxvnyb7ldmbc5yr"))))
(properties `((upstream-name . "RcppArmadillo")))
(build-system r-build-system)
(native-inputs
(define-public r-rmarkdown
(package
(name "r-rmarkdown")
- (version "1.8")
+ (version "1.9")
(source
(origin
(method url-fetch)
(uri (cran-uri "rmarkdown" version))
(sha256
(base32
- "0q1y1qx87xp6vf9h7mfl77rqhmd01xl53l9ap9qj99bfvpabb572"))))
+ "0wq6kbhrkv3fhcy4hg5yyv9gdvf8gr4nsjwdifs4ih8lnn0dmdyb"))))
(properties `((upstream-name . "rmarkdown")))
(build-system r-build-system)
(propagated-inputs
("r-rprojroot" ,r-rprojroot)
("r-stringr" ,r-stringr)
("r-yaml" ,r-yaml)
- ("ghc-pandoc" ,ghc-pandoc)))
+ ;; rmarkdown works with the 2.x release of Pandoc, but with degraded
+ ;; functionality. For example, tabbed plots do not currently work with
+ ;; Pandoc 2. The authors of rmarkdown recommend the use of Pandoc 1
+ ;; for the time being.
+ ("ghc-pandoc" ,ghc-pandoc-1)))
(home-page "http://rmarkdown.rstudio.com")
(synopsis "Convert R Markdown documents into a variety of formats")
(description
(define-public r-xml
(package
(name "r-xml")
- (version "3.98-1.9")
+ (version "3.98-1.10")
(source (origin
(method url-fetch)
(uri (cran-uri "XML" version))
(sha256
(base32
- "1hzkdkgs0nzmfg9wm7kyh1j9i0i2g7925whzlihqvg9grdlh3dx3"))))
+ "1faza9bbllp67lf1yv1sllxc3iv8llz52m9diazhq322iqbh97m1"))))
(properties
`((upstream-name . "XML")))
(build-system r-build-system)
(inputs
- `(("libxml2" ,libxml2)))
+ `(("libxml2" ,libxml2)
+ ("zlib" ,zlib)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
(home-page "http://www.omegahat.org/RSXML")
(synopsis "Tools for parsing and generating XML within R")
(description
"0vql32np716dpd0kjn7s7wgawd02ysgp2a5il4kb19nlw661ii3x"))))
(properties `((upstream-name . "lambda.r")))
(build-system r-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'check 'delete-test-log
+ ;; The test report contains time stamps and is not important for
+ ;; the installed package.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (delete-file-recursively
+ (string-append (assoc-ref outputs "out")
+ "/site-library/lambda.r/unitTests"))
+ #t)))))
+ (native-inputs
+ `(("r-runit" ,r-runit)))
(home-page "https://cran.r-project.org/web/packages/lambda.r")
(synopsis "Functional programming extension for R")
(description
(define-public r-nmf
(package
(name "r-nmf")
- (version "0.20.6")
+ (version "0.21.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "NMF" version))
(sha256
(base32
- "0mmh9bz0zjwd8h9jplz4rq3g94npaqj8s4px51vcv47csssd9k6z"))))
+ "1qq25n3k5sgh3srlshb3ic6q92s12c1ilqf5cd5anvq6cqfchc1v"))))
(properties `((upstream-name . "NMF")))
(build-system r-build-system)
(propagated-inputs
`(("r-cluster" ,r-cluster)
- ("r-bigmemory" ,r-bigmemory)
- ("r-synchronicity" ,r-synchronicity)
+ ("r-bigmemory" ,r-bigmemory) ; suggested
+ ("r-synchronicity" ,r-synchronicity) ; suggested
("r-colorspace" ,r-colorspace)
("r-digest" ,r-digest)
("r-doparallel" ,r-doparallel)
(define-public r-tidyselect
(package
(name "r-tidyselect")
- (version "0.2.3")
+ (version "0.2.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "tidyselect" version))
(sha256
(base32
- "0b0w30yq30c7bwpaghp3hp0nncqwcmvrra9j58fhx9jihay3l68c"))))
+ "1592dbzawhd1hpsp9919l4sifyiaaj6xr7lnhsbwa6jwmmb0xcsw"))))
(build-system r-build-system)
(propagated-inputs
`(("r-glue" ,r-glue)
(define-public r-sfsmisc
(package
(name "r-sfsmisc")
- (version "1.1-1")
+ (version "1.1-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "sfsmisc" version))
(sha256
(base32
- "0jzmbywlyzfxs7hlmyd0iynghfc9qp5sa5lnhr73y8r360yv1ahf"))))
+ "0cgq2h11ngkzd6p34k6mqjnvlvc5vj4lnqrl64k05lb391j391w0"))))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/sfsmisc")
(synopsis "Utilities from \"Seminar fuer Statistik\" ETH Zurich")
(base32
"1xknwk9xlsj027pg0nwiizigcrsc84hdrig0jn0cgcyxj8dabdl6"))))
(build-system r-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'make-deterministic
+ (lambda _
+ (substitute* "R/checkReverseDependencies.R"
+ (("tempdir\\(\\)") "\"/tmp\""))
+ #t)))))
(home-page "https://cran.r-project.org/web/packages/gtools")
(synopsis "Various R programming tools")
(description
showing the progress is useful e.g. bootstrap.")
(license license:gpl2)))
-(define-public r-fnn
- (package
- (name "r-fnn")
- (version "1.1")
- (source
- (origin
- (method url-fetch)
- (uri (cran-uri "FNN" version))
- (sha256
- (base32
- "1kncmiaraq1mrykb9fj3fsxswabk3l71fnp1vks0x9aay5xfk8mj"))))
- (properties `((upstream-name . "FNN")))
- (build-system r-build-system)
- (home-page "https://cran.r-project.org/web/packages/FNN")
- (synopsis "Fast nearest neighbor search algorithms and applications")
- (description
- "This package provides cover-tree and kd-tree fast k-nearest neighbor
-search algorithms and related applications including KNN classification,
-regression and information measures.")
- (license license:gpl2+)))
-
(define-public r-minqa
(package
(name "r-minqa")
`(("r-matrix" ,r-matrix)
("r-matrixmodels" ,r-matrixmodels)
("r-sparsem" ,r-sparsem)))
- (home-page "http://www.r-project.org")
+ (home-page "https://www.r-project.org")
(synopsis "Quantile regression")
(description
"This package provides an estimation and inference methods for models
(define-public r-lubridate
(package
(name "r-lubridate")
- (version "1.7.2")
+ (version "1.7.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "lubridate" version))
(sha256
(base32
- "0k417a1xp5gxf77ycbnx5apzpc5d25sjm83ss7wmqpbnhnr5dcav"))))
+ "1pzkqfiahnsdm3zx46asgn8fw43vlxvbh7r4cn70c7ffmxabzzrc"))))
(build-system r-build-system)
(propagated-inputs
`(("r-rcpp" ,r-rcpp)
(define-public r-forcats
(package
(name "r-forcats")
- (version "0.2.0")
+ (version "0.3.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "forcats" version))
(sha256
(base32
- "1mvwkynvvgz2vi8dyz11x7xrp53kadjawjcja34hwk1d89qf7g5m"))))
+ "0mxn1hng43zdjh1v8shd80hrszrqahcpaqxs1s1sif0qxh84d0cm"))))
(build-system r-build-system)
(propagated-inputs
`(("r-magrittr" ,r-magrittr)
- ("r-tibble" ,r-tibble)))
+ ("r-tibble" ,r-tibble)
+ ("r-rlang" ,r-rlang)))
(home-page "http://forcats.tidyverse.org")
(synopsis "Tools for working with factors")
(description "This package provides helpers for reordering factor
(uri (hg-reference
(url "https://bitbucket.org/tanaylab/tgstat")
(changeset changeset)))
+ (file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0ilkkyximy77zbncm91kdfqbxf0qyndg16pd3q3p6a3xc9qcmxvn"))))
(uri (hg-reference
(url "https://bitbucket.org/tanaylab/tgconfig")
(changeset changeset)))
+ (file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0xy6c7s7mn1yx191154bwbv1bl424bnvc80syqpl1vdl28ba46rj"))))
(description "Did you ever wish you could make scatter plots with cat
shaped points? Now you can!")
(license license:asl2.0))))
+
+(define-public r-colorout
+ (package
+ (name "r-colorout")
+ (version "1.2-0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/jalvesaq/colorout/archive/"
+ "v" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07vqx5ihgnq4dzn5jnfjfhdm3957v4prvf8vhnb3cwvlly4l7p9v"))))
+ (build-system r-build-system)
+ (home-page "https://github.com/jalvesaq/colorout")
+ (synopsis "Colorize output in the R REPL")
+ (description "@code{colorout} is an R package that colorizes R output when
+running in terminal emulator.
+
+R STDOUT is parsed and numbers, negative numbers, dates in the standard
+format, strings, and R constants are identified and wrapped by special ANSI
+scape codes that are interpreted by terminal emulators as commands to colorize
+the output. R STDERR is also parsed to identify the expressions warning and
+error and their translations to many languages. If these expressions are
+found, the output is colorized accordingly; otherwise, it is colorized as
+STDERROR (blue, by default).
+
+You can customize the colors according to your taste, guided by the color
+table made by the command @code{show256Colors()}. You can also set the colors
+to any arbitrary string. In this case, it is up to you to set valid values.")
+ (license license:gpl3+)))
+
+(define-public java-jdistlib
+ (package
+ (name "java-jdistlib")
+ (version "0.4.5")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/jdistlib/jdistlib-"
+ version "-src.jar"))
+ (sha256
+ (base32
+ "1pkj8aahw9ydr1isbaqrkd05nvq98ik5jwwhf3yf3rky3z869v11"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "jdistlib.jar"
+ #:jdk ,icedtea-8
+ #:tests? #f ; no dedicated test directory
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-broken-encoding
+ (lambda _
+ (with-fluids ((%default-port-encoding "ISO-8859-1"))
+ (substitute* "src/jdistlib/Beta.java"
+ (("Scheff.+-Tukey") "Scheffe-Tukey")))
+ #t)))))
+ (propagated-inputs
+ `(("java-jtransforms" ,java-jtransforms)))
+ (native-inputs
+ `(("java-junit" ,java-junit)))
+ (home-page "http://jdistlib.sourceforge.net/")
+ (synopsis "Java library of statistical distributions")
+ (description "JDistlib is the Java Statistical Distribution Library, a
+Java package that provides routines for various statistical distributions.")
+ ;; The files that were translated from R code are under GPLv2+; some files
+ ;; are under the GPLv3, which is a mistake. The author confirmed in an
+ ;; email that this whole project should be under GPLv2+.
+ (license license:gpl2+)))