summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am5
-rw-r--r--doc/guix.texi22
-rw-r--r--etc/completion/bash/guix4
-rw-r--r--etc/substitutes/berlin.guixsd.org.pub (renamed from berlin.guixsd.org.pub)0
-rw-r--r--etc/substitutes/hydra.gnu.org.pub (renamed from hydra.gnu.org.pub)0
-rw-r--r--gnu/build/install.scm77
-rw-r--r--gnu/build/linux-initrd.scm8
-rw-r--r--gnu/build/vm.scm19
-rw-r--r--gnu/local.mk3
-rw-r--r--gnu/packages/benchmark.scm6
-rw-r--r--gnu/packages/bioconductor.scm134
-rw-r--r--gnu/packages/bioinformatics.scm761
-rw-r--r--gnu/packages/ci.scm6
-rw-r--r--gnu/packages/cran.scm156
-rw-r--r--gnu/packages/gnupg.scm4
-rw-r--r--gnu/packages/graph.scm4
-rw-r--r--gnu/packages/guile.scm40
-rw-r--r--gnu/packages/kodi.scm4
-rw-r--r--gnu/packages/libreoffice.scm4
-rw-r--r--gnu/packages/maths.scm19
-rw-r--r--gnu/packages/music.scm2
-rw-r--r--gnu/packages/patches/gemma-intel-compat.patch44
-rw-r--r--gnu/packages/patches/jq-CVE-2015-8863.patch45
-rw-r--r--gnu/packages/patches/libgit2-oom-test.patch62
-rw-r--r--gnu/packages/slang.scm14
-rw-r--r--gnu/packages/statistics.scm39
-rw-r--r--gnu/packages/syncthing.scm4
-rw-r--r--gnu/packages/terminals.scm178
-rw-r--r--gnu/packages/terraform.scm11
-rw-r--r--gnu/packages/version-control.scm3
-rw-r--r--gnu/packages/video.scm8
-rw-r--r--gnu/packages/web.scm18
-rw-r--r--gnu/packages/xorg.scm52
-rw-r--r--gnu/services/base.scm11
-rw-r--r--gnu/services/cuirass.scm6
-rw-r--r--gnu/services/dns.scm4
-rw-r--r--guix/build-system/r.scm2
-rw-r--r--guix/build/store-copy.scm28
-rw-r--r--guix/docker.scm16
-rw-r--r--guix/import/cran.scm4
-rw-r--r--guix/scripts/pack.scm415
-rw-r--r--guix/scripts/pull.scm17
-rw-r--r--guix/self.scm47
-rw-r--r--guix/ssh.scm2
-rw-r--r--po/guix/de.po20
-rw-r--r--tests/guix-pack-relocatable.sh61
-rw-r--r--tests/guix-pack.sh28
-rw-r--r--tests/pack.scm156
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)