diff options
author | Marius Bakke <mbakke@fastmail.com> | 2018-11-07 21:09:57 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2018-11-07 21:09:57 +0100 |
commit | 55174e668f2985d1c4efda4fbf58f4061dde0db2 (patch) | |
tree | f55f7e50fff1a1c3d1e6d2e932a7ef19347e5011 | |
parent | 1badc85068ee0be2a028c1b94a3dd285901bc391 (diff) | |
parent | b31e1561611ebe4916890183b24e6e13cb83bf59 (diff) | |
download | guix-55174e668f2985d1c4efda4fbf58f4061dde0db2.tar.gz |
Merge branch 'master' into core-updates
48 files changed, 1594 insertions, 979 deletions
diff --git a/Makefile.am b/Makefile.am index 8c3df8f396..c63b65ba56 100644 --- a/Makefile.am +++ b/Makefile.am @@ -406,6 +406,7 @@ SH_TESTS = \ tests/guix-gc.sh \ tests/guix-hash.sh \ tests/guix-pack.sh \ + tests/guix-pack-relocatable.sh \ tests/guix-package.sh \ tests/guix-package-net.sh \ tests/guix-system.sh \ @@ -462,8 +463,8 @@ check-system: $(GOBJECTS) # Public key used to sign substitutes from hydra.gnu.org & co. dist_pkgdata_DATA = \ - hydra.gnu.org.pub \ - berlin.guixsd.org.pub + etc/substitutes/hydra.gnu.org.pub \ + etc/substitutes/berlin.guixsd.org.pub # Bash completion file. dist_bashcompletion_DATA = etc/completion/bash/guix \ diff --git a/doc/guix.texi b/doc/guix.texi index 3b7fa50d81..d021875bbf 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -31,7 +31,7 @@ Copyright @copyright{} 2016, 2017, 2018 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2017, 2018 Clément Lassieur@* -Copyright @copyright{} 2017 Mathieu Othacehe@* +Copyright @copyright{} 2017, 2018 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017, 2018 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* @@ -2844,9 +2844,6 @@ The @command{guix pull} command is usually invoked with no arguments, but it supports the following options: @table @code -@item --verbose -Produce verbose output, writing build logs to the standard error output. - @item --url=@var{url} @itemx --commit=@var{commit} @itemx --branch=@var{branch} @@ -2880,6 +2877,14 @@ current generation only. @itemx -p @var{profile} Use @var{profile} instead of @file{~/.config/guix/current}. +@item --dry-run +@itemx -n +Show which channel commit(s) would be used and what would be built or +substituted but do not actually do it. + +@item --verbose +Produce verbose output, writing build logs to the standard error output. + @item --bootstrap Use the bootstrap Guile to build the latest Guix. This option is only useful to Guix developers. @@ -10934,6 +10939,10 @@ A gexp denoting the name of the log-in program. The default log-in program is @item @code{login-arguments} (default: @code{'("-p")}) A list of arguments to pass to @command{login}. +@item @code{auto-login} (default: @code{#f}) +When passed a login name, as a string, the specified user will be logged +in automatically without prompting for their login name or password. + @item @code{hardware-acceleration?} (default: #f) Whether to use hardware acceleration. @@ -18663,6 +18672,11 @@ Cuirass jobs. Location of sqlite database which contains the build results and previously added specifications. +@item @code{ttl} (default: @code{(* 30 24 3600)}) +Specifies the time-to-live (TTL) in seconds of garbage collector roots that +are registered for build results. This means that build results are protected +from garbage collection for at least @var{ttl} seconds. + @item @code{port} (default: @code{8081}) Port number used by the HTTP server. diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix index a593b8112c..3d2b3ddda7 100644 --- a/etc/completion/bash/guix +++ b/etc/completion/bash/guix @@ -1,5 +1,5 @@ # GNU Guix --- Functional package management for GNU -# Copyright © 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> +# Copyright © 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> # # This file is part of GNU Guix. # @@ -172,6 +172,8 @@ _guix_complete () if _guix_is_dash_L then _guix_complete_file + else + _guix_complete_available_package "$word_at_point" fi elif _guix_is_command "download" then diff --git a/berlin.guixsd.org.pub b/etc/substitutes/berlin.guixsd.org.pub index f156a37b08..f156a37b08 100644 --- a/berlin.guixsd.org.pub +++ b/etc/substitutes/berlin.guixsd.org.pub diff --git a/hydra.gnu.org.pub b/etc/substitutes/hydra.gnu.org.pub index 6db597ed4d..6db597ed4d 100644 --- a/hydra.gnu.org.pub +++ b/etc/substitutes/hydra.gnu.org.pub diff --git a/gnu/build/install.scm b/gnu/build/install.scm index 98c547f2e4..c9ebe124fe 100644 --- a/gnu/build/install.scm +++ b/gnu/build/install.scm @@ -18,7 +18,6 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu build install) - #:use-module (guix store database) #:use-module (guix build utils) #:use-module (guix build store-copy) #:use-module (srfi srfi-26) @@ -27,6 +26,7 @@ evaluate-populate-directive populate-root-file-system register-closure + install-database-and-gc-roots populate-single-profile-directory)) ;;; Commentary: @@ -141,34 +141,45 @@ includes /etc, /var, /run, /bin/sh, etc., and all the symlinks to SYSTEM." (try)) (apply throw args))))))) -(define* (register-closure prefix closure - #:key - (deduplicate? #t) (reset-timestamps? #t) - (schema (sql-schema))) - "Register CLOSURE in PREFIX, where PREFIX is the directory name of the -target store and CLOSURE is the name of a file containing a reference graph as -produced by #:references-graphs.. As a side effect, if RESET-TIMESTAMPS? is -true, reset timestamps on store files and, if DEDUPLICATE? is true, -deduplicates files common to CLOSURE and the rest of PREFIX." - (let ((items (call-with-input-file closure read-reference-graph))) - (register-items items - #:prefix prefix - #:deduplicate? deduplicate? - #:reset-timestamps? reset-timestamps? - #:registration-time %epoch - #:schema schema))) +(define %root-profile + "/var/guix/profiles/per-user/root") + +(define* (install-database-and-gc-roots root database profile + #:key (profile-name "guix-profile")) + "Install DATABASE, the store database, under directory ROOT. Create +PROFILE-NAME and have it link to PROFILE, a store item." + (define (scope file) + (string-append root "/" file)) + + (define (mkdir-p* dir) + (mkdir-p (scope dir))) + + (define (symlink* old new) + (symlink old (scope new))) + + (install-file database (scope "/var/guix/db/")) + (chmod (scope "/var/guix/db/db.sqlite") #o644) + (mkdir-p* "/var/guix/profiles") + (mkdir-p* "/var/guix/gcroots") + (symlink* "/var/guix/profiles" "/var/guix/gcroots/profiles") + + ;; Make root's profile, which makes it a GC root. + (mkdir-p* %root-profile) + (symlink* profile + (string-append %root-profile "/" profile-name "-1-link")) + (symlink* (string-append profile-name "-1-link") + (string-append %root-profile "/" profile-name))) (define* (populate-single-profile-directory directory #:key profile closure (profile-name "guix-profile") - deduplicate? - register? schema) + database) "Populate DIRECTORY with a store containing PROFILE, whose closure is given in the file called CLOSURE (as generated by #:references-graphs.) DIRECTORY is initialized to contain a single profile under /root pointing to PROFILE. -When REGISTER? is true, initialize DIRECTORY/var/guix/db to reflect the -contents of the store; DEDUPLICATE? determines whether to deduplicate files in -the store. + +When DATABASE is true, copy it to DIRECTORY/var/guix/db and create +DIRECTORY/var/guix/gcroots and friends. PROFILE-NAME is the name of the profile being created under /var/guix/profiles, typically either \"guix-profile\" or \"current-guix\". @@ -177,9 +188,6 @@ This is used to create the self-contained tarballs with 'guix pack'." (define (scope file) (string-append directory "/" file)) - (define %root-profile - "/var/guix/profiles/per-user/root") - (define (mkdir-p* dir) (mkdir-p (scope dir))) @@ -189,22 +197,9 @@ This is used to create the self-contained tarballs with 'guix pack'." ;; Populate the store. (populate-store (list closure) directory) - (when register? - (register-closure (canonicalize-path directory) closure - #:deduplicate? deduplicate? - #:schema schema) - - (mkdir-p* "/var/guix/profiles") - (mkdir-p* "/var/guix/gcroots") - (symlink* "/var/guix/profiles" - "/var/guix/gcroots/profiles")) - - ;; Make root's profile, which makes it a GC root. - (mkdir-p* %root-profile) - (symlink* profile - (string-append %root-profile "/" profile-name "-1-link")) - (symlink* (string-append profile-name "-1-link") - (string-append %root-profile "/" profile-name)) + (when database + (install-database-and-gc-roots directory database profile + #:profile-name profile-name)) (match profile-name ("guix-profile" diff --git a/gnu/build/linux-initrd.scm b/gnu/build/linux-initrd.scm index c65b5aacfa..fb8a1f5b2b 100644 --- a/gnu/build/linux-initrd.scm +++ b/gnu/build/linux-initrd.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2018 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -139,6 +139,12 @@ REFERENCES-GRAPHS." (write-cpio-archive output "." #:gzip gzip)) + ;; Make sure directories are writable so we can delete files. + (for-each make-file-writable + (find-files "contents" + (lambda (file stat) + (eq? 'directory (stat:type stat))) + #:directories? #t)) (delete-file-recursively "contents")) ;;; linux-initrd.scm ends here diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index 5579886264..746808515f 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -25,7 +25,7 @@ #:use-module (guix build utils) #:use-module (guix build store-copy) #:use-module (guix build syscalls) - #:use-module ((guix store database) #:select (reset-timestamps)) + #:use-module (guix store database) #:use-module (gnu build linux-boot) #:use-module (gnu build install) #:use-module (gnu system uuid) @@ -191,6 +191,23 @@ the #:references-graphs parameter of 'derivation'." (mkdir output) (copy-recursively "xchg" output))))) +(define* (register-closure prefix closure + #:key + (deduplicate? #t) (reset-timestamps? #t) + (schema (sql-schema))) + "Register CLOSURE in PREFIX, where PREFIX is the directory name of the +target store and CLOSURE is the name of a file containing a reference graph as +produced by #:references-graphs.. As a side effect, if RESET-TIMESTAMPS? is +true, reset timestamps on store files and, if DEDUPLICATE? is true, +deduplicates files common to CLOSURE and the rest of PREFIX." + (let ((items (call-with-input-file closure read-reference-graph))) + (register-items items + #:prefix prefix + #:deduplicate? deduplicate? + #:reset-timestamps? reset-timestamps? + #:registration-time %epoch + #:schema schema))) + ;;; ;;; Partitions. diff --git a/gnu/local.mk b/gnu/local.mk index 86f081f7cf..90dbe94025 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -726,7 +726,6 @@ dist_patch_DATA = \ %D%/packages/patches/gd-fix-tests-on-i686.patch \ %D%/packages/patches/gd-freetype-test-failure.patch \ %D%/packages/patches/gdm-CVE-2018-14424.patch \ - %D%/packages/patches/gemma-intel-compat.patch \ %D%/packages/patches/geoclue-config.patch \ %D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \ %D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \ @@ -838,7 +837,6 @@ dist_patch_DATA = \ %D%/packages/patches/java-xerces-xjavac_taskdef.patch \ %D%/packages/patches/jbig2dec-ignore-testtest.patch \ %D%/packages/patches/json-glib-fix-tests-32bit.patch \ - %D%/packages/patches/jq-CVE-2015-8863.patch \ %D%/packages/patches/kdbusaddons-kinit-file-name.patch \ %D%/packages/patches/khmer-use-libraries.patch \ %D%/packages/patches/libziparchive-add-includes.patch \ @@ -882,6 +880,7 @@ dist_patch_DATA = \ %D%/packages/patches/libexif-CVE-2017-7544.patch \ %D%/packages/patches/libgcrypt-make-yat2m-reproducible.patch \ %D%/packages/patches/libgit2-mtime-0.patch \ + %D%/packages/patches/libgit2-oom-test.patch \ %D%/packages/patches/libgdata-fix-tests.patch \ %D%/packages/patches/libgdata-glib-duplicate-tests.patch \ %D%/packages/patches/libgnome-encoding.patch \ diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm index be3662798b..9d792021bd 100644 --- a/gnu/packages/benchmark.scm +++ b/gnu/packages/benchmark.scm @@ -35,14 +35,14 @@ (define-public fio (package (name "fio") - (version "3.7") + (version "3.11") (source (origin (method url-fetch) (uri (string-append "http://brick.kernel.dk/snaps/" - "fio-" version ".tar.gz")) + "fio-" version ".tar.bz2")) (sha256 (base32 - "0rw9jf2ikm19lq4jizavdvvp3vfvlm3annq7jsxl2y5nf1pi2qr7")))) + "0s8m0wcz5j6sa1hblj80wk3syy5b4shg7y3gabvm9xa3wj0lzasa")))) (build-system gnu-build-system) (arguments '(#:test-target "test" diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 6ce5c0dc96..bab6b2b64d 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -201,14 +201,14 @@ genomes and gene ID formats, largely based on the UCSC table browser.") (define-public r-hpar (package (name "r-hpar") - (version "1.22.2") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "hpar" version)) (sha256 (base32 - "1b72hvzasf6q739gmx6jblbzzyq22l7crrkbbfkihv3v7s94g388")))) + "1pm3k8apgynmdzv2d0chca3b636kcai3b1x861fyv1m3xs6msgxn")))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/hpar/") (synopsis "Human Protein Atlas in R") @@ -219,23 +219,24 @@ the Human Protein Atlas project.") (define-public r-regioner (package (name "r-regioner") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "regioneR" version)) (sha256 (base32 - "09bzlaqdgy7wmzly3zc9y2da50d07mlixlnpaxdxpiwdk8qmhxsb")))) + "19la74swgzxp90z2nr3pzsgkxd7wp70zl6i2ipv3plg841f6k5zd")))) (properties `((upstream-name . "regioneR"))) (build-system r-build-system) (propagated-inputs - `(("r-memoise" ,r-memoise) - ("r-genomicranges" ,r-genomicranges) + `(("r-biostrings" ,r-biostrings) ("r-bsgenome" ,r-bsgenome) - ("r-rtracklayer" ,r-rtracklayer) ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) ("r-iranges" ,r-iranges) + ("r-memoise" ,r-memoise) + ("r-rtracklayer" ,r-rtracklayer) ("r-s4vectors" ,r-s4vectors))) (home-page "https://bioconductor.org/packages/regioneR/") (synopsis "Association analysis of genomic regions") @@ -247,14 +248,14 @@ region sets and other genomic features.") (define-public r-diffbind (package (name "r-diffbind") - (version "2.8.0") + (version "2.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DiffBind" version)) (sha256 (base32 - "1w1hybzd732ccg3q8zhirwfilq8sx3frv1x98zfyj3svzw98fish")))) + "0j8pal40lr1gv8sss96hhkj7l1qn9sy4q4l2kqd4rfwl7qrcnfw5")))) (properties `((upstream-name . "DiffBind"))) (build-system r-build-system) (inputs @@ -292,14 +293,14 @@ occupancy (overlap) analysis and plotting functions.") (define-public r-ripseeker (package (name "r-ripseeker") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RIPSeeker" version)) (sha256 (base32 - "0y9cvzqslfxj3z9mnp47mknff0pky2g5x8x1z1s5yjcx35q89xfi")))) + "1x2n1iyik4s67bxq0fl6fpf602k51g4pxjpjpxkgx1a5fsk61f2i")))) (properties `((upstream-name . "RIPSeeker"))) (build-system r-build-system) (propagated-inputs @@ -325,14 +326,14 @@ processing to visualization and annotation.") (define-public r-multtest (package (name "r-multtest") - (version "2.36.0") + (version "2.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "multtest" version)) (sha256 (base32 - "11949h2kglw13x8haaj4clg4jim1mwh5n98n9zxp9mmgn01z1lp0")))) + "0lq62jw81hz9k840969n5byj57pwd0jqga3hqvhb6abb3g10yz7k")))) (build-system r-build-system) (propagated-inputs `(("r-survival" ,r-survival) @@ -363,13 +364,13 @@ expressed genes in DNA microarray experiments.") (define-public r-graph (package (name "r-graph") - (version "1.58.2") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "graph" version)) (sha256 (base32 - "07smbb3c30pr5r425g181xsg0rs5jx6x2q6xpwb5dqgicxrz30ga")))) + "1kgnsm6f0vmb9qbkmmrnvxbwqc0gar17dq5gv1v10hrksw6mh64i")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics))) @@ -410,18 +411,19 @@ determining dependencies between variables, code improvement suggestions.") (define-public r-chippeakanno (package (name "r-chippeakanno") - (version "3.14.2") + (version "3.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ChIPpeakAnno" version)) (sha256 (base32 - "13rksc65lxxzyw11galh6xzvgzp5ii0gwiwpvrm395v2r17rhwsc")))) + "09fhh1355diip3v3c0skmp1336vclipkm5nv02qvp5902v4262y3")))) (properties `((upstream-name . "ChIPpeakAnno"))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) + ("r-biocmanager" ,r-biocmanager) ("r-biostrings" ,r-biostrings) ("r-delayedarray" ,r-delayedarray) ("r-go-db" ,r-go-db) @@ -437,7 +439,6 @@ determining dependencies between variables, code improvement suggestions.") ("r-multtest" ,r-multtest) ("r-rbgl" ,r-rbgl) ("r-graph" ,r-graph) - ("r-biocinstaller" ,r-biocinstaller) ("r-regioner" ,r-regioner) ("r-dbi" ,r-dbi) ("r-ensembldb" ,r-ensembldb) @@ -465,12 +466,12 @@ enrichedGO (addGeneIDs).") (define-public r-marray (package (name "r-marray") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "marray" version)) (sha256 - (base32 "0539flh3y1qy5b1bamkfwbskis765c5s33v1y9j51n33mxb9h08d")))) + (base32 "1sh7l3c28x6zhdv99c9x05ii2yxmh9alkazp98kdi4fdb23rlzky")))) (build-system r-build-system) (propagated-inputs `(("r-limma" ,r-limma))) @@ -484,12 +485,12 @@ normalization and quality checking.") (define-public r-cghbase (package (name "r-cghbase") - (version "1.40.0") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CGHbase" version)) (sha256 - (base32 "1hf44vma3kgwr61kjbszvfxkava8bjqnam1mdncqvczbypb2xwaq")))) + (base32 "0ghxp49xdi09p3f2qwrdrq2p4qjafj4z1rr08ycgbf11gb22h1sc")))) (properties `((upstream-name . "CGHbase"))) (build-system r-build-system) (propagated-inputs @@ -504,12 +505,12 @@ the @code{arrayCGH} packages.") (define-public r-cghcall (package (name "r-cghcall") - (version "2.42.0") + (version "2.44.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CGHcall" version)) (sha256 - (base32 "0y71vfxv9x0am3xvv520yr95cb7m7y92dhdx1vkqki80jrmf12dz")))) + (base32 "1k65kaiqvjyllzbpa2367n6f6kkmsy463kpflzs66hqhx2fshsmi")))) (properties `((upstream-name . "CGHcall"))) (build-system r-build-system) (propagated-inputs @@ -527,12 +528,12 @@ the @code{arrayCGH} packages.") (define-public r-qdnaseq (package (name "r-qdnaseq") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "QDNAseq" version)) (sha256 - (base32 "1pj69mfyxwfd0d7h4kls9xq96sdc55y3rv20qpla50hw9libcwwd")))) + (base32 "04ff9nbckzrlb45mr2j0c3mlh1wcggq5bbl81zklhq203c5x1wc2")))) (properties `((upstream-name . "QDNAseq"))) (build-system r-build-system) (propagated-inputs @@ -559,14 +560,14 @@ respectively.") (define-public r-bayseq (package (name "r-bayseq") - (version "2.14.0") + (version "2.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "baySeq" version)) (sha256 (base32 - "0hbmm01a8libara9mbxknpk0wzarwfngnfwlmhpww91a0cmy5klg")))) + "0f6yckihm5cwh3dycv2g54hf7nddhcqya4yrqwbir96y5k1d1km5")))) (properties `((upstream-name . "baySeq"))) (build-system r-build-system) (propagated-inputs @@ -585,14 +586,14 @@ more complex hypotheses) via empirical Bayesian methods.") (define-public r-chipcomp (package (name "r-chipcomp") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ChIPComp" version)) (sha256 (base32 - "0j9nif7z33qdxf347r9wa62hhz8qs09r2p96x3hg5yz30a10ahqs")))) + "1sypdsvwzssraanlhddhzpf9p0xs3qlflc0hp7yfbp0aplsifx85")))) (properties `((upstream-name . "ChIPComp"))) (build-system r-build-system) (propagated-inputs @@ -619,14 +620,14 @@ datasets.") (define-public r-riboprofiling (package (name "r-riboprofiling") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RiboProfiling" version)) (sha256 (base32 - "04yjklqdjkim7yxyk3cyvf0mmwyxyfvw2mmfzgwaaqbiyg29sli0")))) + "1njvkd1khmf3rbp3dkz5z63wp79z4wmk4kzd3p3amky3w5by070z")))) (properties `((upstream-name . "RiboProfiling"))) (build-system r-build-system) (propagated-inputs @@ -658,14 +659,14 @@ assessment, principal component analysis on codon coverage.") (define-public r-riboseqr (package (name "r-riboseqr") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "riboSeqR" version)) (sha256 (base32 - "0xavd1cdhi8qfjn9a1hjhflyg6jq1ydvv56z12gjz572pwz2knvn")))) + "1nacsbsz77fw4a10nqj2ncsf25q3aaa0gd5w1q0ray2prx7qmlqb")))) (properties `((upstream-name . "riboSeqR"))) (build-system r-build-system) (propagated-inputs @@ -686,14 +687,14 @@ parsing of genetic sequencing data from ribosome profiling experiments.") (define-public r-interactionset (package (name "r-interactionset") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "InteractionSet" version)) (sha256 (base32 - "0xngraq7ic80jr98i1wqp8bxdgidq6py60m2wfk82n1ixpcdck8n")))) + "0wirfhmpmkmnmhbqslw4bzvi2msqyqpjy1rrwr5qbd9k5rhx3bzb")))) (properties `((upstream-name . "InteractionSet"))) (build-system r-build-system) @@ -718,14 +719,14 @@ experiments.") (define-public r-genomicinteractions (package (name "r-genomicinteractions") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicInteractions" version)) (sha256 (base32 - "0cnagprxj0b7p6s29iyhqwxj7hgmrh75gj52y4dlil790d1bmq2q")))) + "0zy5isp2lqpjm0n0n1gly5bs4izn22yciibyqrnlrr60rmn5s67q")))) (properties `((upstream-name . "GenomicInteractions"))) (build-system r-build-system) @@ -757,14 +758,14 @@ information and producing various plots and statistics.") (define-public r-ctc (package (name "r-ctc") - (version "1.54.0") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ctc" version)) (sha256 (base32 - "0sadplm4n9n3z6inmn6y3d6qbr4hllljqh700x5fygrnfacnckk9")))) + "0yp7c0abk48jx1wf8n1gawh7dm15idahqc8va24v8cm0bzxgnmh2")))) (build-system r-build-system) (propagated-inputs `(("r-amap" ,r-amap))) (home-page "https://bioconductor.org/packages/ctc/") @@ -777,14 +778,14 @@ trees and clusters to other programs.") (define-public r-goseq (package (name "r-goseq") - (version "1.32.0") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "goseq" version)) (sha256 (base32 - "0xmbb8ma32lrfy810r82y34gkspq4fqiqxykic9j4rq9rg9n9x2l")))) + "1401x0jn5f8hqc12r3gd1wammp1nxir3is1k5ldd03ln97x00i7a")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -803,14 +804,14 @@ defined categories which are over/under represented in RNA-seq data.") (define-public r-glimma (package (name "r-glimma") - (version "1.8.2") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Glimma" version)) (sha256 (base32 - "0kfia60vrlys6amdchdix01iwbkwyb7nfjqn5hczsxp8rhmbg25s")))) + "0cbsi6g8k1whkh21jxfn22sj7wry2g3rshiracf5nyvrl2fnl947")))) (properties `((upstream-name . "Glimma"))) (build-system r-build-system) (propagated-inputs @@ -830,14 +831,14 @@ information.") (define-public r-rots (package (name "r-rots") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ROTS" version)) (sha256 (base32 - "12jvdqanyk86ihpcylp105zip22y0gkbksmyxy00q7iad0jhaqp3")))) + "137c06g5w7mjw3b1mly7b7n9iix4fcy23c7a9ym9iz8dazwhzwn5")))) (properties `((upstream-name . "ROTS"))) (build-system r-build-system) (propagated-inputs @@ -854,14 +855,14 @@ in omics data.") (define-public r-inspect (package (name "r-inspect") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "INSPEcT" version)) (sha256 (base32 - "1gk0pwyimkswrvgb2xr3c2zy4myi448a2shr5ap65rq9pcpp0l8p")))) + "0b671x5v2wyq5np2flq2m1fnjz32f303yjlw64a1inwc9k2w2pz2")))) (properties `((upstream-name . "INSPEcT"))) (build-system r-build-system) (propagated-inputs @@ -890,14 +891,14 @@ modeling the rates that determines changes in mature mRNA levels.") (define-public r-dnabarcodes (package (name "r-dnabarcodes") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DNABarcodes" version)) (sha256 (base32 - "0xhna7f0kr7pp2hqwara5i57m9mdr65shflfxiyw6yy3g90pgb5x")))) + "0g6j7ish0fk9jcib94wssjgp1m8ldcp42hyyg1ypr945fa3xghx0")))) (properties `((upstream-name . "DNABarcodes"))) (build-system r-build-system) (propagated-inputs @@ -917,14 +918,14 @@ demultiplexed, i.e. assigned to their original reference barcode.") (define-public r-ruvseq (package (name "r-ruvseq") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RUVSeq" version)) (sha256 (base32 - "16i5sm5af761k4zvspfi8jknsgln48bn538hxqqmlaq7wvlfxqxj")))) + "0xb3bj3n06cb9xddkv77a8svhg4fl1azlfmibwrm9mq9464kgf0m")))) (properties `((upstream-name . "RUVSeq"))) (build-system r-build-system) (propagated-inputs @@ -939,3 +940,32 @@ demultiplexed, i.e. assigned to their original reference barcode.") of Risso et al. (2014) for the normalization of RNA-Seq read counts between samples.") (license license:artistic2.0))) + +(define-public r-biocneighbors + (package + (name "r-biocneighbors") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "BiocNeighbors" version)) + (sha256 + (base32 + "1fsb96acidlxwf0h65xv7fnwdi58ckmq00gmwykrlawh88wgn1ll")))) + (properties `((upstream-name . "BiocNeighbors"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocparallel" ,r-biocparallel) + ("r-rcpp" ,r-rcpp) + ("r-rcppannoy" ,r-rcppannoy) + ("r-s4vectors" ,r-s4vectors))) + (home-page "https://bioconductor.org/packages/BiocNeighbors") + (synopsis "Nearest Neighbor Detection for Bioconductor packages") + (description + "This package implements exact and approximate methods for nearest +neighbor detection, in a framework that allows them to be easily switched +within Bioconductor packages or workflows. The exact algorithm is implemented +using pre-clustering with the k-means algorithm. Functions are also provided +to search for all neighbors within a given distance. Parallelization is +achieved for all methods using the BiocParallel framework.") + (license license:gpl3))) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 1cf1de1ae5..1fac960eff 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -262,14 +262,14 @@ instance, it implements several methods to assess contig-wise read coverage.") (name "bamtools") (version "2.5.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/pezmaster31/bamtools/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/pezmaster31/bamtools.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1z3kg24qrwq13a88n9d86izngrar4fll7gr6phddb2faw75pdgaa")))) + "0nfb2ypcx9959xnbz6wxh6py3xfizgmg8nrknxl95c507m9hmq8b")))) (build-system cmake-build-system) (arguments `(#:tests? #f ;no "check" target @@ -438,11 +438,11 @@ BED, GFF/GTF, VCF.") (source (origin (method url-fetch) (uri (string-append "https://github.com/arq5x/bedtools2/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + "releases/download/v" version + "/bedtools-" version ".tar.gz")) (sha256 (base32 - "05vrnr8yp7swfagshzpgqmzk1blnwnq8pq5pckzi1m26w98d63vf")))) + "11rvca19ncg03kxd0wzlfx5ws7r3nisd0z8s9j9n182d8ksp2pxz")))) (arguments '(#:test-target "test" #:phases @@ -520,13 +520,14 @@ provides the Ribotaper pipeline.") (version "0.2.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/ratschlab/RiboDiff/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ratschlab/RiboDiff.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0wpbwmfv05wdjxv7ikm664f7s7p7cqr8jnw99zrda0q67rl50aaj")))) + "0x75nlp7qnmm64jasbi6l21f2cy99r2cjyl6b4hr8zf2bq22drnz")))) (build-system python-build-system) (arguments `(#:python ,python-2 @@ -563,12 +564,14 @@ independently with transcriptional regulation.") (name "bioawk") (version "1.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/lh3/bioawk/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 "1daizxsk17ahi9n58fj8vpgwyhzrzh54bzqhanjanp88kgrz7gjw")))) + (method git-fetch) + (uri (git-reference + (url "https://github.com/lh3/bioawk.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1pxc3zdnirxbf9a0az698hd8xdik7qkhypm7v6hn922x8y9qmspm")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib))) @@ -582,13 +585,13 @@ independently with transcriptional regulation.") (modify-phases %standard-phases (delete 'configure) ; There is no configure phase. (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (man (string-append out "/share/man/man1"))) - (mkdir-p man) - (copy-file "awk.1" (string-append man "/bioawk.1")) - (install-file "bioawk" bin))))))) + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man (string-append out "/share/man/man1"))) + (mkdir-p man) + (copy-file "awk.1" (string-append man "/bioawk.1")) + (install-file "bioawk" bin))))))) (home-page "https://github.com/lh3/bioawk") (synopsis "AWK with bioinformatics extensions") (description "Bioawk is an extension to Brian Kernighan's awk, adding the @@ -688,38 +691,62 @@ Python.") (define-public python-biom-format (package - (name "python-biom-format") - (version "2.1.6") - (source - (origin - (method url-fetch) - ;; Use GitHub as source because PyPI distribution does not contain - ;; test data: https://github.com/biocore/biom-format/issues/693 - (uri (string-append "https://github.com/biocore/biom-format/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "08cr7wpahk6zb31h4bs7jmzpvxcqv9s13xz40h6y2h656jvdvnpj")))) - (build-system python-build-system) - (propagated-inputs - `(("python-numpy" ,python-numpy) - ("python-scipy" ,python-scipy) - ("python-future" ,python-future) - ("python-click" ,python-click) - ("python-h5py" ,python-h5py) - ("python-pandas" ,python-pandas))) - (native-inputs - `(("python-nose" ,python-nose))) - (home-page "http://www.biom-format.org") - (synopsis "Biological Observation Matrix (BIOM) format utilities") - (description - "The BIOM file format is designed to be a general-use format for + (name "python-biom-format") + (version "2.1.7") + (source + (origin + (method git-fetch) + ;; Use GitHub as source because PyPI distribution does not contain + ;; test data: https://github.com/biocore/biom-format/issues/693 + (uri (git-reference + (url "https://github.com/biocore/biom-format.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1rna16lyk5aqhnv0dp77wwaplias93f1vw28ad3jmyw6hwkai05v")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'use-cython + (lambda _ (setenv "USE_CYTHON" "1") #t)) + (add-after 'unpack 'disable-broken-test + (lambda _ + (substitute* "biom/tests/test_cli/test_validate_table.py" + (("^(.+)def test_invalid_hdf5" m indent) + (string-append indent + "@npt.dec.skipif(True, msg='Guix')\n" + m))) + #t)) + (add-before 'reset-gzip-timestamps 'make-files-writable + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (for-each (lambda (file) (chmod file #o644)) + (find-files out "\\.gz")) + #t)))))) + (propagated-inputs + `(("python-numpy" ,python-numpy) + ("python-scipy" ,python-scipy) + ("python-flake8" ,python-flake8) + ("python-future" ,python-future) + ("python-click" ,python-click) + ("python-h5py" ,python-h5py) + ("python-pandas" ,python-pandas))) + (native-inputs + `(("python-cython" ,python-cython) + ("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-nose" ,python-nose))) + (home-page "http://www.biom-format.org") + (synopsis "Biological Observation Matrix (BIOM) format utilities") + (description + "The BIOM file format is designed to be a general-use format for representing counts of observations e.g. operational taxonomic units, KEGG orthology groups or lipid types, in one or more biological samples e.g. microbiome samples, genomes, metagenomes.") - (license license:bsd-3) - (properties `((python2-variant . ,(delay python2-biom-format)))))) + (license license:bsd-3) + (properties `((python2-variant . ,(delay python2-biom-format)))))) (define-public python2-biom-format (let ((base (package-with-python2 (strip-python2-variant python-biom-format)))) @@ -2741,16 +2768,14 @@ genes in incomplete assemblies or complete genomes.") (version "2.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/ctSkennerton/fxtract/archive/" - version ".tar.gz")) - (file-name (string-append "ctstennerton-util-" - (string-take util-commit 7) - "-checkout")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ctSkennerton/fxtract.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0275cfdhis8517hm01is62062swmi06fxzifq7mr3knbbxjlaiwj")))) + "0hab3gpwf4w9s87qlbswq6ws1qqybh4dcqk79q1ahyldzai5fgp5")))) (build-system gnu-build-system) (arguments `(#:make-flags (list @@ -2804,19 +2829,22 @@ comment or quality sections.") (define-public gemma (package (name "gemma") - (version "0.96") + (version "0.98") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/xiangzhou/GEMMA/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/xiangzhou/GEMMA.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "055ynn16gd12pf78n4vr2a9jlwsbwzajpdnf2y2yilg1krfff222")) - (patches (search-patches "gemma-intel-compat.patch")))) + "1s3ncnbn45r2hh1cvrqky1kbqq6546biypr4f5mkw1kqlrgyh0yg")))) (inputs - `(("gsl" ,gsl) + `(("eigen" ,eigen) + ("gfortran" ,gfortran "lib") + ("gsl" ,gsl) ("lapack" ,lapack) + ("openblas" ,openblas) ("zlib" ,zlib))) (build-system gnu-build-system) (arguments @@ -2831,6 +2859,15 @@ comment or quality sections.") #:phases (modify-phases %standard-phases (delete 'configure) + (add-after 'unpack 'find-eigen + (lambda* (#:key inputs #:allow-other-keys) + ;; Ensure that Eigen headers can be found + (setenv "CPLUS_INCLUDE_PATH" + (string-append (getenv "CPLUS_INCLUDE_PATH") + ":" + (assoc-ref inputs "eigen") + "/include/eigen3")) + #t)) (add-before 'build 'bin-mkdir (lambda _ (mkdir-p "bin") @@ -2854,16 +2891,16 @@ association studies (GWAS).") (define-public grit (package (name "grit") - (version "2.0.2") + (version "2.0.5") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/nboley/grit/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/nboley/grit.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "157in84dj70wimbind3x7sy1whs3h57qfgcnj2s6lrd38fbrb7mj")))) + "1l5v8vfvfbrpmgnrvbrbv40d0arhxcnmxgv2f1mlcqfa3q6bkqm9")))) (build-system python-build-system) (arguments `(#:python ,python-2 @@ -2875,13 +2912,7 @@ association studies (GWAS).") (delete-file "grit/sparsify_support_fns.c") (delete-file "grit/call_peaks_support_fns.c") (substitute* "setup.py" - (("Cython.Setup") "Cython.Build") - ;; Add numpy include path to fix compilation - (("pyx\", \\]") - (string-append "pyx\", ], include_dirs = ['" - (assoc-ref inputs "python-numpy") - "/lib/python2.7/site-packages/numpy/core/include/" - "']"))) + (("Cython.Setup") "Cython.Build")) #t))))) (inputs `(("python-scipy" ,python2-scipy) @@ -2975,16 +3006,11 @@ particular, reads spanning multiple exons.") (source (origin (method url-fetch) - ;; FIXME: a better source URL is - ;; (string-append "ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2" - ;; "/downloads/hisat2-" version "-source.zip") - ;; with hash "0lywnr8kijwsc2aw10dwxic0n0yvip6fl3rjlvc8zzwahamy4x7g" - ;; but it is currently unavailable. - (uri "https://github.com/infphilo/hisat2/archive/cba6e8cb.tar.gz") - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append "ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2" + "/downloads/hisat2-" version "-source.zip")) (sha256 (base32 - "1mf2hdsyv7cd97xm9mp9a4qws02yrj95y6w6f6cdwnq0klp81r50")))) + "0lywnr8kijwsc2aw10dwxic0n0yvip6fl3rjlvc8zzwahamy4x7g")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target @@ -3091,14 +3117,14 @@ from high-throughput sequencing assays.") (name "java-htsjdk") (version "2.3.0") ; last version without build dependency on gradle (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/samtools/htsjdk/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/samtools/htsjdk.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1ibhzzxsfc38nqyk9r8zqj6blfc1kh26iirypd4q6n90hs2m6nyq")) + "1b178ixcabanm834ydjl3jiakpyxdmki32hqfv2abrzn3rcwa28i")) (modules '((guix build utils))) (snippet ;; Delete pre-built binaries @@ -3655,14 +3681,14 @@ data. It also provides the @command{bgzip}, @command{htsfile}, and (name "idr") (version "2.0.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/nboley/idr/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/nboley/idr.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1rjdly6daslw66r43g9md8znizlscn1sphycqyldzsidkc4vxqv3")) + "04j876h6z444v2q79drxx283d3k5snd72kj895wbalnl42206x9g")) ;; Delete generated C code. (snippet '(begin (delete-file "idr/inv_cdf.c") #t)))) @@ -3800,16 +3826,16 @@ data.") (define-public kaiju (package (name "kaiju") - (version "1.6.2") + (version "1.6.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/bioinformatics-centre/kaiju/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/bioinformatics-centre/kaiju") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1kdn4rxs0kr9ibmrgrfcci71aa6j6gr71dbc8pff7731rpab6kj7")))) + "119pzi0ddzv9mjg4wwa6han0cwr3k3ssn7kirvsjfcq05mi5ka0x")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; There are no tests. @@ -3823,8 +3849,7 @@ data.") (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) (mkdir-p bin) (chdir "..") - (copy-recursively "bin" bin) - (copy-recursively "util" bin)) + (copy-recursively "bin" bin)) #t))))) (inputs `(("perl" ,perl) @@ -4679,14 +4704,14 @@ different command-line tools: (name "prodigal") (version "2.6.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/hyattpd/Prodigal/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/hyattpd/Prodigal.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "17srxkqd3jc77xk15pfbgg1a9xahqg7337w95mrsia7mpza4l2c9")))) + "1fs1hqk83qjbjhrvhw6ni75zakx5ki1ayy3v6wwkn3xvahc9hi5s")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;no check target @@ -6322,14 +6347,14 @@ data types as well.") (define-public r-annotate (package (name "r-annotate") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "annotate" version)) (sha256 (base32 - "1qmncyvy147a1ll3iri45p822kcs3s7583jfnq9jf6sz9ilk8cjf")))) + "0p6c96lay23a67dyirgnwzm2yw22m592z780vy6p4nqwla8ha18n")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -6349,13 +6374,13 @@ microarrays.") (define-public r-copynumber (package (name "r-copynumber") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "copynumber" version)) (sha256 (base32 - "0y9nnwb0psphp3ix88wj2f8z5gr45r5znf55w892ysm27isdpmms")))) + "0ipwj9i5p1bwhg5d80jdjagm02krpj2v0j47qdgw41h8wncdyal3")))) (build-system r-build-system) (propagated-inputs `(("r-s4vectors" ,r-s4vectors) @@ -6372,14 +6397,14 @@ penalized least squares regression method.") (define-public r-geneplotter (package (name "r-geneplotter") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "geneplotter" version)) (sha256 (base32 - "055g28xgiazl4l0gkg8xiamks64f5yckjjyvw1abd6d6qjavwx0g")))) + "10khr0pznxf3m0f5gzck9ymljrwcv3vamfmpskd51yjh36lhllqz")))) (build-system r-build-system) (propagated-inputs `(("r-annotate" ,r-annotate) @@ -6397,14 +6422,14 @@ penalized least squares regression method.") (define-public r-genefilter (package (name "r-genefilter") - (version "1.62.0") + (version "1.64.0") (source (origin (method url-fetch) (uri (bioconductor-uri "genefilter" version)) (sha256 (base32 - "14l0ff02spmjwxj0m1czhg5vlkgwcfi73cym8m2n9vn6i7bjdaqi")))) + "0p64s1n1627yafnp25wjr4b22p34lqw574fx2qg4s1m0lffh1z6i")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -6424,14 +6449,14 @@ high-throughput sequencing experiments.") (define-public r-deseq2 (package (name "r-deseq2") - (version "1.20.0") + (version "1.22.1") (source (origin (method url-fetch) (uri (bioconductor-uri "DESeq2" version)) (sha256 (base32 - "1wjnfpb41a9mmf9a22bz4zh7r1d4id50vpdc1mn5vfzrz7li9qik")))) + "1b2bmvcsfzvks47d7w46zplcwz0kgcdhx5xmx3x9lp2gvx2p84r5")))) (properties `((upstream-name . "DESeq2"))) (build-system r-build-system) (propagated-inputs @@ -6461,14 +6486,14 @@ distribution.") (define-public r-dexseq (package (name "r-dexseq") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DEXSeq" version)) (sha256 (base32 - "1mqb3mdxcsi3largsl7k27bvqrgps9ixv806xvmf29pw0xn05sg1")))) + "0jh1640cnzpk8x3155cqc8dvrs1rciw3d6nv2k70baw96bhrynp8")))) (properties `((upstream-name . "DEXSeq"))) (build-system r-build-system) (propagated-inputs @@ -6504,14 +6529,14 @@ exploration of the results.") (define-public r-annotationforge (package (name "r-annotationforge") - (version "1.22.2") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationForge" version)) (sha256 (base32 - "17kmy7nvpyyj6w5jyrjciw87rydmmmc8q6cnwqjv1j7li9bp09gr")))) + "13yvhf3yskmvhs8szs6rkw93h81h5xqa3h19h91pp6nprhc8s3ll")))) (properties `((upstream-name . "AnnotationForge"))) (build-system r-build-system) @@ -6534,14 +6559,14 @@ databases. Packages produced are intended to be used with AnnotationDbi.") (define-public r-rbgl (package (name "r-rbgl") - (version "1.56.0") + (version "1.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RBGL" version)) (sha256 (base32 - "0hj972mmqpyi5fx1rq33kysavdyz4nspi6gcffzi3rv339m0anhf")))) + "0jy95m38c4qp0a12097hhm2gg63k96k6ydhb11dy379h3ziapcar")))) (properties `((upstream-name . "RBGL"))) (build-system r-build-system) (propagated-inputs `(("r-graph" ,r-graph))) @@ -6555,14 +6580,14 @@ the graph algorithms contained in the Boost library.") (define-public r-gseabase (package (name "r-gseabase") - (version "1.42.0") + (version "1.44.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GSEABase" version)) (sha256 (base32 - "11bv92svik399q677jv96b71i4bq68xxyxn1yijpdik2lq4hgl7a")))) + "110al7x0ig8plzrprvhwc7xshi1jzpj2n8llhhg2fh6v6k0k6awr")))) (properties `((upstream-name . "GSEABase"))) (build-system r-build-system) (propagated-inputs @@ -6582,14 +6607,14 @@ Enrichment Analysis} (GSEA).") (define-public r-category (package (name "r-category") - (version "2.46.0") + (version "2.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Category" version)) (sha256 (base32 - "03wfqa8d1dgwsm327zl2mpkq7dq3mzhq12598qz3ylfhrwplbgx0")))) + "1jdm83bwdfhpfm1y6hwgvxzj6l83h1bdkqv23799kzywnwm016kv")))) (properties `((upstream-name . "Category"))) (build-system r-build-system) (propagated-inputs @@ -6613,14 +6638,14 @@ analysis.") (define-public r-gostats (package (name "r-gostats") - (version "2.46.0") + (version "2.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GOstats" version)) (sha256 (base32 - "1i5mydz5d95w2k28qr9j01hmbnl2id55jq94jvcpcyp1pvinkdq0")))) + "0wlqqgfynwqnqhckhsfjwg9zkj6hkmzwd5y76dhqz720vy21rcln")))) (properties `((upstream-name . "GOstats"))) (build-system r-build-system) (propagated-inputs @@ -6644,14 +6669,14 @@ testing and other simple calculations.") (define-public r-shortread (package (name "r-shortread") - (version "1.38.0") + (version "1.40.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ShortRead" version)) (sha256 (base32 - "038z3z7qaw5bpgjzy91sjkybsny6jwjjsrnnq4gdqdw9ss1qy1fb")))) + "0iks123i1adkb9i2q4wvfqdmmj9dy867jvngj9757y8gj6xbcpy1")))) (properties `((upstream-name . "ShortRead"))) (build-system r-build-system) (inputs @@ -6686,14 +6711,14 @@ ungapped alignment formats.") (define-public r-systempiper (package (name "r-systempiper") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "systemPipeR" version)) (sha256 (base32 - "1550pd63mmky0vgkmpni7zf14kqz1741wv63nfaw29kcmhh3m5lm")))) + "0l26q8zjdmzg84g7f25gv9z60sykybahlpg5bg9bmpbg5lzcsx04")))) (properties `((upstream-name . "systemPipeR"))) (build-system r-build-system) (propagated-inputs @@ -6732,14 +6757,14 @@ annotation infrastructure.") (define-public r-grohmm (package (name "r-grohmm") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "groHMM" version)) (sha256 (base32 - "1kjb14apyly44qdlx2ld6gr69wlazd4mbhs58l35hir12aphgrzp")))) + "1ph92fv44b90v7mk4b1mjvv0dlrhl8ba01klxbnd0vs4qn9zxplh")))) (properties `((upstream-name . "groHMM"))) (build-system r-build-system) (propagated-inputs @@ -7051,13 +7076,13 @@ barplots or heatmaps.") (define-public r-biocgenerics (package (name "r-biocgenerics") - (version "0.26.0") + (version "0.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocGenerics" version)) (sha256 (base32 - "19qxhy2cd3pykkhzbb5q3crgaxf65cpzf2mkfsz16gqhi8flj72p")))) + "0cvpsrhg7sn7lpqgxvqrsagv6j7xj5rafq5xdjfd8zc4gxrs5rb8")))) (properties `((upstream-name . "BiocGenerics"))) (build-system r-build-system) @@ -7071,13 +7096,13 @@ packages.") (define-public r-biocinstaller (package (name "r-biocinstaller") - (version "1.30.0") + (version "1.32.1") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocInstaller" version)) (sha256 (base32 - "1xg1gi1hf5vflp71ji21gnmr4kcjpx8a6c47cllpc7yqnjv5nfg0")))) + "1s1f9qhyf3mc73ir25x2zlgi9hf45a37lg4z8fbva4i21hqisgsl")))) (properties `((upstream-name . "BiocInstaller"))) (build-system r-build-system) @@ -7090,13 +7115,13 @@ Bioconductor, CRAN, and Github.") (define-public r-biocviews (package (name "r-biocviews") - (version "1.48.3") + (version "1.50.1") (source (origin (method url-fetch) (uri (bioconductor-uri "biocViews" version)) (sha256 (base32 - "1rxvwikqivsgxjjcazlszy8xgz346lfh5rw4llxw6fz38fjgb0k5")))) + "0hjm3r58i0r9qhyar9pk250cx7sfijg0lnvi12a9s6brmmbip1a3")))) (properties `((upstream-name . "biocViews"))) (build-system r-build-system) @@ -7140,19 +7165,20 @@ authoring books and technical documents with R Markdown.") (define-public r-biocstyle (package - (name "r-biocstyle") - (version "2.8.2") + (name "r-biocstyle") + (version "2.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocStyle" version)) (sha256 (base32 - "17m901ylz00w1a3nq5f910v55zixm1nr6rb3qrsbhqd94qzr0l2p")))) + "01lm8xljilj666fcl3wnw82dxkcxnlr294lddr553rm8xr5nwg31")))) (properties `((upstream-name . "BiocStyle"))) (build-system r-build-system) (propagated-inputs - `(("r-bookdown" ,r-bookdown) + `(("r-biocmanager" ,r-biocmanager) + ("r-bookdown" ,r-bookdown) ("r-knitr" ,r-knitr) ("r-rmarkdown" ,r-rmarkdown) ("r-yaml" ,r-yaml))) @@ -7166,13 +7192,13 @@ functionality.") (define-public r-bioccheck (package (name "r-bioccheck") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocCheck" version)) (sha256 (base32 - "1srp1g809f1nn0fyqknr7r6dq89bw1xpjvmygr7cw6ffknbc671s")))) + "0zamvs5jar38293ff27imvwy0ra25y64ls9z8w3q1y4jcp8p8pg7")))) (properties `((upstream-name . "BiocCheck"))) (build-system r-build-system) @@ -7199,8 +7225,9 @@ functionality.") `(("r-codetools" ,r-codetools) ("r-graph" ,r-graph) ("r-httr" ,r-httr) + ("r-knitr" ,r-knitr) ("r-optparse" ,r-optparse) - ("r-biocinstaller" ,r-biocinstaller) + ("r-biocmanager" ,r-biocmanager) ("r-biocviews" ,r-biocviews) ("r-stringdist" ,r-stringdist))) (home-page "https://bioconductor.org/packages/BiocCheck") @@ -7235,13 +7262,13 @@ that accept short and long options.") (define-public r-dnacopy (package (name "r-dnacopy") - (version "1.54.0") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DNAcopy" version)) (sha256 (base32 - "03hfhmmc5y60r2gcgm367w2fr7qj115l74m9bp3h9qpn5yci0d8n")))) + "04cqdqxhva66xwh1s2vffi56b9fcrqd4slcrvqasj5lp2rkjli82")))) (properties `((upstream-name . "DNAcopy"))) (build-system r-build-system) @@ -7257,13 +7284,13 @@ abnormal copy number.") (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.18.3") + (version "0.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "02bps2rpjqx2npwxq3x62ncwi9ggr165cwi56h6hld28bw2gddy8")))) + "0qgiykjhnsvvpcp3zwmrnpx3bv3msvj0szchyvb1yb0fxw716xc5")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) @@ -7309,13 +7336,13 @@ utilities for sequence data management under the ACNUC system.") (define-public r-iranges (package (name "r-iranges") - (version "2.14.12") + (version "2.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "IRanges" version)) (sha256 (base32 - "1ar8sqqgjdy00dbgrxnacqy6gwir5xax76yf0vjxi2vj2skqb0kn")))) + "0ljppsk611xi72gc8mbdx1311b63b1ijd401jz5xmxk5frla1nc1")))) (properties `((upstream-name . "IRanges"))) (build-system r-build-system) @@ -7361,13 +7388,13 @@ ID and species. It is used by functions in the GenomeInfoDb package.") (define-public r-genomeinfodb (package (name "r-genomeinfodb") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomeInfoDb" version)) (sha256 (base32 - "0yhnqhaydmmq7ihmhj3rbal4afq5p993l2qqrd0n5wmbyg7glg2d")))) + "1xqpgngd8by0yn627v9kz26a03v5a1lhcfwlnx2i0ivplk9bd40s")))) (properties `((upstream-name . "GenomeInfoDb"))) (build-system r-build-system) @@ -7389,13 +7416,13 @@ names in their natural, rather than lexicographic, order.") (define-public r-edger (package (name "r-edger") - (version "3.22.5") + (version "3.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "edgeR" version)) (sha256 (base32 - "0pkcdkh8mwdaca6xa8a7vwdfh46r03rkxwkrf17pwwd4557j7lj7")))) + "0ihihgzrgb4q3xc8xkzp1v76ndgihrj4gas00fa25vggfs1v6hvg")))) (properties `((upstream-name . "edgeR"))) (build-system r-build-system) (propagated-inputs @@ -7417,13 +7444,13 @@ CAGE.") (define-public r-variantannotation (package (name "r-variantannotation") - (version "1.26.1") + (version "1.28.1") (source (origin (method url-fetch) (uri (bioconductor-uri "VariantAnnotation" version)) (sha256 (base32 - "1r55ki951dj81qvy73knfcy69ik5vzkd56wnk3f6vvf9vngqb8jr")))) + "0gvah258mkaafhbna81zwknx8qr3lidbcx5qvwk39q3yswr9mi49")))) (properties `((upstream-name . "VariantAnnotation"))) (inputs @@ -7455,13 +7482,13 @@ coding changes and predict coding outcomes.") (define-public r-limma (package (name "r-limma") - (version "3.36.5") + (version "3.38.2") (source (origin (method url-fetch) (uri (bioconductor-uri "limma" version)) (sha256 (base32 - "0d13w95si7l6fqfsdf6k50v4l573hhfva6mvd94v26iba24p2f6x")))) + "1wkh362rmn24q7bkinb6nx62a31wl3r3myg5l326gx65wpwdnx97")))) (build-system r-build-system) (home-page "http://bioinf.wehi.edu.au/limma") (synopsis "Package for linear models for microarray and RNA-seq data") @@ -7474,13 +7501,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-xvector (package (name "r-xvector") - (version "0.20.0") + (version "0.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "XVector" version)) (sha256 (base32 - "1zjlhh9lsyhg0js1858csyw2389kbrzdqnqnha833wazkwxilp3f")))) + "01fph1ydd6g0rl5mcw54spx22glq2kqv7wyw8bqw0plmabzcwwdm")))) (properties `((upstream-name . "XVector"))) (build-system r-build-system) @@ -7510,13 +7537,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-genomicranges (package (name "r-genomicranges") - (version "1.32.7") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicRanges" version)) (sha256 (base32 - "1lh54asabrmk982636avpp1kcfzakwxi31cbj3jc8mkhar1mkyrx")))) + "0bgh14d15dpf2iy36qinw45r6n45rqkf0ghazrdl3jfva6vbrb29")))) (properties `((upstream-name . "GenomicRanges"))) (build-system r-build-system) @@ -7539,13 +7566,13 @@ manipulating genomic intervals and variables defined along a genome.") (define-public r-biobase (package (name "r-biobase") - (version "2.40.0") + (version "2.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Biobase" version)) (sha256 (base32 - "1iwds2a5ir29k19dbpynlc7nn836cw2gamchhgpi2jf2xar9m9jz")))) + "10nr6nrkj5vlq8hsgbhbhv669z0dbpz4m3vz9k32rx1czbrrqwin")))) (properties `((upstream-name . "Biobase"))) (build-system r-build-system) @@ -7561,13 +7588,13 @@ on Bioconductor or which replace R functions.") (define-public r-annotationdbi (package (name "r-annotationdbi") - (version "1.42.1") + (version "1.44.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationDbi" version)) (sha256 (base32 - "0afkbzli08vq02r2pr9phrz3rxd6ilp1w7yw8y99nbjiz14f8b1c")))) + "1954vimkx5yb9irppq8vssq0f3yjkg36w38b9r0rqmijx1ps7x5d")))) (properties `((upstream-name . "AnnotationDbi"))) (build-system r-build-system) @@ -7588,13 +7615,13 @@ annotation data packages using SQLite data storage.") (define-public r-biomart (package (name "r-biomart") - (version "2.36.1") + (version "2.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biomaRt" version)) (sha256 (base32 - "0b70s350ffc74v3xz5c3jpazr9zxdb7gjmjfj7aghlsrizrspill")))) + "1lshkknp7dmr3p6dd2zbv86cc71h53ggh9ji83jcjym8sgbbspl2")))) (properties `((upstream-name . "biomaRt"))) (build-system r-build-system) @@ -7621,13 +7648,13 @@ powerful online queries from gene annotation to database mining.") (define-public r-biocparallel (package (name "r-biocparallel") - (version "1.14.2") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocParallel" version)) (sha256 (base32 - "1llb5a62hn4yxpdgqdh2l7i5zd06mjkk8hagsna69cq65wv6iifm")))) + "0g16cy0vjapqkb188z63r1b6y96m9g8vx0a3v2qavzxc177k0cja")))) (properties `((upstream-name . "BiocParallel"))) (build-system r-build-system) @@ -7646,13 +7673,13 @@ objects.") (define-public r-biostrings (package (name "r-biostrings") - (version "2.48.0") + (version "2.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Biostrings" version)) (sha256 (base32 - "118b490jk87ydigm6ln25ms4kskzkw0akmh77clzznhzpqnxsi6j")))) + "0zw0dj67fnpbz4iqnam5fxs92c1c8w8d7mzl0rkq4ksx0xl8vgg7")))) (properties `((upstream-name . "Biostrings"))) (build-system r-build-system) @@ -7672,13 +7699,13 @@ biological sequences or sets of sequences.") (define-public r-rsamtools (package (name "r-rsamtools") - (version "1.32.3") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rsamtools" version)) (sha256 (base32 - "1hpjr22h33pf4fgv0sj83rqzv6l5l7s6fpmmqvchh45ikks1mnhq")))) + "01v4bjhj2i126pwyk0v9lvmfp2ih495xsq903k3xa2z24bjxphbi")))) (properties `((upstream-name . "Rsamtools"))) (build-system r-build-system) @@ -7716,13 +7743,13 @@ files.") (define-public r-delayedarray (package (name "r-delayedarray") - (version "0.6.6") + (version "0.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedArray" version)) (sha256 (base32 - "0rkp0mfsq3wfnib389dh3i44ab0wiz8skkjcv4596dwgq50jqpf2")))) + "0cl5anqkjwvqx19snjhz0zj8cp8ibckiifl28h821h50g62nvb2f")))) (properties `((upstream-name . "DelayedArray"))) (build-system r-build-system) @@ -7747,13 +7774,13 @@ array-like objects like @code{DataFrame} objects (typically with Rle columns), (define-public r-summarizedexperiment (package (name "r-summarizedexperiment") - (version "1.10.1") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "SummarizedExperiment" version)) (sha256 (base32 - "0v3zxl9cqsv79ag5cnvzlhvgaz5cr8f4rn7flmwnwpqd508cznl1")))) + "07805572xhpj5mfwq6kw1ha21wgalqvhh4ydvafyl1bnf3r20vps")))) (properties `((upstream-name . "SummarizedExperiment"))) (build-system r-build-system) @@ -7778,13 +7805,13 @@ samples.") (define-public r-genomicalignments (package (name "r-genomicalignments") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicAlignments" version)) (sha256 (base32 - "00pi2cnkkbj2023fg2x2cmglkdalwzy1vr3glsikwz7ix9yylcaw")))) + "0a3zhwripfw2508fvgx3wzqa8nq8vnslg97a911znpwvxh53jl24")))) (properties `((upstream-name . "GenomicAlignments"))) (build-system r-build-system) @@ -7811,13 +7838,13 @@ alignments.") (define-public r-rtracklayer (package (name "r-rtracklayer") - (version "1.40.6") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rtracklayer" version)) (sha256 (base32 - "1wxxxlyps19dw3i0pw4mlm3kinnswsc35rgvlnbwvpnpjbca6w4l")))) + "0a4mhd926w9slkfil5xgngjsfdj024a4w57w2bm3d4r0pj8y5da7")))) (build-system r-build-system) (arguments `(#:phases @@ -7858,13 +7885,13 @@ as well as query and modify the browser state, such as the current viewport.") (define-public r-genomicfeatures (package (name "r-genomicfeatures") - (version "1.32.3") + (version "1.34.1") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFeatures" version)) (sha256 (base32 - "06prj5iih3ywsgq00lgfl29p3f8j23a0kqqhzhqcgjrrwsp94588")))) + "0slq6hv5bmc3bgrl824jzmr6db3fvaj6b7ihwmdn76pgqqbq2fq6")))) (properties `((upstream-name . "GenomicFeatures"))) (build-system r-build-system) @@ -7923,13 +7950,13 @@ information about the latest version of the Gene Ontologies.") (define-public r-topgo (package (name "r-topgo") - (version "2.32.0") + (version "2.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "topGO" version)) (sha256 (base32 - "05yxnkid8bgw9lkm90if9fg63djhgvbailfa3qsfqa5c0zjmixw1")))) + "1j1jcd16j564kr6qz28140fzmnh9xasi84v1c1fi98sqv30zq9bh")))) (properties `((upstream-name . "topGO"))) (build-system r-build-system) @@ -7956,13 +7983,13 @@ dependencies between GO terms can be implemented and applied.") (define-public r-bsgenome (package (name "r-bsgenome") - (version "1.48.0") + (version "1.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BSgenome" version)) (sha256 (base32 - "1rk2piqq5dppkd51ln3r872d7ng3rvq98071mnd0xdv2xwnyn5g8")))) + "07z4zxx0khrc86qqvc7vxww8df9fh6pyks9ajxkc9gdqr5nn79j7")))) (properties `((upstream-name . "BSgenome"))) (build-system r-build-system) @@ -8017,13 +8044,13 @@ genome data packages and support for efficient SNP representation.") (define-public r-impute (package (name "r-impute") - (version "1.54.0") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "impute" version)) (sha256 (base32 - "1d3cpfaqlq2gnb3hsc2yhxwkrnbd7m6ifif32yp0ya0jr5brl4hr")))) + "08z0pj1dz5iq967nwj67qyka7ir7m5an2ggv7bsrlz3apzfsla33")))) (inputs `(("gfortran" ,gfortran))) (build-system r-build-system) @@ -8037,13 +8064,13 @@ microarray data, using nearest neighbor averaging.") (define-public r-seqpattern (package (name "r-seqpattern") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "seqPattern" version)) (sha256 (base32 - "0dw0yldfcf0ibvpqxlpx1ijnjf9lma47w9w22siszzhw09i0wp3w")))) + "0di83qi83mrlw7i12khsq55d03hlazcywaa9m9pki1sfhafpq733")))) (properties `((upstream-name . "seqPattern"))) (build-system r-build-system) @@ -8064,13 +8091,13 @@ reference point and sorted by a user defined feature.") (define-public r-genomation (package (name "r-genomation") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "genomation" version)) (sha256 (base32 - "1vdmdyrq0n7pf8cvy2950v7hrcrcbd9zl4fg7dcmyly3iiwdyirp")))) + "0g0v4alfpqlinqinjnyzl3mrjnpbdx9ri34mcaiqbvbvg8ic8wvg")))) (build-system r-build-system) (propagated-inputs `(("r-biostrings" ,r-biostrings) @@ -8242,14 +8269,14 @@ annotations for the genome of the model mouse Mus musculus.") (define-public r-seqlogo (package (name "r-seqlogo") - (version "1.46.0") + (version "1.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "seqLogo" version)) (sha256 (base32 - "16xvqcdknix9vjm8mrixi6nyfsr45jm844jh1x90m8044lwrsic1")))) + "022vr9ydwcivs7rw7kwj73gfk5gc7ckwa1q66vhd4kw9ylh70v68")))) (properties `((upstream-name . "seqLogo"))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/seqLogo") @@ -8488,14 +8515,14 @@ Biostrings objects.") (define-public r-motifrg (package (name "r-motifrg") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "motifRG" version)) (sha256 (base32 - "0mxhyidkyd2zqahdbg69y20r550z78lvr1r3pbjymnwfg4hcfq1p")))) + "1wxww6i0jgyapqclcwy0zzf9kqjvrvylr89z7yhg1izi7jnw2fka")))) (properties `((upstream-name . "motifRG"))) (build-system r-build-system) (propagated-inputs @@ -8540,13 +8567,13 @@ two-dimensional genome scans.") (define-public r-zlibbioc (package (name "r-zlibbioc") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "zlibbioc" version)) (sha256 (base32 - "1rwr0mci8a712q0isavi4jmhm94gwivc4nr8j7r4kw05flp4g7gz")))) + "0bjvzy24kab7ank02cc1qk2ikcz4dllgf66wpsdl0d3zp4gn3l2h")))) (properties `((upstream-name . "zlibbioc"))) (build-system r-build-system) @@ -8582,14 +8609,14 @@ secondary structure and comparative analysis in R.") (define-public r-rhtslib (package (name "r-rhtslib") - (version "1.12.1") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhtslib" version)) (sha256 (base32 - "16ywnb8cmr2xabd1i21b92rfziw7xfbv25yv16ipw617p41wa39z")))) + "1h4q54f8za3aaxgy186zf2165sar5c3cgxkk44lq5hzx5pxkl5wn")))) (properties `((upstream-name . "Rhtslib"))) (build-system r-build-system) (propagated-inputs @@ -8609,14 +8636,14 @@ of other R packages who wish to make use of HTSlib.") (define-public r-bamsignals (package (name "r-bamsignals") - (version "1.12.1") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bamsignals" version)) (sha256 (base32 - "141q3p4lzwiqk1mfxi8q1q84axjl0gyiqg59xd3sp4viny4jqmgv")))) + "19irfx1y1izf903vq59wxsdbf88g143zy9l89gxqawh7jfxds8w8")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -8639,41 +8666,33 @@ paired-end data.") (define-public r-rcas (package (name "r-rcas") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RCAS" version)) (sha256 (base32 - "0vmn7a0rm2ban0kaxrf5danhss2r4hfhnwh5889fjcgqy300fdd5")))) + "0ss5hcg2m7gjji6dd23zxa5bd5a7knwcnada4qs5q2l4clgk39ad")))) (build-system r-build-system) - (native-inputs - `(("r-testthat" ,r-testthat) - ;; During vignette building knitr checks that "pandoc-citeproc" - ;; is in the PATH. - ("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc))) (propagated-inputs - `(("r-biocgenerics" ,r-biocgenerics) + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biocgenerics" ,r-biocgenerics) ("r-biomart" ,r-biomart) ("r-biostrings" ,r-biostrings) ("r-bsgenome-hsapiens-ucsc-hg19" ,r-bsgenome-hsapiens-ucsc-hg19) - ("r-bsgenome-mmusculus-ucsc-mm9" ,r-bsgenome-mmusculus-ucsc-mm9) - ("r-bsgenome-celegans-ucsc-ce10" ,r-bsgenome-celegans-ucsc-ce10) - ("r-bsgenome-dmelanogaster-ucsc-dm3" ,r-bsgenome-dmelanogaster-ucsc-dm3) ("r-cowplot" ,r-cowplot) ("r-data-table" ,r-data-table) ("r-dbi" ,r-dbi) ("r-dt" ,r-dt) ("r-genomation" ,r-genomation) + ("r-genomeinfodb" ,r-genomeinfodb) ("r-genomicfeatures" ,r-genomicfeatures) + ("r-genomicranges" ,r-genomicranges) ("r-ggplot2" ,r-ggplot2) ("r-ggseqlogo" ,r-ggseqlogo) ("r-knitr" ,r-knitr) ("r-motifrg" ,r-motifrg) ("r-org-hs-eg-db" ,r-org-hs-eg-db) - ("r-org-ce-eg-db" ,r-org-ce-eg-db) - ("r-org-dm-eg-db" ,r-org-dm-eg-db) - ("r-org-mm-eg-db" ,r-org-mm-eg-db) ("r-pbapply" ,r-pbapply) ("r-pheatmap" ,r-pheatmap) ("r-plotly" ,r-plotly) @@ -8739,14 +8758,14 @@ library implementing most of the pipeline's features.") (define-public r-mutationalpatterns (package (name "r-mutationalpatterns") - (version "1.6.1") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MutationalPatterns" version)) (sha256 (base32 - "1yq7351j42mjxn8fd3c5bdxzb2l5s4lvqhjdvv4rwj4f600n6wj9")))) + "0w9lg1zs106h6rqvy8mhikq6q6q9syw6c1prcxr38ssh85rcih12")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -8915,13 +8934,13 @@ kernels, including: gkmSVM, kmer-SVM, mismatch kernel and wildcard kernel.") (define-public r-tximport (package (name "r-tximport") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "tximport" version)) (sha256 (base32 - "1qjc7ah9dzccpvcjrp9k4qnaz13x6kvy1c1xpdj503km6k528lip")))) + "0za2js8hqjgz8ria09cglynffj4w9vrzg85nmn1xgpvmc1xk813h")))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/tximport") (synopsis "Import and summarize transcript-level estimates for gene-level analysis") @@ -8937,13 +8956,13 @@ of gene-level counts.") (define-public r-rhdf5 (package (name "r-rhdf5") - (version "2.24.0") + (version "2.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rhdf5" version)) (sha256 (base32 - "15cmmchhk8bnp94gxg0zk9qyzdjx5kv16dzpbnb62mkq7ydmifx6")))) + "0xmpkfdsmgl79ffffj7cf9fx3zxki2rk0xn25k778kr3s0sbmhis")))) (build-system r-build-system) (propagated-inputs `(("r-rhdf5lib" ,r-rhdf5lib))) @@ -8964,13 +8983,13 @@ the available RAM.") (define-public r-annotationfilter (package (name "r-annotationfilter") - (version "1.4.0") + (version "1.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationFilter" version)) (sha256 (base32 - "1w8ypfdz4g7vnwfrvnhjcpm8waciqyq2cn883ajdwg4vv7a5mj9a")))) + "0wrr10cxjzmxx46vjzq2nsf6xlqz1sqwx4xm0sk3d77ff8wmph4x")))) (properties `((upstream-name . "AnnotationFilter"))) (build-system r-build-system) @@ -9267,14 +9286,14 @@ common bioinformatics tools.") (define-public r-chipseq (package (name "r-chipseq") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "chipseq" version)) (sha256 (base32 - "09f8dgl5ni75qkf7nvvppwr3irpplv4xb3ks59ld7l8i2mplcrx7")))) + "1pp1rm5fs3hlar5x4dl3a3b4gara7qwf81dbvka6r1n78hrf9x1b")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -9319,14 +9338,14 @@ GenomicRanges Bioconductor package.") (define-public r-copywriter (package (name "r-copywriter") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CopywriteR" version)) (sha256 (base32 - "0b7xwq1va2zclb54f07c5ipmmq4iv2hrlph3j93jz5hmyayv50z3")))) + "0aamxafdk98n7s92jyqs65d6ljpnc2463vanvsw80p44qn6l6awn")))) (properties `((upstream-name . "CopywriteR"))) (build-system r-build-system) (propagated-inputs @@ -9359,13 +9378,13 @@ number detection tools.") (define-public r-methylkit (package (name "r-methylkit") - (version "1.6.3") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "methylKit" version)) (sha256 (base32 - "1nla74d2sjs51yyvvxf038a03mhw9appvjzj60vr2vd3p5lhqn9k")))) + "0mz6lil1wax931incnw5byx0v9i8ryhwq9mv0nv8s48ai33ch3x6")))) (properties `((upstream-name . "methylKit"))) (build-system r-build-system) (propagated-inputs @@ -9405,14 +9424,14 @@ TAB-Seq.") (define-public r-sva (package (name "r-sva") - (version "3.28.0") + (version "3.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "sva" version)) (sha256 (base32 - "0a3jqbz0jp1jxrnjkqfpmca840yqcdwxprdl608bzzx2zb4jl52s")))) + "1xf0hlrqjxl0y3x13mrkxghiv39fd9v2g8gq3qzbf1wj7il6bph3")))) (build-system r-build-system) (propagated-inputs `(("r-genefilter" ,r-genefilter) @@ -9515,14 +9534,14 @@ as allowing spectra with different resolutions.") (define-public r-protgenerics (package (name "r-protgenerics") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ProtGenerics" version)) (sha256 (base32 - "05jbadw2aiwy8vi2ia0jxg06cmwhly2cq4dy1ag7kdxf1c5i9ccn")))) + "053mmxhzncqgigl2iqjlq56qzimlw2zzw31wpzw19rf7rld1vi3b")))) (properties `((upstream-name . "ProtGenerics"))) (build-system r-build-system) (home-page "https://github.com/lgatto/ProtGenerics") @@ -9535,14 +9554,14 @@ proteomics packages.") (define-public r-mzr (package (name "r-mzr") - (version "2.14.0") + (version "2.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "mzR" version)) (sha256 (base32 - "190m2bq5bqxhljaj4f7vz9wj5h5laaxd8zp5jampnql6xc4zmarg")) + "0li1y6p95ljiva4lvfmql9sipn4dq42sknbh60b36ycjppnf8lj5")) (modules '((guix build utils))) (snippet '(begin @@ -9564,11 +9583,11 @@ proteomics packages.") #t))))) (inputs `(("boost" ,boost) ; use this instead of the bundled boost sources - ("netcdf" ,netcdf) ("zlib" ,zlib))) (propagated-inputs `(("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) + ("r-ncdf4" ,r-ncdf4) ("r-protgenerics" ,r-protgenerics) ("r-rcpp" ,r-rcpp) ("r-rhdf5lib" ,r-rhdf5lib) @@ -9587,14 +9606,14 @@ previously been used in XCMS.") (define-public r-affyio (package (name "r-affyio") - (version "1.50.0") + (version "1.52.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affyio" version)) (sha256 (base32 - "0sh5wnnchyfpq5n6rchbqmb27byn7kdzn5rgran6i39c81i5z22n")))) + "1s4zp1211vf0krxzch9v3q3r6vs8hihqppq18i2fpvwlknfja7c1")))) (build-system r-build-system) (propagated-inputs `(("r-zlibbioc" ,r-zlibbioc))) @@ -9611,20 +9630,20 @@ CDF file formats.") (define-public r-affy (package (name "r-affy") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affy" version)) (sha256 (base32 - "0sxq875sigm21sf3qncrfrwfdz9nqw1vldxn3d3hj6aq64jg1ki6")))) + "0x8h4fk2igv7vykqfvf6v9whmx3344v5rf3gyfajd431xkjldz6k")))) (build-system r-build-system) (propagated-inputs `(("r-affyio" ,r-affyio) ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-biocinstaller" ,r-biocinstaller) + ("r-biocmanager" ,r-biocmanager) ("r-preprocesscore" ,r-preprocesscore) ("r-zlibbioc" ,r-zlibbioc))) (inputs @@ -9639,14 +9658,14 @@ analysis.") (define-public r-vsn (package (name "r-vsn") - (version "3.48.1") + (version "3.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "vsn" version)) (sha256 (base32 - "0k6mah3g3zqbfap31xmvig4fn452a18xwwa5y0mfj5mj8588p57h")))) + "1g6qkpykw99jm2wv2i61dg2ffwk0n8fm4s5pm2q4c024vw5c9b69")))) (build-system r-build-system) (propagated-inputs `(("r-affy" ,r-affy) @@ -9673,14 +9692,14 @@ and specific in detecting differential transcription.") (define-public r-mzid (package (name "r-mzid") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "mzID" version)) (sha256 (base32 - "060k0xlhg8q802c6zsb4b8ps0ccd9ybyaz0gnsvqkxb786i2vk40")))) + "08jbq223viwknsmsi30hyxyxslvmb0l4wx3vmqlkl6qk4vfmxzjz")))) (properties `((upstream-name . "mzID"))) (build-system r-build-system) (propagated-inputs @@ -9703,14 +9722,14 @@ specific parser.") (define-public r-pcamethods (package (name "r-pcamethods") - (version "1.72.0") + (version "1.74.0") (source (origin (method url-fetch) (uri (bioconductor-uri "pcaMethods" version)) (sha256 (base32 - "0v99yf8m7ryh6z0r3z0ggpqfnflcq5bn1q1i1cl9b7q4p6b4sa07")))) + "0ik82s9bsdj4a1mmv0a3k6yisa92mxx7maf3dvip1r8gqlm3dyng")))) (properties `((upstream-name . "pcaMethods"))) (build-system r-build-system) (propagated-inputs @@ -9733,14 +9752,14 @@ structure (pcaRes) to provide a common interface to the PCA results.") (define-public r-msnbase (package (name "r-msnbase") - (version "2.6.4") + (version "2.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MSnbase" version)) (sha256 (base32 - "1civd8b1rd5n6ys52dazw5m1yy2wq7049dbbyhzv7pjpa1m2x1rm")))) + "0nnlydpklmv9kwlk3gkjgabx7l6y4gav3imq98w8wskb1fhm50c0")))) (properties `((upstream-name . "MSnbase"))) (build-system r-build-system) (propagated-inputs @@ -9776,14 +9795,14 @@ of mass spectrometry based proteomics data.") (define-public r-msnid (package (name "r-msnid") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MSnID" version)) (sha256 (base32 - "172q5chi44104iz4y0g42wrimfp7hlhrfa8vzybx6m0ccrkkhl17")))) + "0hgq4argllhh5hvxqi8vkf1blc3nibsslhx4zsv2mcv4yj75bv4n")))) (properties `((upstream-name . "MSnID"))) (build-system r-build-system) (propagated-inputs @@ -9878,14 +9897,14 @@ discovery of differentially expressed genes and markers.") (define-public r-aroma-light (package (name "r-aroma-light") - (version "3.10.0") + (version "3.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "aroma.light" version)) (sha256 (base32 - "1dxsiwsrwcq9mj573f9vpdzrhagdqzal328ma8076px4gg6khxkn")))) + "0vfifgpqxjjncbiv6gvlk9jmj14j90r9f30bqk3ks9v1csjnjhrb")))) (properties `((upstream-name . "aroma.light"))) (build-system r-build-system) (propagated-inputs @@ -9905,14 +9924,14 @@ classes.") (define-public r-deseq (package (name "r-deseq") - (version "1.32.0") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DESeq" version)) (sha256 (base32 - "0ykxw8ksif026xy25wx50j2sdsrp156aqkmhcgfjkpgcw699glnm")))) + "1klv1xrh3173srywr6dnq6i7m9djn4gc9aflr1p3a6yjlqcq6fya")))) (properties `((upstream-name . "DESeq"))) (build-system r-build-system) (propagated-inputs @@ -9936,14 +9955,14 @@ distribution.") (define-public r-edaseq (package (name "r-edaseq") - (version "2.14.1") + (version "2.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "EDASeq" version)) (sha256 (base32 - "0970w9d5ddqw1qxqqafdidkxh6hmcv9j5djwgnpz3fgl05kmysg8")))) + "1gjqzn1kg9qwyz2gwjyy9xzzr1lnc7xd5zwdyvzkadz97gckzxwf")))) (properties `((upstream-name . "EDASeq"))) (build-system r-build-system) (propagated-inputs @@ -9974,14 +9993,14 @@ global-scaling and full-quantile normalization.") (define-public r-interactivedisplaybase (package (name "r-interactivedisplaybase") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "interactiveDisplayBase" version)) (sha256 (base32 - "05w58z3i9vkma4jd6rhjaxls4yiq4kwrppgcdq9xrr1pxp99k575")))) + "04xz3dkwan2s5ic1mwkdfnggm0l41mgqfagx160bcsrpkw6z7ark")))) (properties `((upstream-name . "interactiveDisplayBase"))) (build-system r-build-system) @@ -9998,20 +10017,20 @@ Shiny-based display methods for Bioconductor objects.") (define-public r-annotationhub (package (name "r-annotationhub") - (version "2.12.1") + (version "2.14.1") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationHub" version)) (sha256 (base32 - "02ls279k1qlch147vw8kwvlhcqyzvi495bgv110m0xnnbpgbln6g")))) + "00288x3na0izpmbcvsqac1br1qwry86vwc2slj1l47crdfb7za6c")))) (properties `((upstream-name . "AnnotationHub"))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) ("r-biocgenerics" ,r-biocgenerics) - ("r-biocinstaller" ,r-biocinstaller) + ("r-biocmanager" ,r-biocmanager) ("r-curl" ,r-curl) ("r-httr" ,r-httr) ("r-interactivedisplaybase" ,r-interactivedisplaybase) @@ -10033,14 +10052,14 @@ by the user, helping with quick and reproducible access.") (define-public r-fastseg (package (name "r-fastseg") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "fastseg" version)) (sha256 (base32 - "1yw6hai6hb8qy7akdm4frfp6h4zy93zb68kdj094sanm7kgqmgik")))) + "1l8mdjpfpgwqdss2ywjkb8b4h55wf8v6kmyxdlvy04ds2hj16sb1")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -10063,14 +10082,14 @@ microarrays or GRanges for sequencing data.") (define-public r-keggrest (package (name "r-keggrest") - (version "1.20.2") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "KEGGREST" version)) (sha256 (base32 - "0whmmbkq8bmc3ll20l4cv6hhxjgzbkrs97japljzg07ncn1fffsa")))) + "0blpd5a7whd2sswfhqd17h58hg06ymaf80gapdr9ja43hnnlj309")))) (properties `((upstream-name . "KEGGREST"))) (build-system r-build-system) (propagated-inputs @@ -10087,14 +10106,14 @@ microarrays or GRanges for sequencing data.") (define-public r-gage (package (name "r-gage") - (version "2.30.0") + (version "2.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gage" version)) (sha256 (base32 - "0j3cqxy97lpf146wkmdfaq9680gicmzxvhp6w5pxq3j7ipiy7262")))) + "07b098wvryxf0zd423nk6h52s3gyngwjcx2vplqybpbpgl8h2931")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10116,14 +10135,14 @@ analysis using other methods.") (define-public r-genomicfiles (package (name "r-genomicfiles") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFiles" version)) (sha256 (base32 - "0bhsq5czigrjyl9gkb2kpkpl367b3ac5g8s280adkcxggn9g7sxq")))) + "0qf2yj4lfnnk64fk125n8sqms01shfqiik04nasx2z3k129ykpxp")))) (properties `((upstream-name . "GenomicFiles"))) (build-system r-build-system) (propagated-inputs @@ -10149,14 +10168,14 @@ provide added flexibility for data combination and manipulation.") (define-public r-complexheatmap (package (name "r-complexheatmap") - (version "1.18.1") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ComplexHeatmap" version)) (sha256 (base32 - "0qjwz1hzpjnc90jiinjkikfnr0shi72q3zfdjjz7pxydy0mglq8n")))) + "0s01dzcfj1lmpqfpsbqw7r4858krfzy499lz4cwx4fq3mbyvy2aj")))) (properties `((upstream-name . "ComplexHeatmap"))) (build-system r-build-system) @@ -10179,14 +10198,14 @@ self-defined annotation graphics.") (define-public r-dirichletmultinomial (package (name "r-dirichletmultinomial") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DirichletMultinomial" version)) (sha256 (base32 - "0vcyp81b90in4ls5nbadc66cw2g9aydr94aqifq5j4b7diq74yfs")))) + "19bzn0a5jal1xv0ad6wikxc7wrk582hczqamlln0vb2ffwkj1z3f")))) (properties `((upstream-name . "DirichletMultinomial"))) (build-system r-build-system) @@ -10208,14 +10227,14 @@ originally made available by Holmes, Harris, and Quince, 2012, PLoS ONE 7(2): (define-public r-ensembldb (package (name "r-ensembldb") - (version "2.4.1") + (version "2.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ensembldb" version)) (sha256 (base32 - "1l2b4cxiycv05mz4z4f3dhx57r9ksha02psc114h30ldm5rxz8w6")))) + "12jqz9h6w4mxyfr43w5qbwmacn512aw0mnl0zvhsg5i7p4qj45ks")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10251,21 +10270,21 @@ chromosome region or transcript models of lincRNA genes.") (define-public r-organismdbi (package (name "r-organismdbi") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "OrganismDbi" version)) (sha256 (base32 - "0hb9ni41bjfy5s5ryw2qmqs2sx3i7j47w1g0l8g1pvn7ppnxb6cv")))) + "11pyv56cy4iy095h40k6k0mpjdlh6gsb4ld3s57nfa9nd4ypx3yi")))) (properties `((upstream-name . "OrganismDbi"))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-biocinstaller" ,r-biocinstaller) + ("r-biocmanager" ,r-biocmanager) ("r-dbi" ,r-dbi) ("r-genomicfeatures" ,r-genomicfeatures) ("r-genomicranges" ,r-genomicranges) @@ -10283,14 +10302,14 @@ the fact that each of these packages implements a select methods.") (define-public r-biovizbase (package (name "r-biovizbase") - (version "1.28.2") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biovizBase" version)) (sha256 (base32 - "0wc45j3hfn01i44bkkxjj3n8b8xzbkkcdv35mrkzb1f9yprkf8gq")))) + "0v54mcn3rnnfx8dmcrms5z3rgq19n3hp4r23azlgzwq6hjw7cccx")))) (properties `((upstream-name . "biovizBase"))) (build-system r-build-system) (propagated-inputs @@ -10325,14 +10344,14 @@ effort and encourages consistency.") (define-public r-ggbio (package (name "r-ggbio") - (version "1.28.5") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ggbio" version)) (sha256 (base32 - "19s2v40fycwf44fl3lm791y635xzw67b30sq2g0qq4a6phjik42d")))) + "0wq49qqzkcn8s19xgaxf2s1j1a563d7pbhhvris6fhxfdjsz4934")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10402,14 +10421,14 @@ organisms via the @code{g:Profiler} toolkit.") (define-public r-gqtlbase (package (name "r-gqtlbase") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gQTLBase" version)) (sha256 (base32 - "1m3ajpqjhw1nwwsn372r44xfxq0a9a0pzsnrprzdjp6mh52p9b5m")))) + "1lbk1m1mkvbk30flk5pf3pcrnm2s0sj5r48kbjgad39dsvd8zgqx")))) (properties `((upstream-name . "gQTLBase"))) (build-system r-build-system) (propagated-inputs @@ -10437,14 +10456,14 @@ and more.") (define-public r-snpstats (package (name "r-snpstats") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "snpStats" version)) (sha256 (base32 - "0iydgfnm053iw860qa1bbh4f6nwzlsf3vhgq92gvl2v4xsz1jbbs")))) + "1pplx4pf9bqi7v5v1l74yknc1s61carvbqkf327ky7vbvp0bck33")))) (properties `((upstream-name . "snpStats"))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -10496,14 +10515,14 @@ several related annotation packages.") (define-public r-erma (package (name "r-erma") - (version "0.12.0") + (version "0.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "erma" version)) (sha256 (base32 - "1ka68n18yizlyvb8bpwwcl4hqbsasg8hw8jb3vgy3cd4szji87hh")))) + "0hj9iz904rr1y66442lkxjywkw1ydyxxlhmjirawbf09ic5ad4g9")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10534,14 +10553,14 @@ by Ernst and Kellis.") (define-public r-ldblock (package (name "r-ldblock") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ldblock" version)) (sha256 (base32 - "0c24zvnwsp39d3q0bps13sc441jj9ms2zi34xsb8c392lqmbypvd")))) + "0xbf4pmhrk5fnd1iz5wzjvdr75v114bwpznhcig4wiqmxc27sips")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -10566,14 +10585,14 @@ defining LD blocks.") (define-public r-gqtlstats (package (name "r-gqtlstats") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gQTLstats" version)) (sha256 (base32 - "19g8qhfgngdc14cw9k4i44cxhs3qva87x56gjzmn25k1yj8qgsp1")))) + "1sg9kw59dlayj7qxql9pd93d4hmml504sa3kkfpzfh3xri7m5pxf")))) (properties `((upstream-name . "gQTLstats"))) (build-system r-build-system) (propagated-inputs @@ -10620,14 +10639,14 @@ family of feature/genome hypotheses.") (define-public r-gviz (package (name "r-gviz") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Gviz" version)) (sha256 (base32 - "1fhli7ahkl5r43j0hc89ib41mfadj6qyrg36i03ncz8zs6iqwpx4")))) + "05zk9hf30afg6rjg97lzn5v8xij90v8zm09y9vcz0asmc3c8xs0a")))) (properties `((upstream-name . "Gviz"))) (build-system r-build-system) (propagated-inputs @@ -10666,14 +10685,14 @@ with your data.") (define-public r-gwascat (package (name "r-gwascat") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gwascat" version)) (sha256 (base32 - "08ba9il4vbjjwlbwmqg4ai6ya1p09js9agn95sw0dhc9gqln42hx")))) + "1fnyjydhicq4ayrv0lqjv48h9bd72h40s6l82g1h2ng0icwz38g0")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10706,13 +10725,13 @@ EMBL-EBI GWAS catalog.") (define-public r-sushi (package (name "r-sushi") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Sushi" version)) (sha256 (base32 - "1m15hmg4k0qhshyn65xfj5hx7xbaf0kxqw70lxisak6pj1w00l41")))) + "0dv5di0hgbvk9cxnqhyf18mdjl50k6bk00a89r6zgp83rbxwr1r8")))) (properties `((upstream-name . "Sushi"))) (build-system r-build-system) (propagated-inputs @@ -10728,13 +10747,13 @@ visualizations for publication-quality multi-panel figures.") (define-public r-fithic (package (name "r-fithic") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "FitHiC" version)) (sha256 (base32 - "06w4q836bi1mvkbl1saghv4r5p4hxpjg8cp7kgad13ls450kqmyd")))) + "15xd8mz7660q4zr9p74mq1pqps4iz7pxp8f9ifn21gwg94aq1avn")))) (properties `((upstream-name . "FitHiC"))) (build-system r-build-system) (propagated-inputs @@ -10752,13 +10771,13 @@ assays such as Hi-C.") (define-public r-hitc (package (name "r-hitc") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "HiTC" version)) (sha256 (base32 - "0qkk5139f51lwwy1yh7nbkflh5d69prirmhniwam34nlg9rzjm2z")))) + "11f96k1707g6milpjgnrjf3b5r42hsrxhb5d8znkcr3y3mrskdbj")))) (properties `((upstream-name . "HiTC"))) (build-system r-build-system) (propagated-inputs @@ -10781,14 +10800,14 @@ provided.") (define-public r-qvalue (package (name "r-qvalue") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "qvalue" version)) (sha256 (base32 - "1ndwkj0hh7v4lwylq1v0fkxqs7mfmbcj8kxbdpj1wkvf131z2ns8")))) + "03qxshqwwq1rj23p6pjrz08jm3ziikvy9badi4mz2rcwy2nz783a")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -10810,14 +10829,14 @@ problems in genomics, brain imaging, astrophysics, and data mining.") (define-public r-hdf5array (package (name "r-hdf5array") - (version "1.8.1") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "HDF5Array" version)) (sha256 (base32 - "1s44zgm9jg82bk4b8k3dh7xw7mxychlfm3grs8516mxnw91zpvy5")))) + "1w7ad8cfsbh5xx82m3l4lc0vbmj9lcsqxxpiy3ana2ycgn1bqv3g")))) (properties `((upstream-name . "HDF5Array"))) (build-system r-build-system) (propagated-inputs @@ -10836,14 +10855,20 @@ block processing.") (define-public r-rhdf5lib (package (name "r-rhdf5lib") - (version "1.2.1") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhdf5lib" version)) (sha256 (base32 - "1y59acac6v8hrhv84gghn9ifsni9xxxacaj177rrl4frmkrz4x3c")))) + "01gpz780g850ql20b2ql6pvr678ydk4nq4sn5iiih94a4crb9lz1")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete bundled binaries + (delete-file-recursively "src/winlib/") + #t)))) (properties `((upstream-name . "Rhdf5lib"))) (build-system r-build-system) (arguments @@ -10860,7 +10885,7 @@ block processing.") "'%s/libhdf5.a %s/libhdf5.a -lz'")) (with-directory-excursion "src" (invoke "tar" "xvf" (assoc-ref inputs "hdf5-source")) - (rename-file (string-append "hdf5-" ,(package-version hdf5)) + (rename-file (string-append "hdf5-" ,(package-version hdf5-1.10)) "hdf5") ;; Remove timestamp and host system information to make ;; the build reproducible. @@ -10889,9 +10914,9 @@ block processing.") (inputs `(("zlib" ,zlib))) (propagated-inputs - `(("hdf5" ,hdf5))) + `(("hdf5" ,hdf5-1.10))) (native-inputs - `(("hdf5-source" ,(package-source hdf5)))) + `(("hdf5-source" ,(package-source hdf5-1.10)))) (home-page "https://bioconductor.org/packages/Rhdf5lib") (synopsis "HDF5 library as an R package") (description "This package provides C and C++ HDF5 libraries for use in R @@ -10901,20 +10926,21 @@ packages.") (define-public r-beachmat (package (name "r-beachmat") - (version "1.2.1") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "beachmat" version)) (sha256 (base32 - "1w90v0jx1zgrfxzx99gdkk0dz2vi25hr51jml1bvq33i64rj7996")))) + "07zgmms0qg8gw7x0js46965bbhpfj2aa1h5ixdz9r332bxv9cdmr")))) (build-system r-build-system) (inputs `(("hdf5" ,hdf5) ("zlib" ,zlib))) (propagated-inputs - `(("r-delayedarray" ,r-delayedarray) + `(("r-biocgenerics" ,r-biocgenerics) + ("r-delayedarray" ,r-delayedarray) ("r-hdf5array" ,r-hdf5array) ("r-rcpp" ,r-rcpp) ("r-rhdf5" ,r-rhdf5) @@ -10929,14 +10955,14 @@ matrices.") (define-public r-singlecellexperiment (package (name "r-singlecellexperiment") - (version "1.2.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "SingleCellExperiment" version)) (sha256 (base32 - "0mz3chia250v8v6q8r5cqv5fc4bpcw1hhrfr3p7l5i4xi85scpka")))) + "19r4r7djrn46qlijkj1g926vcklxzcrxjlxv6cg43m9j9jgfs3dj")))) (properties `((upstream-name . "SingleCellExperiment"))) (build-system r-build-system) @@ -10956,39 +10982,31 @@ libraries.") (define-public r-scater (package (name "r-scater") - (version "1.8.4") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "scater" version)) (sha256 (base32 - "173lfpas2fqsp4xxsw01wkxd4496c5p8himw9b4r9z4npxkfyv16")))) + "1kwa9n70c5j0xcj6nkmlkzjr63cnj78mp8nhg58n07fq1ijm4ns3")))) (build-system r-build-system) (propagated-inputs `(("r-beachmat" ,r-beachmat) - ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-data-table" ,r-data-table) + ("r-biocparallel" ,r-biocparallel) ("r-delayedarray" ,r-delayedarray) ("r-delayedmatrixstats" ,r-delayedmatrixstats) ("r-dplyr" ,r-dplyr) - ("r-edger" ,r-edger) ("r-ggbeeswarm" ,r-ggbeeswarm) ("r-ggplot2" ,r-ggplot2) - ("r-limma" ,r-limma) ("r-matrix" ,r-matrix) ("r-plyr" ,r-plyr) ("r-rcpp" ,r-rcpp) ("r-reshape2" ,r-reshape2) - ("r-rhdf5" ,r-rhdf5) ("r-rhdf5lib" ,r-rhdf5lib) - ("r-rjson" ,r-rjson) ("r-s4vectors" ,r-s4vectors) - ("r-shiny" ,r-shiny) - ("r-shinydashboard" ,r-shinydashboard) ("r-singlecellexperiment" ,r-singlecellexperiment) ("r-summarizedexperiment" ,r-summarizedexperiment) - ("r-tximport" ,r-tximport) ("r-viridis" ,r-viridis))) (home-page "https://github.com/davismcc/scater") (synopsis "Single-cell analysis toolkit for gene expression data in R") @@ -11000,26 +11018,24 @@ quality control.") (define-public r-scran (package (name "r-scran") - (version "1.8.4") + (version "1.10.1") (source (origin (method url-fetch) (uri (bioconductor-uri "scran" version)) (sha256 (base32 - "17vq9vb9ak7n4mcqpwnm9x3z91vmr7xnsgj8f45b8dbj7m0v126j")))) + "1viyzrwfm9vccsf54c6g7k1dn7skkfx4ml1jy12q67wa20sx8l03")))) (build-system r-build-system) (propagated-inputs `(("r-beachmat" ,r-beachmat) ("r-biocgenerics" ,r-biocgenerics) + ("r-biocneighbors" ,r-biocneighbors) ("r-biocparallel" ,r-biocparallel) ("r-delayedarray" ,r-delayedarray) ("r-delayedmatrixstats" ,r-delayedmatrixstats) - ("r-dt" ,r-dt) ("r-dynamictreecut" ,r-dynamictreecut) ("r-edger" ,r-edger) - ("r-fnn" ,r-fnn) - ("r-ggplot2" ,r-ggplot2) ("r-igraph" ,r-igraph) ("r-limma" ,r-limma) ("r-matrix" ,r-matrix) @@ -11027,11 +11043,9 @@ quality control.") ("r-rhdf5lib" ,r-rhdf5lib) ("r-s4vectors" ,r-s4vectors) ("r-scater" ,r-scater) - ("r-shiny" ,r-shiny) ("r-singlecellexperiment" ,r-singlecellexperiment) ("r-statmod" ,r-statmod) - ("r-summarizedexperiment" ,r-summarizedexperiment) - ("r-viridis" ,r-viridis))) + ("r-summarizedexperiment" ,r-summarizedexperiment))) (home-page "https://bioconductor.org/packages/scran") (synopsis "Methods for single-cell RNA-Seq data analysis") (description "This package implements a variety of low-level analyses of @@ -11043,19 +11057,21 @@ variable and significantly correlated genes.") (define-public r-delayedmatrixstats (package (name "r-delayedmatrixstats") - (version "1.2.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedMatrixStats" version)) (sha256 (base32 - "1dasghfy8x27zzmd0igag4mc1gxxxbchsl4hpc1050dj3wnw9w3y")))) + "03fk2avl1vyjv2wslczkc82qr0zmp1ra8iimd47pbmnnm839ly4w")))) (properties `((upstream-name . "DelayedMatrixStats"))) (build-system r-build-system) (propagated-inputs - `(("r-delayedarray" ,r-delayedarray) + `(("r-biocparallel" ,r-biocparallel) + ("r-delayedarray" ,r-delayedarray) + ("r-hdf5array" ,r-hdf5array) ("r-iranges" ,r-iranges) ("r-matrix" ,r-matrix) ("r-matrixstats" ,r-matrixstats) @@ -14132,9 +14148,30 @@ absolute GSEA.") #:phases (modify-phases %standard-phases (add-after 'unpack 'create-cabal-file - (lambda _ (invoke "hpack") #t))))) + (lambda _ (invoke "hpack") #t)) + ;; These tools are expected to be installed alongside ngless. + (add-after 'install 'link-tools + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) + (symlink (string-append (assoc-ref inputs "prodigal") + "/bin/prodigal") + (string-append bin "ngless-" ,version "-prodigal")) + (symlink (string-append (assoc-ref inputs "minimap2") + "/bin/minimap2") + (string-append bin "ngless-" ,version "-minimap2")) + (symlink (string-append (assoc-ref inputs "samtools") + "/bin/samtools") + (string-append bin "ngless-" ,version "-samtools")) + (symlink (string-append (assoc-ref inputs "bwa") + "/bin/bwa") + (string-append bin "ngless-" ,version "-bwa")) + #t)))))) (inputs - `(("ghc-aeson" ,ghc-aeson) + `(("prodigal" ,prodigal) + ("bwa" ,bwa) + ("samtools" ,samtools) + ("minimap2" ,minimap2) + ("ghc-aeson" ,ghc-aeson) ("ghc-ansi-terminal" ,ghc-ansi-terminal) ("ghc-async" ,ghc-async) ("ghc-atomic-write" ,ghc-atomic-write) diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index 1cac8b9fb4..30d86bd09f 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -186,8 +186,8 @@ their dependencies.") (license l:gpl3+)))) (define-public cuirass - (let ((commit "fe2b73c2353d106431ed0659345391f14ed64600") - (revision "20")) + (let ((commit "0b40dca734468e8b12b3ff58e3e779679f17d38e") + (revision "21")) (package (name "cuirass") (version (string-append "0.0.1-" revision "." (string-take commit 7))) @@ -199,7 +199,7 @@ their dependencies.") (file-name (string-append name "-" version)) (sha256 (base32 - "00ldbig2p14qpwrl2i2hnhb9idgbbf0kqnlh4n79rmz96blm7463")))) + "1kdxs8dzdyldfs4wsz5hb64hprkbrnq5ljdll631f3bj8pbvvvc1")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index df869794db..ec950ce0ac 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -492,13 +492,13 @@ print, summary, plot, update, etc. (define-public r-ps (package (name "r-ps") - (version "1.2.0") + (version "1.2.1") (source (origin (method url-fetch) (uri (cran-uri "ps" version)) (sha256 - (base32 "0ai8igdkysmks1ihbp3h3s552da2hskxqwrvp4cx7vwn91x9f3wd")))) + (base32 "1zxylcb0nr4qb5v6j199mc2pfgf2bpf00jrw47jajmv59qb0fwmx")))) (build-system r-build-system) (home-page "http://ps.r-lib.org") (synopsis "List, query, and manipulate system processes") @@ -539,14 +539,14 @@ is configured appropriately so R can use them.") (define-public r-pkgload (package (name "r-pkgload") - (version "1.0.1") + (version "1.0.2") (source (origin (method url-fetch) (uri (cran-uri "pkgload" version)) (sha256 (base32 - "0mm0avvan528zbrcrxigl5fkd7za01fb0qhlqrqvm3ar0115cqa8")))) + "0z7jvharafahi2gv5547mk1n499isjzw06kfwymmxc0gd575d1ii")))) (build-system r-build-system) (propagated-inputs `(("r-desc" ,r-desc) @@ -891,14 +891,14 @@ in main memory.") (define-public r-ffbase (package (name "r-ffbase") - (version "0.12.5") + (version "0.12.7") (source (origin (method url-fetch) (uri (cran-uri "ffbase" version)) (sha256 (base32 - "1h5x6rbb1nrpzf4ywkizn8ij0bz3mlz46byh46ylxhicg1ribi24")))) + "04kxx2f3f0743c5nvpb7x1x0pcd220dazpd5ag1pidxbz3xa85nw")))) (build-system r-build-system) (propagated-inputs `(("r-bit" ,r-bit) @@ -1762,14 +1762,14 @@ provided.") (define-public r-ipred (package (name "r-ipred") - (version "0.9-7") + (version "0.9-8") (source (origin (method url-fetch) (uri (cran-uri "ipred" version)) (sha256 (base32 - "0q53cqs46501wsd4cmfsmr78l8nv1hkbamk9m0ns5qy02df5r254")))) + "01xcg3c121ndfpz9dirqxszknh4yb1p222p7f1wbwwhdrg1i27cw")))) (build-system r-build-system) (propagated-inputs `(("r-class" ,r-class) @@ -1789,14 +1789,14 @@ problems as well as resampling based estimators of prediction error.") (define-public r-psych (package (name "r-psych") - (version "1.8.4") + (version "1.8.10") (source (origin (method url-fetch) (uri (cran-uri "psych" version)) (sha256 (base32 - "1kzv9nc7rwn1sj1zxd8xrbs6c7qlka7j2c8lsr4f20znkd3qx8gf")))) + "0n3frgzsfmnan6cp3yyq5h6c28v5pd7q5a42pp6byaa7n7d1v478")))) (build-system r-build-system) (propagated-inputs `(("r-foreign" ,r-foreign) @@ -2319,14 +2319,14 @@ training models for classification or ranking.") (define-public r-xts (package (name "r-xts") - (version "0.11-1") + (version "0.11-2") (source (origin (method url-fetch) (uri (cran-uri "xts" version)) (sha256 (base32 - "17d3g14xkxa1a5z5gd3gk1xjqfkjg1ik3i12q0arina8frql3jhd")))) + "1f0kxrvn13py3hk2gh2m56cqm39x3bqp1i350r5viddacrm2yxqj")))) (build-system r-build-system) (propagated-inputs `(("r-zoo" ,r-zoo))) (home-page "https://github.com/joshuaulrich/xts") @@ -4814,14 +4814,14 @@ vice versa), or to deal with multiple declared missing values.") (define-public r-sjmisc (package (name "r-sjmisc") - (version "2.7.5") + (version "2.7.6") (source (origin (method url-fetch) (uri (cran-uri "sjmisc" version)) (sha256 (base32 - "05fjqfr2rfk11065zqkzb9mbqd6mgdkw9jdhq3by425a7f8m2dcg")))) + "1jhrigikjpkdar3jxvi7qhqsg6lgjkjqhqll9vaay98b88rfc2im")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) @@ -4829,15 +4829,12 @@ vice versa), or to deal with multiple declared missing values.") ("r-dplyr" ,r-dplyr) ("r-haven" ,r-haven) ("r-magrittr" ,r-magrittr) - ("r-pillar" ,r-pillar) ("r-purrr" ,r-purrr) ("r-rlang" ,r-rlang) ("r-sjlabelled" ,r-sjlabelled) ("r-stringdist" ,r-stringdist) ("r-stringr" ,r-stringr) - ("r-tibble" ,r-tibble) - ("r-tidyr" ,r-tidyr) - ("r-tidyselect" ,r-tidyselect))) + ("r-tidyr" ,r-tidyr))) (home-page "https://github.com/strengejacke/sjmisc") (synopsis "Data and variable transformation functions") (description @@ -4899,14 +4896,14 @@ functions.") (define-public r-flextable (package (name "r-flextable") - (version "0.4.5") + (version "0.4.6") (source (origin (method url-fetch) (uri (cran-uri "flextable" version)) (sha256 (base32 - "09j2y0z7rkc0w1cl9pp1cpk6fnzzfr6245mxa3ca42z9k2cy2jfl")))) + "0fa42dvf0wyl91w4v0rywm3xgw9n03cfyl28ficrv8iabz4k4382")))) (build-system r-build-system) (propagated-inputs `(("r-gdtools" ,r-gdtools) @@ -6823,14 +6820,14 @@ Rcpp, RStudio projects, and more.") (define-public r-sessioninfo (package (name "r-sessioninfo") - (version "1.1.0") + (version "1.1.1") (source (origin (method url-fetch) (uri (cran-uri "sessioninfo" version)) (sha256 (base32 - "01c0m8yzadpwd825hky6as0f8ka4xyz7zfy0ih2iy7qqw11w6qn5")))) + "0j5f3l58fynxx3v0w62vqpii7miabszgljpja36xx9s8hikh8sqn")))) (build-system r-build-system) (propagated-inputs `(("r-cli" ,r-cli) @@ -6846,14 +6843,14 @@ more information about packages, and where they were installed from.") (define-public r-remotes (package (name "r-remotes") - (version "2.0.1") + (version "2.0.2") (source (origin (method url-fetch) (uri (cran-uri "remotes" version)) (sha256 (base32 - "1xkzlciv68jyf4j8hads0i47nxbgsy1kv7258c6zzyq66z0amhss")))) + "0rsjxmhwpr51ilsdjfqn06mj8yr2d7nckcn3arv1ljn23qfkpcxa")))) (build-system r-build-system) (home-page "https://github.com/r-lib/remotes#readme") (synopsis "R package installation from remote repositories") @@ -6888,14 +6885,14 @@ directories or URLs with their associated programs.") (define-public r-rcmdcheck (package (name "r-rcmdcheck") - (version "1.3.0") + (version "1.3.1") (source (origin (method url-fetch) (uri (cran-uri "rcmdcheck" version)) (sha256 (base32 - "13liz9lmx9xgc0f7pjiz3sp8ygvazx2zslbiwz3p9fimfsx1yfsg")))) + "1ga19jqix0zs7xyz2j155zyagwbv22r6dgv55g6wdjigc67qfsix")))) (build-system r-build-system) (propagated-inputs `(("r-callr" ,r-callr) @@ -6907,6 +6904,7 @@ directories or URLs with their associated programs.") ("r-prettyunits" ,r-prettyunits) ("r-r6" ,r-r6) ("r-rprojroot" ,r-rprojroot) + ("r-sessioninfo" ,r-sessioninfo) ("r-withr" ,r-withr) ("r-xopen" ,r-xopen))) (home-page "https://github.com/r-Lib/rcmdcheck#readme") @@ -6943,14 +6941,14 @@ quick reporting.") (define-public r-pander (package (name "r-pander") - (version "0.6.2") + (version "0.6.3") (source (origin (method url-fetch) (uri (cran-uri "pander" version)) (sha256 (base32 - "0gd7rqkpbraznip8jmri9lqa8ajg1sryyplhd6m633wg91whiipi")))) + "1bd9sdghlsppmff18k5fg3i0visq9f4wc82rlhwq5m82bmgdgnyi")))) (build-system r-build-system) (propagated-inputs `(("r-digest" ,r-digest) @@ -7225,3 +7223,105 @@ R squared measure from L. J. Edwards et al. (2008) is extended to the GLMM using @dfn{penalized quasi-likelihood} (PQL) estimation (see Jaeger et al. (2016)).") (license license:gpl2))) + +(define-public r-weights + (package + (name "r-weights") + (version "1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "weights" version)) + (sha256 + (base32 + "0186bfpkhxngrshac6bpg37alp6slwhwd43inrm8hqg0vhpfgc4c")))) + (build-system r-build-system) + (propagated-inputs + `(("r-gdata" ,r-gdata) + ("r-hmisc" ,r-hmisc) + ("r-mice" ,r-mice))) + (home-page + "https://cran.r-project.org/web/packages/weights/") + (synopsis "Weighting and weighted statistics") + (description "This package Provides a variety of functions for producing +simple weighted statistics, such as weighted Pearson's correlations, partial +correlations, Chi-Squared statistics, histograms, and t-tests. Also now +includes some software for quickly recoding survey data and plotting point +estimates from interaction terms in regressions (and multiply imputed +regressions). NOTE: Weighted partial correlation calculations pulled to +address a bug.") + (license license:gpl2+))) + +(define-public r-rcppannoy + (package + (name "r-rcppannoy") + (version "0.0.11") + (source + (origin + (method url-fetch) + (uri (cran-uri "RcppAnnoy" version)) + (sha256 + (base32 + "1ik50ancfgcvh03n4jsqwjk8lf056rbgd70q4l4didmvh5kcyjd1")))) + (properties `((upstream-name . "RcppAnnoy"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcpp" ,r-rcpp))) + (native-inputs + `(("r-knitr" ,r-knitr))) ; for vignettes + (home-page "https://cran.r-project.org/web/packages/RcppAnnoy/") + (synopsis "Rcpp bindings for Annoy, a library for Approximate Nearest Neighbors") + (description + "Annoy is a small C++ library for Approximate Nearest Neighbors written +for efficient memory usage as well an ability to load from and save to disk. +This package provides an R interface.") + ;; Annoy is released under ASL 2.0, but this wrapper is released under + ;; GPLv2+. + (license (list license:gpl2+ license:asl2.0)))) + +(define-public r-ncdf4 + (package + (name "r-ncdf4") + (version "1.16") + (source + (origin + (method url-fetch) + (uri (cran-uri "ncdf4" version)) + (sha256 + (base32 + "0lwjjis0b83c4l3xvqai4ckzrskd6mychck1iwxcxgjvh0d77mgd")))) + (build-system r-build-system) + (inputs + `(("netcdf" ,netcdf) + ("zlib" ,zlib))) + (home-page "https://cran.r-project.org/web/packages/ncdf4/index.html") + (synopsis "R interface to Unidata netCDF format data files") + (description + "This package provides a high-level R interface to data files written +using Unidata's netCDF library (version 4 or earlier), which are binary data +files that are portable across platforms and include metadata information in +addition to the data sets. Using this package, netCDF files can be opened and +data sets read in easily. It is also easy to create new netCDF dimensions, +variables, and files, in either version 3 or 4 format, and manipulate existing +netCDF files.") + (license license:gpl3+))) + +(define-public r-biocmanager + (package + (name "r-biocmanager") + (version "1.30.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "BiocManager" version)) + (sha256 + (base32 + "0mfvx1xzsgiag9p42kdyqg8fvajyakrdy3z2smhdlaawzbi0qmax")))) + (properties `((upstream-name . "BiocManager"))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/BiocManager/") + (synopsis "Access the Bioconductor project package repository") + (description + "This package provides a convenient tool to install and update +Bioconductor packages.") + (license license:artistic2.0))) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 3d6727bbde..cec013074f 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -221,14 +221,14 @@ compatible to GNU Pth.") (define-public gnupg (package (name "gnupg") - (version "2.2.10") + (version "2.2.11") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "05f9804g72pffdxgvxjmjzkfcpjg1x221g9rwcr8fi51hrxd77br")))) + "1ncwqjhcxh46fgkp84g2lhf91amcha7abk6wdm1kagzm7q93wv29")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index cb314719b7..67b306de6d 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -156,14 +156,14 @@ model.") (define-public r-rgraphviz (package (name "r-rgraphviz") - (version "2.24.0") + (version "2.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rgraphviz" version)) (sha256 (base32 - "1037hzfxxcn46w6y88wm3kk2nixj0s8bk0hkmnshpxih3kmnvqby")))) + "0bp6517xsih0wng2rgkh9z4r1afqhwl3h04z6ssm7p4cdj0ahm4y")))) (properties `((upstream-name . "Rgraphviz"))) (build-system r-build-system) ;; FIXME: Rgraphviz bundles the sources of an older variant of diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index bf2f2a14a4..0c65f0e78d 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -12,7 +12,7 @@ ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2017 David Thompson <davet@gnu.org> -;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> +;;; Copyright © 2017, 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> @@ -68,6 +68,7 @@ #:use-module (gnu packages maths) #:use-module (gnu packages image) #:use-module (gnu packages version-control) + #:use-module (gnu packages slang) #:use-module (gnu packages xdisorg) #:use-module (gnu packages xorg) #:use-module (gnu packages networking) @@ -1112,7 +1113,7 @@ Guile's foreign function interface.") (package (name "guile-sqlite3") (version "0.1.0") - (home-page "https://notabug.org/civodul/guile-sqlite3.git") + (home-page "https://notabug.org/guile-sqlite3/guile-sqlite3.git") (source (origin (method git-fetch) (uri (git-reference @@ -2243,4 +2244,39 @@ using S-expressions.") tracker's SOAP service, such as @url{https://bugs.gnu.org}.") (license license:gpl3+))) +;; There has not been any release yet. +(define-public guile-newt + (let ((commit "596ad760bee1be419d71271732f0f30eaee55143") + (revision "0")) + (package + (name "guile-newt") + (version (string-append "0-" revision "." (string-take commit 9))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/mothacehe/guile-newt") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "18qqbi0bc7vp2vlrhib3p3wwgn7wrlv5728dn0avirhw4fxxivnf")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags + '("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings + (inputs + `(("guile" ,guile-2.2) + ("newt" ,newt))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config))) + (synopsis "Guile bindings to Newt") + (description + "This package provides bindings for Newt, a programming library for +color text mode, widget based user interfaces. The bindings are written in pure +Scheme by using Guile’s foreign function interface.") + (home-page "https://gitlab.com/mothacehe/guile-newt") + (license license:gpl3+)))) + ;;; guile.scm ends here diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm index 21e7b12d3e..6729f1f322 100644 --- a/gnu/packages/kodi.scm +++ b/gnu/packages/kodi.scm @@ -317,8 +317,8 @@ generator library for C++.") (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))) - ;; Don't phone home to check for updates.¬ - (substitute* "system/addon-manifest.xml"¬ + ;; Don't phone home to check for updates. + (substitute* "system/addon-manifest.xml" (("<addon optional=\\\"true\\\">service.xbmc.versioncheck</addon>") "")) diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index f373383a8a..2e05820f72 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -939,7 +939,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.") (define-public libreoffice (package (name "libreoffice") - (version "6.1.2.1") + (version "6.1.3.2") (source (origin (method url-fetch) @@ -949,7 +949,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.") (version-prefix version 3) "/libreoffice-" version ".tar.xz")) (sha256 (base32 - "149ziasibplihfxlzafzcm4737ns30hg9175967b43c81yv5f335")) + "0i4gf3qi16fg7dxq2l4vhkwh4f5lx7xd1ilpzcw26vccqkv3hvyl")) (patches (search-patches "libreoffice-icu.patch" "libreoffice-glm.patch")))) (build-system glib-or-gtk-build-system) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index e8fc8fdea9..2f5798c055 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -884,6 +884,25 @@ extremely large and complex data collections.") (license (license:x11-style "http://www.hdfgroup.org/ftp/HDF5/current/src/unpacked/COPYING")))) +(define-public hdf5-1.10 + (package (inherit hdf5) + (version "1.10.4") + (source + (origin + (method url-fetch) + (uri (list (string-append "https://support.hdfgroup.org/ftp/HDF5/releases/" + "hdf5-" (version-major+minor version) + "/hdf5-" version "/src/hdf5-" + version ".tar.bz2") + (string-append "https://support.hdfgroup.org/ftp/HDF5/" + "current" + (apply string-append + (take (string-split version #\.) 2)) + "/src/hdf5-" version ".tar.bz2"))) + (sha256 + (base32 "1pr85fa1sh2ky6ai2hs3f21lp252grl2cq3wbyi4rh7dm83gyrqj")) + (patches (list (search-patch "hdf5-config-date.patch"))))))) + (define-public hdf-java (package (name "hdf-java") diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index ac2ed81895..fdbfab796c 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -284,7 +284,7 @@ score, keyboard, guitar, drum and controller views.") ("pulseaudio" ,pulseaudio) ("qtbase" ,qtbase) ("qtx11extras" ,qtx11extras) - ("sqlite" ,sqlite) + ("sqlite" ,sqlite-with-column-metadata) ("sparsehash" ,sparsehash) ("taglib" ,taglib))) (home-page "http://clementine-player.org") diff --git a/gnu/packages/patches/gemma-intel-compat.patch b/gnu/packages/patches/gemma-intel-compat.patch deleted file mode 100644 index f12ec56d9b..0000000000 --- a/gnu/packages/patches/gemma-intel-compat.patch +++ /dev/null @@ -1,44 +0,0 @@ -From da1ed24209121f7b0f03f360b1029d7125a38e70 Mon Sep 17 00:00:00 2001 -From: Efraim Flashner <efraim@flashner.co.il> -Date: Tue, 4 Jul 2017 12:44:53 +0300 -Subject: [PATCH] Add NO_INTEL_COMPAT flag to Makefile. - -see also: https://github.com/xiangzhou/GEMMA/pull/47 - ---- - Makefile | 12 ++++++++---- - 1 file changed, 8 insertions(+), 4 deletions(-) - -diff --git a/Makefile b/Makefile -index 5bb8748..712b1ad 100644 ---- a/Makefile -+++ b/Makefile -@@ -11,6 +11,7 @@ - SYS = LNX - # Leave blank after "=" to disable; put "= 1" to enable - WITH_LAPACK = 1 -+NO_INTEL_COMPAT = - FORCE_32BIT = - FORCE_DYNAMIC = - DIST_NAME = gemma-0.96 -@@ -64,10 +65,13 @@ endif - HDR += $(SRC_DIR)/lapack.h - endif - --ifdef FORCE_32BIT -- CPPFLAGS += -m32 --else -- CPPFLAGS += -m64 -+ifdef NO_INTEL_COMPAT -+ else -+ ifdef FORCE_32BIT -+ CPPFLAGS += -m32 -+ else -+ CPPFLAGS += -m64 -+ endif - endif - - ifdef FORCE_DYNAMIC --- -2.13.2 - diff --git a/gnu/packages/patches/jq-CVE-2015-8863.patch b/gnu/packages/patches/jq-CVE-2015-8863.patch deleted file mode 100644 index 20b3bb3f06..0000000000 --- a/gnu/packages/patches/jq-CVE-2015-8863.patch +++ /dev/null @@ -1,45 +0,0 @@ -Fix CVE-2015-8863 (Off-by-one error in the tokenadd function in -jv_parse.c in jq allows remote attackers to cause a denial of service -(crash) via a long JSON-encoded number, which triggers a heap-based -buffer overflow): - -<https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-8863> - -Copied from upstream code repository: - -<https://github.com/stedolan/jq/commit/8eb1367ca44e772963e704a700ef72ae2e12babd> - -From 8eb1367ca44e772963e704a700ef72ae2e12babd Mon Sep 17 00:00:00 2001 -From: Nicolas Williams <nico@cryptonector.com> -Date: Sat, 24 Oct 2015 17:24:57 -0500 -Subject: [PATCH] Heap buffer overflow in tokenadd() (fix #105) - -This was an off-by one: the NUL terminator byte was not allocated on -resize. This was triggered by JSON-encoded numbers longer than 256 -bytes. ---- - jv_parse.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/jv_parse.c b/jv_parse.c -index 3102ed4..84245b8 100644 ---- a/jv_parse.c -+++ b/jv_parse.c -@@ -383,7 +383,7 @@ static pfunc stream_token(struct jv_parser* p, char ch) { - - static void tokenadd(struct jv_parser* p, char c) { - assert(p->tokenpos <= p->tokenlen); -- if (p->tokenpos == p->tokenlen) { -+ if (p->tokenpos >= (p->tokenlen - 1)) { - p->tokenlen = p->tokenlen*2 + 256; - p->tokenbuf = jv_mem_realloc(p->tokenbuf, p->tokenlen); - } -@@ -485,7 +485,7 @@ static pfunc check_literal(struct jv_parser* p) { - TRY(value(p, v)); - } else { - // FIXME: better parser -- p->tokenbuf[p->tokenpos] = 0; // FIXME: invalid -+ p->tokenbuf[p->tokenpos] = 0; - char* end = 0; - double d = jvp_strtod(&p->dtoa, p->tokenbuf, &end); - if (end == 0 || *end != 0) diff --git a/gnu/packages/patches/libgit2-oom-test.patch b/gnu/packages/patches/libgit2-oom-test.patch new file mode 100644 index 0000000000..9667d1c0da --- /dev/null +++ b/gnu/packages/patches/libgit2-oom-test.patch @@ -0,0 +1,62 @@ +Fix a test failure on 32-bit platforms as reported +at <https://github.com/libgit2/libgit2/issues/4868>. + +From 415a8ae9c9b6ac18f0524b6af8e58408b426457d Mon Sep 17 00:00:00 2001 +From: Edward Thomson <ethomson@edwardthomson.com> +Date: Thu, 13 Sep 2018 13:27:07 +0100 +Subject: [PATCH] tests: don't run buf::oom on 32-bit systems + +On a 32-bit Linux systems, the value large enough to make malloc +guarantee a failure is also large enough that valgrind considers it +"fishy". Skip this test on those systems entirely. +--- + tests/buf/oom.c | 14 +++++++++----- + 1 file changed, 9 insertions(+), 5 deletions(-) + +diff --git a/tests/buf/oom.c b/tests/buf/oom.c +index 2741a8ddf2..ec3bad9979 100644 +--- a/tests/buf/oom.c ++++ b/tests/buf/oom.c +@@ -11,12 +11,8 @@ + */ + #if defined(GIT_ARCH_64) && defined(__linux__) + # define TOOBIG 0x0fffffffffffffff +-#elif defined(__linux__) +-# define TOOBIG 0x0fffffff + #elif defined(GIT_ARCH_64) + # define TOOBIG 0xffffffffffffff00 +-#else +-# define TOOBIG 0xffffff00 + #endif + + /** +@@ -25,13 +21,18 @@ + * will fail. And because the git_buf_grow() wrapper always + * sets mark_oom, the code in git_buf_try_grow() will free + * the internal buffer and set it to git_buf__oom. +- * ++ * + * We initialized the internal buffer to (the static variable) + * git_buf__initbuf. The purpose of this test is to make sure + * that we don't try to free the static buffer. ++ * ++ * Skip this test entirely on 32-bit platforms; a buffer large enough ++ * to guarantee malloc failures is so large that valgrind considers ++ * it likely to be an error. + */ + void test_buf_oom__grow(void) + { ++#ifdef GIT_ARCH_64 + git_buf buf = GIT_BUF_INIT; + + git_buf_clear(&buf); +@@ -40,6 +41,9 @@ void test_buf_oom__grow(void) + cl_assert(git_buf_oom(&buf)); + + git_buf_free(&buf); ++#else ++ cl_skip(); ++#endif + } + + void test_buf_oom__grow_by(void) diff --git a/gnu/packages/slang.scm b/gnu/packages/slang.scm index 24eb5fa137..185d441919 100644 --- a/gnu/packages/slang.scm +++ b/gnu/packages/slang.scm @@ -50,13 +50,21 @@ '(begin (substitute* "src/Makefile.in" (("/bin/ln") "ln")) - (substitute* "configure" - (("-ltermcap") "")) #t)))) (build-system gnu-build-system) (arguments '(#:parallel-tests? #f - #:parallel-build? #f)) ; there's at least one race + #:parallel-build? #f ; there's at least one race + #:phases + (modify-phases %standard-phases + (add-before 'configure 'substitute-before-config + (lambda* (#:key inputs #:allow-other-keys) + (let ((ncurses (assoc-ref inputs "ncurses"))) + (substitute* "configure" + (("MISC_TERMINFO_DIRS=\"\"") + (string-append "MISC_TERMINFO_DIRS=" + "\"" ncurses "/share/terminfo" "\""))) + #t)))))) (inputs `(("readline" ,readline) ("zlib" ,zlib) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index d9a20cd818..bb942b4fea 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -339,14 +339,14 @@ D.V. Hinkley (1997, CUP), originally written by Angelo Canty for S.") (define-public r-mass (package (name "r-mass") - (version "7.3-51") + (version "7.3-51.1") (source (origin (method url-fetch) (uri (cran-uri "MASS" version)) (sha256 (base32 - "0yp5ssfm9mahrp30y1hkqgjg70mzs6w065ba8h7j5ky1z6msdsdy")))) + "14907ia8418mp3p1rs1i2f1x5b6kk5z998dk353a29j3xqf3ybyq")))) (properties `((upstream-name . "MASS"))) (build-system r-build-system) (home-page "http://www.stats.ox.ac.uk/pub/MASS4/") @@ -467,13 +467,13 @@ estimation) corresponding to the book: Wand, M.P. and Jones, M.C. (1995) (define-public r-lattice (package (name "r-lattice") - (version "0.20-35") + (version "0.20-38") (source (origin (method url-fetch) (uri (cran-uri "lattice" version)) (sha256 (base32 - "0pcnmaz3lr62ly0dcy5hnnqxshc4yqd43hrvlz3almgc9l7sna88")))) + "0b8abkz7syscq883mrgv63pkwaqkcpwfx8rgbqy9vgfva0z5xszx")))) (build-system r-build-system) (home-page "http://lattice.r-forge.r-project.org/") (synopsis "High-level data visualization system") @@ -487,14 +487,14 @@ also flexible enough to handle most nonstandard requirements.") (define-public r-matrix (package (name "r-matrix") - (version "1.2-14") + (version "1.2-15") (source (origin (method url-fetch) (uri (cran-uri "Matrix" version)) (sha256 (base32 - "15hknim84nj3f54vkchca5ac0c3ip15v1by18k5parmn8wsl19j9")))) + "1mshhyia6imh939p8labxi0wv21lal7csmccxi42klpgdh1j89kv")))) (properties `((upstream-name . "Matrix"))) (build-system r-build-system) (propagated-inputs @@ -614,14 +614,14 @@ analysis.") (define-public r-survival (package (name "r-survival") - (version "2.42-6") + (version "2.43-1") (source (origin (method url-fetch) (uri (cran-uri "survival" version)) (sha256 (base32 - "1bsxc2fir9pbvdzy9n474fkl7har606h9zhspp0z67wnjpp48g73")))) + "0220fjsq4ycx1n5zc5h39wdbj5j6xr8rzqbcixx2p25akzdn7kqk")))) (build-system r-build-system) (propagated-inputs `(("r-matrix" ,r-matrix))) @@ -2233,13 +2233,13 @@ tables, autolinks and strikethrough text.") (define-public r-roxygen2 (package (name "r-roxygen2") - (version "6.1.0") + (version "6.1.1") (source (origin (method url-fetch) (uri (cran-uri "roxygen2" version)) (sha256 (base32 - "0ji9k4s1bvfbl8wimfqj1lqr33h1claaz30vb5pgksxyg77j5xaa")))) + "0wq29ilqas8yn2z8v49fk0hbgchg29nmyyhwczgdipz0cbhbfipd")))) (build-system r-build-system) (propagated-inputs `(("r-brew" ,r-brew) @@ -3085,13 +3085,13 @@ using the multicore functionality of the parallel package.") (define-public r-dt (package (name "r-dt") - (version "0.4") + (version "0.5") (source (origin (method url-fetch) (uri (cran-uri "DT" version)) (sha256 (base32 - "06gsqz7p2fv6hc3fm3759gaa50krcfrqrmy7qbxyam6a36w9daix")))) + "1s5d3sld4l8zygpkvprvlbqa0pm2cv1bm7h7p999wxlap28vnnqf")))) (properties `((upstream-name . "DT"))) (build-system r-build-system) @@ -3099,7 +3099,8 @@ using the multicore functionality of the parallel package.") `(("r-crosstalk" ,r-crosstalk) ("r-htmltools" ,r-htmltools) ("r-htmlwidgets" ,r-htmlwidgets) - ("r-magrittr" ,r-magrittr))) + ("r-magrittr" ,r-magrittr) + ("r-promises" ,r-promises))) (home-page "http://rstudio.github.io/DT") (synopsis "R wrapper of the DataTables JavaScript library") (description @@ -3665,14 +3666,14 @@ selection.") (define-public r-tidyr (package (name "r-tidyr") - (version "0.8.1") + (version "0.8.2") (source (origin (method url-fetch) (uri (cran-uri "tidyr" version)) (sha256 (base32 - "0485f19mkkglc4bv57y6bm6l9rfgd878hsz2xdg1nwgbqchjhgix")))) + "03s9dv6c2dj65a769h8fgy9878y46rdq7x65i53kd44kag80i9cr")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) @@ -4031,14 +4032,14 @@ hierarchical clustering dendrograms.") (define-public r-preprocesscore (package (name "r-preprocesscore") - (version "1.42.0") + (version "1.44.0") (source (origin (method url-fetch) (uri (bioconductor-uri "preprocessCore" version)) (sha256 (base32 - "1afar1z7959v7mbzsqa77vqfh0yc7y3nv5ayx71485a8scwsfwbk")))) + "0ijyjqi8mxxf350dhvgp36swwww5ag7ac9a6r6ymihc5syjr4w4j")))) (properties `((upstream-name . "preprocessCore"))) (build-system r-build-system) @@ -5016,14 +5017,14 @@ decompositions of such matrices, and solutions of linear systems.") (define-public r-modelmetrics (package (name "r-modelmetrics") - (version "1.2.0") + (version "1.2.2") (source (origin (method url-fetch) (uri (cran-uri "ModelMetrics" version)) (sha256 (base32 - "1sgdyrf6fbsn18gk8slir4a1yhv133kfhyg2crfs759nff4aw89h")))) + "158ddbw2snlyzd2q6mdaif5i67kq4qfvadylwjxgv1w2cmszrmk6")))) (properties `((upstream-name . "ModelMetrics"))) (build-system r-build-system) (propagated-inputs diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 48b52d2002..5d681b816e 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -30,7 +30,7 @@ (define-public syncthing (package (name "syncthing") - (version "0.14.51") + (version "0.14.52") (source (origin (method url-fetch) (uri (string-append "https://github.com/syncthing/syncthing" @@ -38,7 +38,7 @@ "/syncthing-source-v" version ".tar.gz")) (sha256 (base32 - "17phn8l2afhgzh0q9ambi28awj2m905sr1bicq2wc7ghypk5vgqh")) + "1hhn72l74vb9l32i1a54ry2l85ji78cq6isd20lxxdk0bjqc4m29")) (modules '((guix build utils))) ;; Delete bundled ("vendored") free software source code. (snippet '(begin diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 5cdc081398..116377c8fa 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -187,96 +187,112 @@ text-based approach to terminal recording.") (license license:gpl3))) (define-public libtsm - (package - (name "libtsm") - (version "3") - (source (origin - (method url-fetch) - (uri (string-append - "https://freedesktop.org/software/kmscon/releases/" - "libtsm-" version ".tar.xz")) - (sha256 - (base32 - "01ygwrsxfii0pngfikgqsb4fxp8n1bbs47l7hck81h9b9bc1ah8i")))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config))) - (inputs - `(("libxkbcommon" ,libxkbcommon))) - (synopsis "Xterm state machine library") - (description "TSM is a state machine for DEC VT100-VT520 compatible + (let ((commit "f70e37982f382b03c6939dac3d5f814450bda253") + (revision "1")) + (package + (name "libtsm") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + ;; The freedesktop repository is no longer maintained. + (uri (git-reference + (url (string-append "https://github.com/Aetf/" name)) + (commit commit))) + (sha256 + (base32 + "0mwn91i5h5d518i1s05y7hzv6bc13vzcvxszpfh77473iwg4wprx")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags '("-DBUILD_TESTING=ON"))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libxkbcommon" ,libxkbcommon) + ("check" ,check))) + (synopsis "Xterm state machine library") + (description "TSM is a state machine for DEC VT100-VT520 compatible terminal emulators. It tries to support all common standards while keeping compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.") - (home-page "https://www.freedesktop.org/wiki/Software/libtsm") - ;; Hash table implementation is lgpl2.1+ licensed. - ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license - ;; derived from ISC. - ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released - ;; under the bsd 2 license. - (license (list license:expat license:lgpl2.1+ license:isc license:bsd-2)))) + (home-page "https://www.freedesktop.org/wiki/Software/libtsm") + ;; Hash table implementation is lgpl2.1+ licensed. + ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license + ;; derived from ISC. + ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released + ;; under the bsd 2 license. + (license (list license:expat license:lgpl2.1+ license:isc license:bsd-2))))) (define-public kmscon - (package - (name "kmscon") - (version "8") - (source (origin - (method url-fetch) - (uri (string-append - "https://freedesktop.org/software/kmscon/releases/" - "kmscon-" version ".tar.xz")) - (sha256 - (base32 - "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a")) - (modules '((guix build utils))) - (snippet - ;; Use elogind instead of systemd. - '(begin - (substitute* "configure" - (("libsystemd-daemon libsystemd-login") - "libelogind")) - (substitute* "src/uterm_systemd.c" - (("#include <systemd/sd-login.h>") - "#include <elogind/sd-login.h>") - ;; We don't have this header. - (("#include <systemd/sd-daemon\\.h>") - "") - ;; Replace the call to 'sd_booted' by the truth value. - (("sd_booted\\(\\)") - "1")) - #t)))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config) - ("libxslt" ,libxslt) ;to build the man page - ("libxml2" ,libxml2) ;for XML_CATALOG_FILES - ("docbook-xsl" ,docbook-xsl))) - (inputs - `(("libdrm" ,libdrm) - ("libtsm" ,libtsm) - ("libxkbcommon" ,libxkbcommon) - ("logind" ,elogind) - ("mesa" ,mesa) - ("pango" ,pango) - ("udev" ,eudev))) - (synopsis "Linux KMS-based terminal emulator") - (description "Kmscon is a terminal emulator based on Linux's @dfn{kernel + (let ((commit "01dd0a231e2125a40ceba5f59fd945ff29bf2cdc") + (revision "1")) + (package + (name "kmscon") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + ;; The freedesktop repository is no longer maintained. + (uri (git-reference + (url (string-append "https://github.com/Aetf/" name)) + (commit commit))) + (sha256 + (base32 + "0q62kjsvy2iwy8adfiygx2bfwlh83rphgxbis95ycspqidg9py87")) + (modules '((guix build utils))))) + (build-system gnu-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'autogen.sh + (lambda _ + (zero? (system* "sh" "autogen.sh")))) + ;; Use elogind instead of systemd. + (add-before 'configure 'remove-systemd + (lambda _ + (substitute* "configure" + (("libsystemd-daemon libsystemd-login") + "libelogind")) + (substitute* "src/uterm_systemd.c" + (("#include <systemd/sd-login.h>") + "#include <elogind/sd-login.h>") + ;; We don't have this header. + (("#include <systemd/sd-daemon\\.h>") + "") + ;; Replace the call to 'sd_booted' by the truth value. + (("sd_booted\\(\\)") + "1"))))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("libxslt" ,libxslt) ;to build the man page + ("libxml2" ,libxml2) ;for XML_CATALOG_FILES + ("docbook-xsl" ,docbook-xsl))) + (inputs + `(("libdrm" ,libdrm) + ("libtsm" ,libtsm) + ("libxkbcommon" ,libxkbcommon) + ("logind" ,elogind) + ("mesa" ,mesa) + ("pango" ,pango) + ("udev" ,eudev))) + (synopsis "Linux KMS-based terminal emulator") + (description "Kmscon is a terminal emulator based on Linux's @dfn{kernel mode setting} (KMS). It can replace the in-kernel virtual terminal (VT) implementation with a user-space console. Compared to the Linux console, kmscon provides enhanced features including XKB-compatible internationalized keyboard support, UTF-8 input/font support, hardware-accelerated rendering, multi-seat support, a replacement for @command{mingetty}, and more.") - (home-page "https://www.freedesktop.org/wiki/Software/kmscon") - ;; Hash table implementation is lgpl2.1+ licensed. - ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license - ;; derived from ISC. - ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released - ;; under the bsd 2 license. - ;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed - ;; under the terms of the GNU GPL. - (license (list license:expat license:lgpl2.1+ license:bsd-2 - license:gpl2+)) - (supported-systems (filter (cut string-suffix? "-linux" <>) - %supported-systems)))) + (home-page "https://www.freedesktop.org/wiki/Software/kmscon") + ;; Hash table implementation is lgpl2.1+ licensed. + ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license + ;; derived from ISC. + ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released + ;; under the bsd 2 license. + ;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed + ;; under the terms of the GNU GPL. + (license (list license:expat license:lgpl2.1+ license:bsd-2 + license:gpl2+)) + (supported-systems (filter (cut string-suffix? "-linux" <>) + %supported-systems))))) (define-public libtermkey (package diff --git a/gnu/packages/terraform.scm b/gnu/packages/terraform.scm index 71b214ed0a..f14b152fdb 100644 --- a/gnu/packages/terraform.scm +++ b/gnu/packages/terraform.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Christopher Baines <mail@cbaines.net> +;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,13 +22,12 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) - #:use-module (guix build-system go) - #:use-module (gnu packages golang)) + #:use-module (guix build-system go)) (define-public terraform-docs (package (name "terraform-docs") - (version "0.3.0") + (version "0.5.0") (source (origin (method git-fetch) (uri (git-reference @@ -36,11 +36,8 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0xchpik32ab8m89s6jv671vswg8xhprfvh6s5md0zd36482d2nmm")))) + "12w2yr669hk5kxdb9rrzsn8hwvx8rzrc1rmn8hs9l8z1bkfhr4gg")))) (build-system go-build-system) - (native-inputs - `(("go-github-com-hashicorp-hcl" ,go-github-com-hashicorp-hcl) - ("go-github-com-tj-docopt" ,go-github-com-tj-docopt))) (arguments '(#:import-path "github.com/segmentio/terraform-docs")) (synopsis "Generate documentation from Terraform modules") diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index b9a2ff2ea0..04d28044dd 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -469,7 +469,8 @@ everything from small to very large projects with speed and efficiency.") (sha256 (base32 "15kp4sq72kh762bm7dgspyrk0a6siarvll3k7nrhs0xy77idf80g")) - (patches (search-patches "libgit2-mtime-0.patch")) + (patches (search-patches "libgit2-mtime-0.patch" + "libgit2-oom-test.patch")) ;; Remove bundled software. (snippet '(begin diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index fee2cb7762..a482ef2515 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -614,14 +614,14 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).") (define-public ffmpeg (package (name "ffmpeg") - (version "4.0.3") + (version "4.1") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "1vg229mxcrm415cq6q1nfm891hm4x56mb5p4cqjnlqnky7ikfg15")))) + "150rrm549fy1x71c9whmyi5knyd9sliwvmcsm438bdgg4v8c93m3")))) (build-system gnu-build-system) (inputs `(("fontconfig" ,fontconfig) @@ -1269,7 +1269,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2018.10.05") + (version "2018.11.03") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1277,7 +1277,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "1iq02kwxdgh07bf0w0fvbsjbdshs4kja35gy8m70ji9cj10l1mbw")))) + "11phhwhr1g050h4625d5jsgcsjnnv7jc6xcrbn7zdzd32f6gy2lj")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 89e850bedc..3732f26eba 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -195,14 +195,14 @@ Interface} specification.") (name "nginx") ;; Consider updating the nginx-documentation package if the nginx package is ;; updated. - (version "1.14.0") + (version "1.14.1") (source (origin (method url-fetch) (uri (string-append "https://nginx.org/download/nginx-" version ".tar.gz")) (sha256 (base32 - "1d9c0avfpbwvzyg53b59ks8shpnrxnbnshcd7ziizflsyv5vw5ax")))) + "19542jxcjf4dvrqvgb5vr36mhbzcjrxc3v0xh451rm60610rf2dz")))) (build-system gnu-build-system) (inputs `(("openssl" ,openssl) ("pcre" ,pcre) @@ -4166,19 +4166,15 @@ It uses the uwsgi protocol for all the networking/interprocess communications.") (define-public jq (package (name "jq") - (version "1.5") + (version "1.6") (source (origin (method url-fetch) - (uri (string-append "https://github.com/stedolan/" name - "/releases/download/" name "-" version - "/" name "-" version ".tar.gz")) + (uri (string-append "https://github.com/stedolan/jq" + "/releases/download/jq-" version + "/jq-" version ".tar.gz")) (sha256 (base32 - "0g29kyz4ykasdcrb0zmbrp2jqs9kv1wz9swx849i2d1ncknbzln4")) - ;; This patch has been pushed and the vulnerability will be - ;; fixed in the next release after 1.5. - ;; https://github.com/stedolan/jq/issues/995 - (patches (search-patches "jq-CVE-2015-8863.patch")))) + "1a76f46a652i2g333kfvrl6mp2w7whf6h1yly519izg4y967h9cn")))) (inputs `(("oniguruma" ,oniguruma))) (native-inputs diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index d7dbc5c768..d3e68c4c07 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -5453,6 +5453,58 @@ The XCB util module provides the following libraries: "file://COPYING" "See COPYING in the distribution.")))) +(define-public xcb-util-errors + (let ((commit "5d660ebe872cadcdc85de9d6f9afe05de629c030") + (revision "1")) + (package + (name "xcb-util-errors") + (version (git-version "1.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://anongit.freedesktop.org/git/xcb/util-errors.git") + (commit commit) + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "12bah0iz5k6b9hwlc5zffyfg2gnrajll3gn5s8zmazgynvw72ahg")))) + (build-system gnu-build-system) + (outputs '("out")) + (inputs + `(("util-macros" ,util-macros) + ("xcb-proto" ,xcb-proto))) + (propagated-inputs + `(("libxcb" ,libxcb))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("python-2" ,python-2) + ("pkg-config" ,pkg-config))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'bootstrap + (lambda _ + ;; The default 'bootstrap' phase would run 'autogen.sh', which + ;; would try to run ./configure and fail due to unpatched + ;; shebangs. + (invoke "autoreconf" "-v" "--install")))))) + (home-page "https://cgit.freedesktop.org/xcb/util-errors/") + (synopsis "XCB helper library for printing information about X11 errors") + (description + "The XCB util module provides a number of libraries which sit on +top of libxcb, the core X protocol library, and some of the extension +libraries. These experimental libraries provide convenience functions +and interfaces which make the raw X protocol more usable. Some of the +libraries also provide client-side code which is not strictly part of +the X protocol but which has traditionally been provided by Xlib. + +The XCB util-errors module provides a utility library that gives human +readable names to error codes, event codes, and also to major and minor +numbers.") + (license license:x11)))) (define-public xcb-util-image (package diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 47c7d8bb27..3409bd352c 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 David Craven <david@craven.ch> ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -2040,6 +2041,8 @@ This service is not part of @var{%base-services}." (default (file-append shadow "/bin/login"))) (login-arguments kmscon-configuration-login-arguments (default '("-p"))) + (auto-login kmscon-configuration-auto-login + (default #f)) (hardware-acceleration? kmscon-configuration-hardware-acceleration? (default #f))) ; #t causes failure @@ -2051,14 +2054,20 @@ This service is not part of @var{%base-services}." (virtual-terminal (kmscon-configuration-virtual-terminal config)) (login-program (kmscon-configuration-login-program config)) (login-arguments (kmscon-configuration-login-arguments config)) + (auto-login (kmscon-configuration-auto-login config)) (hardware-acceleration? (kmscon-configuration-hardware-acceleration? config))) (define kmscon-command #~(list #$(file-append kmscon "/bin/kmscon") "--login" "--vt" #$virtual-terminal + "--no-switchvt" ;Prevent a switch to the virtual terminal. #$@(if hardware-acceleration? '("--hwaccel") '()) - "--" #$login-program #$@login-arguments)) + "--login" "--" + #$login-program #$@login-arguments + #$@(if auto-login + #~(#$auto-login) + #~()))) (shepherd-service (documentation "kmscon virtual terminal") diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm index 496b2d06c8..36e90fc825 100644 --- a/gnu/services/cuirass.scm +++ b/gnu/services/cuirass.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> -;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> @@ -54,6 +54,8 @@ (default "/var/log/cuirass.log")) (cache-directory cuirass-configuration-cache-directory ;string (dir-name) (default "/var/cache/cuirass")) + (ttl cuirass-configuration-ttl ;integer + (default (* 30 24 3600))) (user cuirass-configuration-user ;string (default "cuirass")) (group cuirass-configuration-group ;string @@ -86,6 +88,7 @@ (group (cuirass-configuration-group config)) (interval (cuirass-configuration-interval config)) (database (cuirass-configuration-database config)) + (ttl (cuirass-configuration-ttl config)) (port (cuirass-configuration-port config)) (host (cuirass-configuration-host config)) (specs (cuirass-configuration-specifications config)) @@ -102,6 +105,7 @@ "--specifications" #$(scheme-file "cuirass-specs.scm" specs) "--database" #$database + "--ttl" #$(string-append (number->string ttl) "s") "--port" #$(number->string port) "--listen" #$host "--interval" #$(number->string interval) diff --git a/gnu/services/dns.scm b/gnu/services/dns.scm index 16bd039f59..24ef886682 100644 --- a/gnu/services/dns.scm +++ b/gnu/services/dns.scm @@ -763,9 +763,9 @@ manually.") (use-modules (guix build utils) (ice-9 rdelim)) (let ((ddclient-user - #$(passwd:uid (getpw (ddclient-configuration-user config)))) + (passwd:uid (getpw #$(ddclient-configuration-user config)))) (ddclient-group - #$(passwd:gid (getpw (ddclient-configuration-group config)))) + (passwd:gid (getpw #$(ddclient-configuration-group config)))) (ddclient-secret-file #$(ddclient-configuration-secret-file config))) ;; 'ddclient' complains about ddclient.conf file permissions, which diff --git a/guix/build-system/r.scm b/guix/build-system/r.scm index d5f897932f..664515d0ee 100644 --- a/guix/build-system/r.scm +++ b/guix/build-system/r.scm @@ -53,7 +53,7 @@ release corresponding to NAME and VERSION." (list (string-append "https://bioconductor.org/packages/release/bioc/src/contrib/" name "_" version ".tar.gz") ;; TODO: use %bioconductor-version from (guix import cran) - (string-append "https://bioconductor.org/packages/3.7/bioc/src/contrib/Archive/" + (string-append "https://bioconductor.org/packages/3.8/bioc/src/contrib/Archive/" name "_" version ".tar.gz"))) (define %r-build-system-modules diff --git a/guix/build/store-copy.scm b/guix/build/store-copy.scm index 64ade7885c..549aa4f28b 100644 --- a/guix/build/store-copy.scm +++ b/guix/build/store-copy.scm @@ -168,6 +168,28 @@ REFERENCE-GRAPHS, a list of reference-graph files." (reduce + 0 (map file-size items))) +(define (reset-permissions file) + "Reset the permissions on FILE and its sub-directories so that they are all +read-only." + ;; XXX: This procedure exists just to work around the inability of + ;; 'copy-recursively' to preserve permissions. + (file-system-fold (const #t) ;enter? + (lambda (file stat _) ;leaf + (unless (eq? 'symlink (stat:type stat)) + (chmod file + (if (zero? (logand (stat:mode stat) + #o100)) + #o444 + #o555)))) + (const #t) ;down + (lambda (directory stat _) ;up + (chmod directory #o555)) + (const #f) ;skip + (const #f) ;error + #t + file + lstat)) + (define* (populate-store reference-graphs target #:key (log-port (current-error-port))) "Populate the store under directory TARGET with the items specified in @@ -197,7 +219,13 @@ REFERENCE-GRAPHS, a list of reference-graph files." (for-each (lambda (thing) (copy-recursively thing (string-append target thing) + #:keep-mtime? #t #:log (%make-void-port "w")) + + ;; XXX: Since 'copy-recursively' doesn't allow us to + ;; preserve permissions, we have to traverse TARGET to + ;; make sure everything is read-only. + (reset-permissions (string-append target thing)) (report)) things))))) diff --git a/guix/docker.scm b/guix/docker.scm index 0757d3356f..c19a24d45c 100644 --- a/guix/docker.scm +++ b/guix/docker.scm @@ -26,6 +26,7 @@ delete-file-recursively with-directory-excursion invoke)) + #:use-module (gnu build install) #:use-module (json) ;guile-json #:use-module (srfi srfi-19) #:use-module (srfi srfi-26) @@ -108,11 +109,15 @@ return \"a\"." (symlinks '()) (transformations '()) (system (utsname:machine (uname))) + database compressor (creation-time (current-time time-utc))) "Write to IMAGE a Docker image archive containing the given PATHS. PREFIX must be a store path that is a prefix of any store paths in PATHS. +When DATABASE is true, copy it to /var/guix/db in the image and create +/var/guix/gcroots and friends. + SYMLINKS must be a list of (SOURCE -> TARGET) tuples describing symlinks to be created in the image, where each TARGET is relative to PREFIX. TRANSFORMATIONS must be a list of (OLD -> NEW) tuples describing how to @@ -188,10 +193,15 @@ SRFI-19 time-utc object, as the creation time in metadata." source)))) symlinks) + (when database + ;; Initialize /var/guix, assuming PREFIX points to a profile. + (install-database-and-gc-roots "." database prefix)) + (apply invoke "tar" "-cf" "layer.tar" `(,@transformation-options ,@%tar-determinism-options ,@paths + ,@(if database '("var") '()) ,@(map symlink-source symlinks))) ;; It is possible for "/" to show up in the archive, especially when ;; applying transformations. For example, the transformation @@ -203,7 +213,11 @@ SRFI-19 time-utc object, as the creation time in metadata." (system* "tar" "--delete" "/" "-f" "layer.tar") (for-each delete-file-recursively (map (compose topmost-component symlink-source) - symlinks))) + symlinks)) + + ;; Delete /var/guix. + (when database + (delete-file-recursively "var"))) (with-output-to-file "config.json" (lambda () diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 89c84f7037..8f2c10258a 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -127,9 +127,9 @@ package definition." (define %cran-url "http://cran.r-project.org/web/packages/") (define %bioconductor-url "https://bioconductor.org/packages/") -;; The latest Bioconductor release is 3.7. Bioconductor packages should be +;; The latest Bioconductor release is 3.8. Bioconductor packages should be ;; updated together. -(define %bioconductor-version "3.7") +(define %bioconductor-version "3.8") (define %bioconductor-packages-list-url (string-append "https://bioconductor.org/packages/" diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm index 83bfa4ce00..a86b95dd38 100644 --- a/guix/scripts/pack.scm +++ b/guix/scripts/pack.scm @@ -52,6 +52,9 @@ #:export (compressor? lookup-compressor self-contained-tarball + docker-image + squashfs-image + guix-pack)) ;; Type of a compression tool. @@ -103,6 +106,47 @@ found." (package-transitive-propagated-inputs package))) (list guile-gcrypt guile-sqlite3))) +(define (store-database items) + "Return a directory containing a store database where all of ITEMS and their +dependencies are registered." + (define schema + (local-file (search-path %load-path + "guix/store/schema.sql"))) + + + (define labels + (map (lambda (n) + (string-append "closure" (number->string n))) + (iota (length items)))) + + (define build + (with-extensions gcrypt-sqlite3&co + ;; XXX: Adding (gnu build install) just to work around + ;; <https://bugs.gnu.org/15602>: that way, (guix build store-copy) is + ;; copied last and the 'store-info-XXX' macros are correctly expanded. + (with-imported-modules (source-module-closure + '((guix build store-copy) + (guix store database) + (gnu build install))) + #~(begin + (use-modules (guix store database) + (guix build store-copy) + (srfi srfi-1)) + + (define (read-closure closure) + (call-with-input-file closure read-reference-graph)) + + (let ((items (append-map read-closure '#$labels))) + (register-items items + #:state-directory #$output + #:deduplicate? #f + #:reset-timestamps? #f + #:registration-time %epoch + #:schema #$schema)))))) + + (computed-file "store-database" build + #:options `(#:references-graphs ,(zip labels items)))) + (define* (self-contained-tarball name profile #:key target deduplicate? @@ -117,121 +161,116 @@ with a properly initialized store database. SYMLINKS must be a list of (SOURCE -> TARGET) tuples denoting symlinks to be added to the pack." - (define schema + (define database (and localstatedir? - (local-file (search-path %load-path - "guix/store/schema.sql")))) + (file-append (store-database (list profile)) + "/db/db.sqlite"))) (define build - (with-imported-modules `(((guix config) => ,(make-config.scm)) - ,@(source-module-closure - `((guix build utils) - (guix build union) - (guix build store-copy) - (gnu build install)) - #:select? not-config?)) - (with-extensions gcrypt-sqlite3&co - #~(begin - (use-modules (guix build utils) - ((guix build union) #:select (relative-file-name)) - (gnu build install) - (srfi srfi-1) - (srfi srfi-26) - (ice-9 match)) - - (define %root "root") - - (define symlink->directives - ;; Return "populate directives" to make the given symlink and its - ;; parent directories. - (match-lambda - ((source '-> target) - (let ((target (string-append #$profile "/" target)) - (parent (dirname source))) - ;; Never add a 'directory' directive for "/" so as to - ;; preserve its ownnership when extracting the archive (see - ;; below), and also because this would lead to adding the - ;; same entries twice in the tarball. - `(,@(if (string=? parent "/") - '() - `((directory ,parent))) - (,source - -> ,(relative-file-name parent target))))))) - - (define directives - ;; Fully-qualified symlinks. - (append-map symlink->directives '#$symlinks)) - - ;; The --sort option was added to GNU tar in version 1.28, released - ;; 2014-07-28. For testing, we use the bootstrap tar, which is - ;; older and doesn't support it. - (define tar-supports-sort? - (zero? (system* (string-append #+archiver "/bin/tar") - "cf" "/dev/null" "--files-from=/dev/null" - "--sort=name"))) - - ;; Add 'tar' to the search path. - (setenv "PATH" #+(file-append archiver "/bin")) - - ;; Note: there is not much to gain here with deduplication and there - ;; is the overhead of the '.links' directory, so turn it off. - ;; Furthermore GNU tar < 1.30 sometimes fails to extract tarballs - ;; with hard links: - ;; <http://lists.gnu.org/archive/html/bug-tar/2017-11/msg00009.html>. - (populate-single-profile-directory %root - #:profile #$profile - #:closure "profile" - #:deduplicate? #f - #:register? #$localstatedir? - #:schema #$schema) - - ;; Create SYMLINKS. - (for-each (cut evaluate-populate-directive <> %root) - directives) - - ;; Create the tarball. Use GNU format so there's no file name - ;; length limitation. - (with-directory-excursion %root - (exit - (zero? (apply system* "tar" - #+@(if (compressor-command compressor) - #~("-I" - (string-join - '#+(compressor-command compressor))) - #~()) - "--format=gnu" - - ;; Avoid non-determinism in the archive. Use - ;; mtime = 1, not zero, because that is what the - ;; daemon does for files in the store (see the - ;; 'mtimeStore' constant in local-store.cc.) - (if tar-supports-sort? "--sort=name" "--mtime=@1") - "--mtime=@1" ;for files in /var/guix - "--owner=root:0" - "--group=root:0" - - "--check-links" - "-cvf" #$output - ;; Avoid adding / and /var to the tarball, so - ;; that the ownership and permissions of those - ;; directories will not be overwritten when - ;; extracting the archive. Do not include /root - ;; because the root account might have a - ;; different home directory. - #$@(if localstatedir? - '("./var/guix") - '()) - - (string-append "." (%store-directory)) - - (delete-duplicates - (filter-map (match-lambda - (('directory directory) - (string-append "." directory)) - ((source '-> _) - (string-append "." source)) - (_ #f)) - directives)))))))))) + (with-imported-modules (source-module-closure + `((guix build utils) + (guix build union) + (gnu build install)) + #:select? not-config?) + #~(begin + (use-modules (guix build utils) + ((guix build union) #:select (relative-file-name)) + (gnu build install) + (srfi srfi-1) + (srfi srfi-26) + (ice-9 match)) + + (define %root "root") + + (define symlink->directives + ;; Return "populate directives" to make the given symlink and its + ;; parent directories. + (match-lambda + ((source '-> target) + (let ((target (string-append #$profile "/" target)) + (parent (dirname source))) + ;; Never add a 'directory' directive for "/" so as to + ;; preserve its ownnership when extracting the archive (see + ;; below), and also because this would lead to adding the + ;; same entries twice in the tarball. + `(,@(if (string=? parent "/") + '() + `((directory ,parent))) + (,source + -> ,(relative-file-name parent target))))))) + + (define directives + ;; Fully-qualified symlinks. + (append-map symlink->directives '#$symlinks)) + + ;; The --sort option was added to GNU tar in version 1.28, released + ;; 2014-07-28. For testing, we use the bootstrap tar, which is + ;; older and doesn't support it. + (define tar-supports-sort? + (zero? (system* (string-append #+archiver "/bin/tar") + "cf" "/dev/null" "--files-from=/dev/null" + "--sort=name"))) + + ;; Add 'tar' to the search path. + (setenv "PATH" #+(file-append archiver "/bin")) + + ;; Note: there is not much to gain here with deduplication and there + ;; is the overhead of the '.links' directory, so turn it off. + ;; Furthermore GNU tar < 1.30 sometimes fails to extract tarballs + ;; with hard links: + ;; <http://lists.gnu.org/archive/html/bug-tar/2017-11/msg00009.html>. + (populate-single-profile-directory %root + #:profile #$profile + #:closure "profile" + #:database #+database) + + ;; Create SYMLINKS. + (for-each (cut evaluate-populate-directive <> %root) + directives) + + ;; Create the tarball. Use GNU format so there's no file name + ;; length limitation. + (with-directory-excursion %root + (exit + (zero? (apply system* "tar" + #+@(if (compressor-command compressor) + #~("-I" + (string-join + '#+(compressor-command compressor))) + #~()) + "--format=gnu" + + ;; Avoid non-determinism in the archive. Use + ;; mtime = 1, not zero, because that is what the + ;; daemon does for files in the store (see the + ;; 'mtimeStore' constant in local-store.cc.) + (if tar-supports-sort? "--sort=name" "--mtime=@1") + "--mtime=@1" ;for files in /var/guix + "--owner=root:0" + "--group=root:0" + + "--check-links" + "-cvf" #$output + ;; Avoid adding / and /var to the tarball, so + ;; that the ownership and permissions of those + ;; directories will not be overwritten when + ;; extracting the archive. Do not include /root + ;; because the root account might have a + ;; different home directory. + #$@(if localstatedir? + '("./var/guix") + '()) + + (string-append "." (%store-directory)) + + (delete-duplicates + (filter-map (match-lambda + (('directory directory) + (string-append "." directory)) + ((source '-> _) + (string-append "." source)) + (_ #f)) + directives))))))))) (gexp->derivation (string-append name ".tar" (compressor-extension compressor)) @@ -240,7 +279,6 @@ added to the pack." (define* (squashfs-image name profile #:key target - deduplicate? (compressor (first %compressors)) localstatedir? (symlinks '()) @@ -251,75 +289,85 @@ points for virtual file systems (like procfs), and optional symlinks. SYMLINKS must be a list of (SOURCE -> TARGET) tuples denoting symlinks to be added to the pack." - (define build - (with-imported-modules `(((guix config) => ,(make-config.scm)) - ,@(source-module-closure - '((guix build utils) - (guix build store-copy) - (gnu build install)) - #:select? not-config?)) - (with-extensions gcrypt-sqlite3&co - #~(begin - (use-modules (guix build utils) - (gnu build install) - (guix build store-copy) - (srfi srfi-1) - (srfi srfi-26) - (ice-9 match)) + (define database + (and localstatedir? + (file-append (store-database (list profile)) + "/db/db.sqlite"))) - (setenv "PATH" (string-append #$archiver "/bin")) + (define build + (with-imported-modules (source-module-closure + '((guix build utils) + (guix build store-copy) + (gnu build install)) + #:select? not-config?) + #~(begin + (use-modules (guix build utils) + (guix build store-copy) + (gnu build install) + (srfi srfi-1) + (srfi srfi-26) + (ice-9 match)) - ;; We need an empty file in order to have a valid file argument when - ;; we reparent the root file system. Read on for why that's - ;; necessary. - (with-output-to-file ".empty" (lambda () (display ""))) - - ;; Create the squashfs image in several steps. - ;; Add all store items. Unfortunately mksquashfs throws away all - ;; ancestor directories and only keeps the basename. We fix this - ;; in the following invocations of mksquashfs. - (apply invoke "mksquashfs" - `(,@(map store-info-item - (call-with-input-file "profile" - read-reference-graph)) - ,#$output - - ;; Do not perform duplicate checking because we - ;; don't have any dupes. - "-no-duplicates" - "-comp" - ,#+(compressor-name compressor))) - - ;; Here we reparent the store items. For each sub-directory of - ;; the store prefix we need one invocation of "mksquashfs". - (for-each (lambda (dir) - (apply invoke "mksquashfs" - `(".empty" - ,#$output - "-root-becomes" ,dir))) - (reverse (string-tokenize (%store-directory) - (char-set-complement (char-set #\/))))) - - ;; Add symlinks and mount points. - (apply invoke "mksquashfs" - `(".empty" - ,#$output - ;; Create SYMLINKS via pseudo file definitions. - ,@(append-map - (match-lambda - ((source '-> target) - (list "-p" - (string-join - ;; name s mode uid gid symlink - (list source - "s" "777" "0" "0" - (string-append #$profile "/" target)))))) - '#$symlinks) - - ;; Create empty mount points. - "-p" "/proc d 555 0 0" - "-p" "/sys d 555 0 0" - "-p" "/dev d 555 0 0")))))) + (define database #+database) + + (setenv "PATH" (string-append #$archiver "/bin")) + + ;; We need an empty file in order to have a valid file argument when + ;; we reparent the root file system. Read on for why that's + ;; necessary. + (with-output-to-file ".empty" (lambda () (display ""))) + + ;; Create the squashfs image in several steps. + ;; Add all store items. Unfortunately mksquashfs throws away all + ;; ancestor directories and only keeps the basename. We fix this + ;; in the following invocations of mksquashfs. + (apply invoke "mksquashfs" + `(,@(map store-info-item + (call-with-input-file "profile" + read-reference-graph)) + ,#$output + + ;; Do not perform duplicate checking because we + ;; don't have any dupes. + "-no-duplicates" + "-comp" + ,#+(compressor-name compressor))) + + ;; Here we reparent the store items. For each sub-directory of + ;; the store prefix we need one invocation of "mksquashfs". + (for-each (lambda (dir) + (apply invoke "mksquashfs" + `(".empty" + ,#$output + "-root-becomes" ,dir))) + (reverse (string-tokenize (%store-directory) + (char-set-complement (char-set #\/))))) + + ;; Add symlinks and mount points. + (apply invoke "mksquashfs" + `(".empty" + ,#$output + ;; Create SYMLINKS via pseudo file definitions. + ,@(append-map + (match-lambda + ((source '-> target) + (list "-p" + (string-join + ;; name s mode uid gid symlink + (list source + "s" "777" "0" "0" + (string-append #$profile "/" target)))))) + '#$symlinks) + + ;; Create empty mount points. + "-p" "/proc d 555 0 0" + "-p" "/sys d 555 0 0" + "-p" "/dev d 555 0 0")) + + (when database + ;; Initialize /var/guix. + (install-database-and-gc-roots "var-etc" database #$profile) + (invoke "mksquashfs" "var-etc" #$output))))) (gexp->derivation (string-append name (compressor-extension compressor) @@ -329,7 +377,6 @@ added to the pack." (define* (docker-image name profile #:key target - deduplicate? (compressor (first %compressors)) localstatedir? (symlinks '()) @@ -339,6 +386,11 @@ image is a tarball conforming to the Docker Image Specification, compressed with COMPRESSOR. It can be passed to 'docker load'. If TARGET is true, it must a be a GNU triplet and it is used to derive the architecture metadata in the image." + (define database + (and localstatedir? + (file-append (store-database (list profile)) + "/db/db.sqlite"))) + (define defmod 'define-module) ;trick Geiser (define build @@ -357,6 +409,7 @@ the image." (call-with-input-file "profile" read-reference-graph)) #$profile + #:database #+database #:system (or #$target (utsname:machine (uname))) #:symlinks '#$symlinks #:compressor '#$(compressor-command compressor) diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm index 188237aa90..aff4f378be 100644 --- a/guix/scripts/pull.scm +++ b/guix/scripts/pull.scm @@ -87,6 +87,8 @@ Download and deploy the latest version of Guix.\n")) (display (G_ " -p, --profile=PROFILE use PROFILE instead of ~/.config/guix/current")) (display (G_ " + -n, --dry-run show what would be pulled and built")) + (display (G_ " --bootstrap use the bootstrap Guile to build the new Guix")) (newline) (show-build-options-help) @@ -164,15 +166,18 @@ Download and deploy the latest version of Guix.\n")) (_ #t))) (define* (build-and-install instances profile - #:key verbose?) - "Build the tool from SOURCE, and install it in PROFILE." + #:key verbose? dry-run?) + "Build the tool from SOURCE, and install it in PROFILE. When DRY-RUN? is +true, display what would be built without actually building it." (define update-profile (store-lift build-and-use-profile)) (mlet %store-monad ((manifest (channel-instances->manifest instances))) (mbegin %store-monad - (update-profile profile manifest) - (return (display-profile-news profile))))) + (update-profile profile manifest + #:dry-run? dry-run?) + (munless dry-run? + (display-profile-news profile))))) (define (honor-lets-encrypt-certificates! store) "Tell Guile-Git to use the Let's Encrypt certificates." @@ -497,8 +502,6 @@ Use '~/.config/guix/channels.scm' instead.")) (ensure-default-profile) (cond ((assoc-ref opts 'query) (process-query opts profile)) - ((assoc-ref opts 'dry-run?) - #t) ;XXX: not very useful (else (with-store store (with-status-report print-build-event @@ -531,6 +534,8 @@ Use '~/.config/guix/channels.scm' instead.")) (canonical-package guile-2.2))))) (run-with-store store (build-and-install instances profile + #:dry-run? + (assoc-ref opts 'dry-run?) #:verbose? (assoc-ref opts 'verbose?)))))))))))))) diff --git a/guix/self.scm b/guix/self.scm index 3e29c9a42a..ddbe0b3669 100644 --- a/guix/self.scm +++ b/guix/self.scm @@ -206,21 +206,22 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (local-file file #:recursive? #t))) (find-files (string-append directory "/" sub-directory) pred))) -(define* (sub-directory item sub-directory) - "Return SUB-DIRECTORY within ITEM, which may be a file name or a file-like -object." +(define* (file-append* item file #:key (recursive? #t)) + "Return FILE within ITEM, which may be a file name or a file-like object. +When ITEM is a plain file name (a string), simply return a 'local-file' +record with the new file name." (match item ((? string?) ;; This is the optimal case: we return a new "source". Thus, a ;; derivation that depends on this sub-directory does not depend on ITEM ;; itself. - (local-file (string-append item "/" sub-directory) - #:recursive? #t)) + (local-file (string-append item "/" file) + #:recursive? recursive?)) ;; TODO: Add 'local-file?' case. (_ ;; In this case, anything that refers to the result also depends on ITEM, ;; which isn't great. - (file-append item "/" sub-directory)))) + (file-append item "/" file)))) (define* (locale-data source domain #:optional (directory domain)) @@ -238,7 +239,7 @@ DOMAIN, a gettext domain." (ice-9 match) (ice-9 ftw)) (define po-directory - #+(sub-directory source (string-append "po/" directory))) + #+(file-append* source (string-append "po/" directory))) (define (compile language) (let ((gmo (string-append #$output "/" language "/LC_MESSAGES/" @@ -273,10 +274,10 @@ DOMAIN, a gettext domain." 'graphviz)) (define documentation - (sub-directory source "doc")) + (file-append* source "doc")) (define examples - (sub-directory source "gnu/system/examples")) + (file-append* source "gnu/system/examples")) (define build (with-imported-modules '((guix build utils)) @@ -290,7 +291,7 @@ DOMAIN, a gettext domain." ;; doesn't change at each commit? (call-with-output-file "version.texi" (lambda (port) - (let ((version "0.0-git)")) + (let ((version "0.0-git")) (format port " @set UPDATED 1 January 1970 @set UPDATED-MONTH January 1970 @@ -404,11 +405,29 @@ load path." (apply guix-main (command-line)))) #:guile guile)) +(define (miscellaneous-files source) + "Return data files taken from SOURCE." + (file-mapping "guix-misc" + `(("etc/bash_completion.d/guix" + ,(file-append* source "/etc/completion/bash/guix")) + ("etc/bash_completion.d/guix-daemon" + ,(file-append* source "/etc/completion/bash/guix-daemon")) + ("share/zsh/site-functions/_guix" + ,(file-append* source "/etc/completion/zsh/_guix")) + ("share/fish/vendor_completions.d/guix.fish" + ,(file-append* source "/etc/completion/fish/guix.fish")) + ("share/guix/hydra.gnu.org.pub" + ,(file-append* source + "/etc/substitutes/hydra.gnu.org.pub")) + ("share/guix/berlin.guixsd.org.pub" + ,(file-append* source "/etc/substitutes/berlin.guixsd.org.pub"))))) + (define* (whole-package name modules dependencies #:key (guile-version (effective-version)) compiled-modules - info daemon guile + info daemon miscellany + guile (command (guix-command modules #:dependencies dependencies #:guile guile @@ -422,6 +441,7 @@ assumed to be part of MODULES." (with-imported-modules '((guix build utils)) #~(begin (use-modules (guix build utils)) + (mkdir-p (string-append #$output "/bin")) (symlink #$command (string-append #$output "/bin/guix")) @@ -441,6 +461,10 @@ assumed to be part of MODULES." (string-append #$output "/share/info")))) + (when #$miscellany + (copy-recursively #$miscellany #$output + #:log (%make-void-port "w"))) + ;; Object files. (when #$compiled-modules (let ((modules (string-append #$output "/lib/guile/" @@ -666,6 +690,7 @@ assumed to be part of MODULES." 'guix-daemon) #:info (info-manual source) + #:miscellany (miscellaneous-files source) #:guile-version guile-version))) ((= 0 pull-version) ;; Legacy 'guix pull': return the .scm and .go files as one diff --git a/guix/ssh.scm b/guix/ssh.scm index da20d4d8db..25ec8295e8 100644 --- a/guix/ssh.scm +++ b/guix/ssh.scm @@ -161,7 +161,7 @@ Throw an error on failure." "/var/guix/daemon-socket/socket")) "Connect to the remote build daemon listening on SOCKET-NAME over SESSION, an SSH session. Return a <nix-server> object." - (open-connection #:port (remote-daemon-channel session))) + (open-connection #:port (remote-daemon-channel session socket-name))) (define (store-import-channel session) diff --git a/po/guix/de.po b/po/guix/de.po index 7e29852c2a..e78162487c 100644 --- a/po/guix/de.po +++ b/po/guix/de.po @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: guix 0.15.0\n" "Report-Msgid-Bugs-To: ludo@gnu.org\n" "POT-Creation-Date: 2018-06-22 14:08+0200\n" -"PO-Revision-Date: 2018-08-24 20:57+0200\n" +"PO-Revision-Date: 2018-10-27 02:22+0200\n" "Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n" "Language-Team: German <translation-team-de@lists.sourceforge.net>\n" "Language: de\n" @@ -437,7 +437,7 @@ msgid "" " --no-build-hook do not attempt to offload builds via the build hook" msgstr "" "\n" -" --no-build-hook nicht versuchen, Erstellungen über den »build hook«\n" +" --no-build-hook nicht versuchen, Erstellungen über den »Build-Hook«\n" " auszulagern" #: guix/scripts/build.scm:362 @@ -497,7 +497,7 @@ msgstr "" #: guix/scripts/build.scm:479 guix/scripts/build.scm:486 #, scheme-format msgid "not a number: '~a' option argument: ~a~%" -msgstr "Keine Zahl: Kommandozeilenargument von »~a«: ~a~%" +msgstr "Keine Zahl: Befehlszeilenargument von »~a«: ~a~%" #: guix/scripts/build.scm:505 msgid "" @@ -658,7 +658,7 @@ msgid "" "invalid argument: '~a' option argument: ~a, ~\n" "must be one of 'package', 'all', or 'transitive'~%" msgstr "" -"Ungültiges Argument der Kommandozeilenoption »~a«: ~a, ~\n" +"Ungültiges Argument der Befehlszeilenoption »~a«: ~a, ~\n" "muss entweder »package«, »all« oder »transitive« sein~%" #: guix/scripts/build.scm:621 @@ -1018,7 +1018,7 @@ msgstr "" msgid "upgrade regexp '~a' looks like a command-line option~%" msgstr "" "--upgrade: Der reguläre Ausdruck »~a«\n" -"sieht wie eine Kommandozeilenoption aus" +"sieht wie eine Befehlszeilenoption aus" #: guix/scripts/package.scm:443 #, scheme-format @@ -1183,7 +1183,7 @@ msgstr "Es sind bereits ~h Bytes verfügbar auf ~a, nichts zu tun~%" #: guix/scripts/gc.scm:205 msgid "freeing ~h bytes~%" -msgstr "Gebe ~h Bytes frei~%" +msgstr "~h Bytes werden freigegeben~%" #: guix/scripts/gc.scm:217 #, scheme-format @@ -1192,7 +1192,7 @@ msgstr "Zusätzliche Argumente: ~{~a ~}~%" #: guix/scripts/gc.scm:237 guix/scripts/gc.scm:240 msgid "freed ~h bytes~%" -msgstr "~h Bytes freigegeben" +msgstr "~h Bytes wurden freigegeben" #: guix/scripts/hash.scm:47 msgid "" @@ -2885,7 +2885,7 @@ msgid "" " -R, --relocatable produce relocatable executables" msgstr "" "\n" -" -R, --relocatable »portable« ausführbare Datei erzeugen" +" -R, --relocatable pfad-agnostische ausführbare Datei erzeugen" #: guix/scripts/pack.scm:650 msgid "" @@ -3331,7 +3331,7 @@ msgstr "Generation ~a des Profils »~a« existiert nicht~%" #: guix/ui.scm:628 #, scheme-format msgid " ... propagated from ~a@~a~%" -msgstr " … propagatiert von ~a@~a~%" +msgstr " … propagiert von ~a@~a~%" #: guix/ui.scm:638 #, scheme-format @@ -3703,7 +3703,7 @@ msgstr "URLS als die vorgegebene Liste von Substitutsanbietern nutzen" #: nix/nix-daemon/guix-daemon.cc:117 msgid "do not use the 'build hook'" -msgstr "den »build hook« nicht benutzen" +msgstr "den »Build-Hook« nicht benutzen" #: nix/nix-daemon/guix-daemon.cc:119 msgid "cache build failures" diff --git a/tests/guix-pack-relocatable.sh b/tests/guix-pack-relocatable.sh new file mode 100644 index 0000000000..554416627b --- /dev/null +++ b/tests/guix-pack-relocatable.sh @@ -0,0 +1,61 @@ +# GNU Guix --- Functional package management for GNU +# Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +# +# This file is part of GNU Guix. +# +# GNU Guix is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or (at +# your option) any later version. +# +# GNU Guix is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +# +# Test the 'guix pack --relocatable' using the external store, if any. +# + +guix pack --version + +# 'guix pack --relocatable' requires a C compiler and libc.a, which our +# bootstrap binaries don't provide. To make the test relatively inexpensive, +# run it on the user's global store if possible, on the grounds that binaries +# may already be there or can be built or downloaded inexpensively. + +NIX_STORE_DIR="`guile -c '(use-modules (guix config))(display %storedir)'`" +localstatedir="`guile -c '(use-modules (guix config))(display %localstatedir)'`" +GUIX_DAEMON_SOCKET="$localstatedir/guix/daemon-socket/socket" +export NIX_STORE_DIR GUIX_DAEMON_SOCKET + +if ! guile -c '(use-modules (guix)) (exit (false-if-exception (open-connection)))' +then + exit 77 +fi + +STORE_PARENT="`dirname $NIX_STORE_DIR`" +export STORE_PARENT +if test "$STORE_PARENT" = "/"; then exit 77; fi + +# This test requires user namespaces and associated command-line tools. +if ! unshare -mrf sh -c 'mount -t tmpfs none "$STORE_PARENT"' +then + exit 77 +fi + +test_directory="`mktemp -d`" +export test_directory +trap 'chmod -Rf +w "$test_directory"; rm -rf "$test_directory"' EXIT + +tarball="`guix pack -R -S /Bin=bin sed`" +(cd "$test_directory"; tar xvf "$tarball") + +# Run that relocatable 'sed' in a user namespace where we "erase" the store by +# mounting an empty file system on top of it. That way, we exercise the +# wrapper code that creates the user namespace and bind-mounts the store. +unshare -mrf sh -c 'mount -t tmpfs none "$STORE_PARENT"; echo "$STORE_PARENT"/*; "$test_directory/Bin/sed" --version > "$test_directory/output"' +grep 'GNU sed' "$test_directory/output" diff --git a/tests/guix-pack.sh b/tests/guix-pack.sh index cd721a60e9..a43f4d128f 100644 --- a/tests/guix-pack.sh +++ b/tests/guix-pack.sh @@ -29,39 +29,27 @@ fi guix pack --version -# Starting from commit 66e9944e078cbb9e0d618377dd6df6e639640efa, 'guix pack' -# produces derivations that refer to guile-sqlite3 and libgcrypt. To make -# that relatively inexpensive, run the test in the user's global store if -# possible, on the grounds that binaries may already be there or can be built -# or downloaded inexpensively. - -NIX_STORE_DIR="`guile -c '(use-modules (guix config))(display %storedir)'`" -localstatedir="`guile -c '(use-modules (guix config))(display %localstatedir)'`" -GUIX_DAEMON_SOCKET="$localstatedir/guix/daemon-socket/socket" -export NIX_STORE_DIR GUIX_DAEMON_SOCKET - -if ! guile -c '(use-modules (guix)) (exit (false-if-exception (open-connection)))' -then - exit 77 -fi +# Use --no-substitutes because we need to verify we can do this ourselves. +GUIX_BUILD_OPTIONS="--no-substitutes" +export GUIX_BUILD_OPTIONS # Build a tarball with no compression. -guix pack --compression=none guile-bootstrap +guix pack --compression=none --bootstrap guile-bootstrap # Build a tarball (with compression). Check that '-e' works as well. -out1="`guix pack guile-bootstrap`" -out2="`guix pack -e '(@ (gnu packages bootstrap) %bootstrap-guile)'`" +out1="`guix pack --bootstrap guile-bootstrap`" +out2="`guix pack --bootstrap -e '(@ (gnu packages bootstrap) %bootstrap-guile)'`" test -n "$out1" test "$out1" = "$out2" # Build a tarball with a symlink. -the_pack="`guix pack -S /opt/gnu/bin=bin guile-bootstrap`" +the_pack="`guix pack --bootstrap -S /opt/gnu/bin=bin guile-bootstrap`" # Try to extract it. Note: we cannot test whether /opt/gnu/bin/guile itself # exists because /opt/gnu/bin may be an absolute symlink to a store item that # has been GC'd. test_directory="`mktemp -d`" -trap 'rm -rf "$test_directory"' EXIT +trap 'chmod -Rf +w "$test_directory"; rm -rf "$test_directory"' EXIT cd "$test_directory" tar -xf "$the_pack" test -L opt/gnu/bin diff --git a/tests/pack.scm b/tests/pack.scm index 4eb5be92ff..40473a9fe9 100644 --- a/tests/pack.scm +++ b/tests/pack.scm @@ -22,20 +22,26 @@ #:use-module (guix store) #:use-module (guix derivations) #:use-module (guix profiles) + #:use-module (guix packages) #:use-module (guix monads) #:use-module (guix grafts) #:use-module (guix tests) #:use-module (guix gexp) #:use-module (gnu packages bootstrap) + #:use-module ((gnu packages compression) #:select (squashfs-tools-next)) #:use-module (srfi srfi-64)) +(define %store + (open-connection-for-tests)) + ;; Globally disable grafts because they can trigger early builds. (%graft? #f) (define-syntax-rule (test-assertm name store exp) (test-assert name - (run-with-store store exp - #:guile-for-build (%guile-for-build)))) + (let ((guile (package-derivation store %bootstrap-guile))) + (run-with-store store exp + #:guile-for-build guile)))) (define %gzip-compressor ;; Compressor that uses the bootstrap 'gzip'. @@ -48,6 +54,58 @@ (test-begin "pack") +(unless (network-reachable?) (test-skip 1)) +(test-assertm "self-contained-tarball" %store + (mlet* %store-monad + ((profile (profile-derivation (packages->manifest + (list %bootstrap-guile)) + #:hooks '() + #:locales? #f)) + (tarball (self-contained-tarball "pack" profile + #:symlinks '(("/bin/Guile" + -> "bin/guile")) + #:compressor %gzip-compressor + #:archiver %tar-bootstrap)) + (check (gexp->derivation + "check-tarball" + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils) + (srfi srfi-1)) + + (define store + ;; The unpacked store. + (string-append "." (%store-directory) "/")) + + (define (canonical? file) + ;; Return #t if FILE is read-only and its mtime is 1. + (let ((st (lstat file))) + (or (not (string-prefix? store file)) + (eq? 'symlink (stat:type st)) + (and (= 1 (stat:mtime st)) + (zero? (logand #o222 + (stat:mode st))))))) + + (define bin + (string-append "." #$profile "/bin")) + + (setenv "PATH" + (string-append #$%tar-bootstrap "/bin")) + (system* "tar" "xvf" #$tarball) + (mkdir #$output) + (exit + (and (file-exists? (string-append bin "/guile")) + (file-exists? store) + (every canonical? + (find-files "." (const #t) + #:directories? #t)) + (string=? (string-append #$%bootstrap-guile "/bin") + (readlink bin)) + (string=? (string-append ".." #$profile + "/bin/guile") + (readlink "bin/Guile"))))))))) + (built-derivations (list check)))) + ;; The following test needs guile-sqlite3, libgcrypt, etc. as a consequence of ;; commit c45477d2a1a651485feede20fe0f3d15aec48b39 and related changes. Thus, ;; run it on the user's store, if it's available, on the grounds that these @@ -56,17 +114,15 @@ (with-external-store store (unless store (test-skip 1)) - (test-assertm "self-contained-tarball" store + (test-assertm "self-contained-tarball + localstatedir" store (mlet* %store-monad - ((profile (profile-derivation (packages->manifest + ((guile (set-guile-for-build (default-guile))) + (profile (profile-derivation (packages->manifest (list %bootstrap-guile)) #:hooks '() #:locales? #f)) - (tarball (self-contained-tarball "pack" profile - #:symlinks '(("/bin/Guile" - -> "bin/guile")) - #:compressor %gzip-compressor - #:archiver %tar-bootstrap)) + (tarball (self-contained-tarball "tar-pack" profile + #:localstatedir? #t)) (check (gexp->derivation "check-tarball" #~(let ((bin (string-append "." #$profile "/bin"))) @@ -75,12 +131,84 @@ (system* "tar" "xvf" #$tarball) (mkdir #$output) (exit - (and (file-exists? (string-append bin "/guile")) + (and (file-exists? "var/guix/db/db.sqlite") (string=? (string-append #$%bootstrap-guile "/bin") - (readlink bin)) - (string=? (string-append ".." #$profile - "/bin/guile") - (readlink "bin/Guile")))))))) + (readlink bin)))))))) + (built-derivations (list check)))) + + (unless store (test-skip 1)) + (test-assertm "docker-image + localstatedir" store + (mlet* %store-monad + ((guile (set-guile-for-build (default-guile))) + (profile (profile-derivation (packages->manifest + (list %bootstrap-guile)) + #:hooks '() + #:locales? #f)) + (tarball (docker-image "docker-pack" profile + #:symlinks '(("/bin/Guile" -> "bin/guile")) + #:localstatedir? #t)) + (check (gexp->derivation + "check-tarball" + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils) + (ice-9 match)) + + (define bin + (string-append "." #$profile "/bin")) + + (setenv "PATH" (string-append #$%tar-bootstrap "/bin")) + (mkdir "base") + (with-directory-excursion "base" + (invoke "tar" "xvf" #$tarball)) + + (match (find-files "base" "layer.tar") + ((layer) + (invoke "tar" "xvf" layer))) + + (when + (and (file-exists? (string-append bin "/guile")) + (file-exists? "var/guix/db/db.sqlite") + (string=? (string-append #$%bootstrap-guile "/bin") + (pk 'binlink (readlink bin))) + (string=? (string-append #$profile "/bin/guile") + (pk 'guilelink (readlink "bin/Guile")))) + (mkdir #$output))))))) + (built-derivations (list check)))) + + (unless store (test-skip 1)) + (test-assertm "squashfs-image + localstatedir" store + (mlet* %store-monad + ((guile (set-guile-for-build (default-guile))) + (profile (profile-derivation (packages->manifest + (list %bootstrap-guile)) + #:hooks '() + #:locales? #f)) + (image (squashfs-image "squashfs-pack" profile + #:symlinks '(("/bin" -> "bin")) + #:localstatedir? #t)) + (check (gexp->derivation + "check-tarball" + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils) + (ice-9 match)) + + (define bin + (string-append "." #$profile "/bin")) + + (setenv "PATH" + (string-append #$squashfs-tools-next "/bin")) + (invoke "unsquashfs" #$image) + (with-directory-excursion "squashfs-root" + (when (and (file-exists? (string-append bin + "/guile")) + (file-exists? "var/guix/db/db.sqlite") + (string=? (string-append #$%bootstrap-guile "/bin") + (pk 'binlink (readlink bin))) + (string=? (string-append #$profile "/bin") + (pk 'guilelink (readlink "bin")))) + (mkdir #$output)))))))) (built-derivations (list check))))) (test-end) |