;;; 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-for-tests)
;; 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.
("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-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-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-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-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-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
"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+)))