Merge branch 'master' into staging

master
Marius Bakke 2019-06-11 10:27:09 +02:00
commit 58bf51b4c0
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
32 changed files with 9708 additions and 9409 deletions

View File

@ -6466,10 +6466,11 @@ path. @var{references} is the list of store paths referred to by the
resulting store path.
@end deffn
@deffn {Scheme Procedure} build-derivations @var{server} @var{derivations}
Build @var{derivations} (a list of @code{<derivation>} objects or
derivation paths), and return when the worker is done building them.
Return @code{#t} on success.
@deffn {Scheme Procedure} build-derivations @var{store} @var{derivations} @
[@var{mode}]
Build @var{derivations}, a list of @code{<derivation>} objects, @file{.drv}
file names, or derivation/output pairs, using the specified
@var{mode}---@code{(build-mode normal)} by default.
@end deffn
Note that the @code{(guix monads)} module provides a monad as well as
@ -22723,10 +22724,10 @@ Extra options will be passed to @code{git daemon}, please run
@end deftp
The @code{git://} protocol lacks authentication. When you pull from a
repository fetched via @code{git://}, you don't know that the data you
receive was modified is really coming from the specified host, and you
have your connection is subject to eavesdropping. It's better to use an
authenticated and encrypted transport, such as @code{https}. Although Git allows you
repository fetched via @code{git://}, you don't know whether the data you
receive was modified or is even coming from the specified host, and your
connection is subject to eavesdropping. It's better to use an authenticated
and encrypted transport, such as @code{https}. Although Git allows you
to serve repositories using unsophisticated file-based web servers,
there is a faster protocol implemented by the @code{git-http-backend}
program. This program is the back-end of a proper Git web service. It
@ -24197,6 +24198,47 @@ setuid-root (@pxref{Setuid Programs}) such that unprivileged users can invoke
@command{singularity run} and similar commands.
@end defvr
@cindex Nix
@subsubheading Nix service
The @code{(gnu services nix)} module provides the following service.
@defvr {Scheme Variable} nix-service-type
This is the type of the service that runs build daemon of the
@url{https://nixos.org/nix/, Nix} package manager. Here is an example showing
how to use it:
@example
(use-modules (gnu))
(use-service-modules nix)
(use-package-modules package-management)
(operating-system
;; @dots{}
(packages (append (list nix)
%base-packages))
(services (append (list (service nix-service-type))
%base-services)))
@end example
After @command{guix system reconfigure} configure Nix for your user:
@itemize
@item Add a Nix channel and update it. See
@url{https://nixos.org/nix/manual/, Nix Package Manager Guide}.
@item Create a symlink to your profile and activate Nix profile:
@end itemize
@example
$ ln -s "/nix/var/nix/profiles/per-user/$USER/profile" ~/.nix-profile
$ source /run/current-system/profile/etc/profile.d/nix.sh
@end example
@end defvr
@node Setuid Programs
@section Setuid Programs

View File

@ -29,7 +29,7 @@
;;; Code:
(define %artwork-repository
(let ((commit "b975164c19c9c0f5d91e5731ec1683e7510c1326"))
(let ((commit "2f2fe74c1078be605a6a93c2193fd6c715cebbb0"))
(origin
(method git-fetch)
(uri (git-reference
@ -39,6 +39,6 @@
"-checkout"))
(sha256
(base32
"1fad7az077q9ds3jhp00jfsr8rfw4ws042wmnai52k7jv4kbxwyf")))))
"0c8r0phvm3wgf914n2kw1461cwdjl2zbzqvzq9x7d9pwkgv7xmq7")))))
;;; artwork.scm ends here

View File

@ -17,7 +17,7 @@
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
# Copyright © 2017, 2018 Gábor Boskovits <boskovits@gmail.com>
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
# Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
# Copyright © 2018, 2019 Oleg Pykhalov <go.wigust@gmail.com>
# Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
# Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
#
@ -526,6 +526,7 @@ GNU_SYSTEM_MODULES = \
%D%/services/messaging.scm \
%D%/services/monitoring.scm \
%D%/services/networking.scm \
%D%/services/nix.scm \
%D%/services/nfs.scm \
%D%/services/security-token.scm \
%D%/services/shepherd.scm \
@ -662,6 +663,7 @@ dist_patch_DATA = \
%D%/packages/patches/aegisub-icu59-include-unistr.patch \
%D%/packages/patches/aegisub-boost68.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/allegro-mesa-18.2.5-and-later.patch \
%D%/packages/patches/amule-crypto-6.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
@ -37,15 +37,15 @@
(define-public cfitsio
(package
(name "cfitsio")
(version "3.450")
(version "3.47")
(source
(origin
(method url-fetch)
(uri (string-append
"http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/"
name (string-replace-substring version "." "") ".tar.gz"))
name "-" version ".tar.gz"))
(sha256
(base32 "0bmrkw6w65zb0k3mszaaqy1f4zjm2hl7njww74nb5v38wvdi4q5z"))))
(base32 "1vzlxnrjckz78p2wf148v2z3krkwnykfqvlj42sz3q711vqid1a1"))))
(build-system gnu-build-system)
;; XXX Building with curl currently breaks wcslib. It doesn't use
;; pkg-config and hence won't link with -lcurl.

View File

@ -3701,7 +3701,7 @@ library.")
(define-public faudio
(package
(name "faudio")
(version "19.06")
(version "19.06.07")
(source
(origin
(method git-fetch)
@ -3710,7 +3710,7 @@ library.")
(commit version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "1azjf972hik1cizsblbvfp38xz7dx368pbpw3pd6z1xk9mnrhi6s"))))
(base32 "1w37qp279lgpyvslwz3wlb4fp0i68ncd411rqdlk5s71b1zz466n"))))
(arguments
'(#:tests? #f ; No tests.
#:configure-flags '("-DFFMPEG=ON")))

View File

@ -3621,14 +3621,14 @@ investigation using RNA-seq data.")
(define-public r-aucell
(package
(name "r-aucell")
(version "1.6.0")
(version "1.6.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "AUCell" version))
(sha256
(base32
"025q1as9pifbxa7hidlz634q6d7l73zx8mqy4rjbfrk7d5615xvm"))))
"1vd8w6dygn1b5bwlha09mm6fbwyj07pmawpv53agcg1y7jlxs31b"))))
(properties `((upstream-name . "AUCell")))
(build-system r-build-system)
(propagated-inputs
@ -4438,14 +4438,14 @@ interpretation.")
(define-public r-rhisat2
(package
(name "r-rhisat2")
(version "1.0.1")
(version "1.0.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "Rhisat2" version))
(sha256
(base32
"01jhj5vvfl4n2d0nl3nd1iw9nii85mgw2adnrmxb8wwlxgy240vr"))))
"1y3zqvk1vbcb10r1myh6f5yzjvf7bhwhpiq78bs1k6spli4bzj0q"))))
(properties `((upstream-name . "Rhisat2")))
(build-system r-build-system)
(native-inputs
@ -4606,3 +4606,74 @@ expression data to predict switches in regulatory activity between two
conditions. A Bayesian network is used to model the regulatory structure and
Markov-Chain-Monte-Carlo is applied to sample the activity states.")
(license license:gpl2+)))
(define-public r-ropls
(package
(name "r-ropls")
(version "1.16.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ropls" version))
(sha256
(base32
"099nv9dgmw3avkxv7cd27r16yj56svjlp5q4i389yp1n0r5zhyl2"))))
(build-system r-build-system)
(propagated-inputs `(("r-biobase" ,r-biobase)))
(native-inputs
`(("r-knitr" ,r-knitr))) ; for vignettes
(home-page "https://dx.doi.org/10.1021/acs.jproteome.5b00354")
(synopsis "Multivariate analysis and feature selection of omics data")
(description
"Latent variable modeling with @dfn{Principal Component Analysis} (PCA)
and @dfn{Partial Least Squares} (PLS) are powerful methods for visualization,
regression, classification, and feature selection of omics data where the
number of variables exceeds the number of samples and with multicollinearity
among variables. @dfn{Orthogonal Partial Least Squares} (OPLS) enables to
separately model the variation correlated (predictive) to the factor of
interest and the uncorrelated (orthogonal) variation. While performing
similarly to PLS, OPLS facilitates interpretation.
This package provides imlementations of PCA, PLS, and OPLS for multivariate
analysis and feature selection of omics data. In addition to scores, loadings
and weights plots, the package provides metrics and graphics to determine the
optimal number of components (e.g. with the R2 and Q2 coefficients), check the
validity of the model by permutation testing, detect outliers, and perform
feature selection (e.g. with Variable Importance in Projection or regression
coefficients).")
(license license:cecill)))
(define-public r-biosigner
(package
(name "r-biosigner")
(version "1.12.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biosigner" version))
(sha256
(base32
"1643iya40v6whb7lw7y34w5sanbasvj4yhvcygbip667yhphyv5b"))))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-e1071" ,r-e1071)
("r-randomforest" ,r-randomforest)
("r-ropls" ,r-ropls)))
(native-inputs
`(("r-knitr" ,r-knitr)
("r-rmarkdown" ,r-rmarkdown)
("pandoc" ,ghc-pandoc)
("pandoc-citeproc" ,ghc-pandoc-citeproc))) ; all for vignettes
(home-page "https://bioconductor.org/packages/biosigner/")
(synopsis "Signature discovery from omics data")
(description
"Feature selection is critical in omics data analysis to extract
restricted and meaningful molecular signatures from complex and high-dimension
data, and to build robust classifiers. This package implements a method to
assess the relevance of the variables for the prediction performances of the
classifier. The approach can be run in parallel with the PLS-DA, Random
Forest, and SVM binary classifiers. The signatures and the corresponding
'restricted' models are returned, enabling future predictions on new
datasets.")
(license license:cecill)))

View File

@ -7373,13 +7373,13 @@ S4Vectors package itself.")
(define-public r-iranges
(package
(name "r-iranges")
(version "2.18.0")
(version "2.18.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "IRanges" version))
(sha256
(base32
"0g06y6xlm2q7p7g7phfc8qj14pqpgbb0mkyjzkfgsrwjmzvpwy6m"))))
"1d64sh43pfc9vj2l7y7x6sb44l67wlnn3dzygp7ws0smn06mardq"))))
(properties
`((upstream-name . "IRanges")))
(build-system r-build-system)
@ -9370,14 +9370,14 @@ structure (pcaRes) to provide a common interface to the PCA results.")
(define-public r-msnbase
(package
(name "r-msnbase")
(version "2.10.0")
(version "2.10.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "MSnbase" version))
(sha256
(base32
"1lqdlyvs2c9g55zf8gnw142ps4jid644fhfvclnax7sjjwrqdjzv"))))
"0z63yqazkycq0zbbarq9ida6al35hv3g7g9g7s7bss4gh0hk7lhd"))))
(properties `((upstream-name . "MSnbase")))
(build-system r-build-system)
(propagated-inputs

View File

@ -2819,14 +2819,14 @@ color labels, layout, etc.")
(define-public r-stringdist
(package
(name "r-stringdist")
(version "0.9.5.1")
(version "0.9.5.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "stringdist" version))
(sha256
(base32
"0gap1g9xwhp0zxqsznkc2carpvi80z03prr4q8m528684lznx2xa"))))
"0nw8c317qkfq63pr0prl0hx522ddfq4cbgixb5r4pq3fxk9z303l"))))
(build-system r-build-system)
(home-page "https://github.com/markvanderloo/stringdist")
(synopsis "Approximate string matching and string distance functions")
@ -3583,14 +3583,14 @@ Markdown documents.")
(define-public r-seriation
(package
(name "r-seriation")
(version "1.2-5")
(version "1.2-7")
(source
(origin
(method url-fetch)
(uri (cran-uri "seriation" version))
(sha256
(base32
"0sk4wfwxxhz3nwbcsfshb93gra4c9p5pvpsz00d7f9nkkmhs97ws"))))
"0dbz5b5msy4fr2whhphyriqk1xc6305zpjq59rrwxyz3d7rzwpa6"))))
(build-system r-build-system)
(propagated-inputs
`(("r-cluster" ,r-cluster)
@ -3833,14 +3833,14 @@ supports arbitrary vertex/edge/graph attributes.")
(define-public r-statnet-common
(package
(name "r-statnet-common")
(version "4.2.0")
(version "4.3.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "statnet.common" version))
(sha256
(base32
"0q942g6kqmqxfss1cxb3yg8y5r1k1h5cyy99s1cfisrn6hqc6xhi"))))
"0ng90i0wm9wlyhjbnmnylc1bbqw396p1dr7f402dyry9x9ck6jl3"))))
(properties
`((upstream-name . "statnet.common")))
(build-system r-build-system)
@ -4033,14 +4033,14 @@ financial trading strategies.")
(define-public r-tseries
(package
(name "r-tseries")
(version "0.10-46")
(version "0.10-47")
(source
(origin
(method url-fetch)
(uri (cran-uri "tseries" version))
(sha256
(base32
"08kjw0bfj5gfcrxpblwqxwna8a5g9gnr7ya61qb02r263pyhm50j"))))
"0yzvc9djp3angvxdxqi60wi726y76ablsb71q88ycvw0avgpf8r0"))))
(build-system r-build-system)
(propagated-inputs
`(("r-quadprog" ,r-quadprog)
@ -5933,22 +5933,22 @@ information are missing.")
(define-public r-sjlabelled
(package
(name "r-sjlabelled")
(version "1.0.17")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "sjlabelled" version))
(sha256
(base32
"00c0c22ynpihgf2bvmcfnkvqwqvxax2zzb7wldsmg2f7z5a32aa6"))))
"0rnmlwpp41h04dzfjd5ncvzjzs43slaimb4v2in1axznv3haafyc"))))
(build-system r-build-system)
(propagated-inputs
`(("r-dplyr" ,r-dplyr)
("r-haven" ,r-haven)
`(("r-haven" ,r-haven)
("r-insight" ,r-insight)
("r-magrittr" ,r-magrittr)
("r-purrr" ,r-purrr)
("r-rlang" ,r-rlang)))
("r-rlang" ,r-rlang)
("r-tidyselect" ,r-tidyselect)))
(home-page "https://github.com/strengejacke/sjlabelled")
(synopsis "Labelled data utility functions")
(description
@ -6364,14 +6364,14 @@ containing one or more SNPs that evolved under directional selection.")
(define-public r-proc
(package
(name "r-proc")
(version "1.14.0")
(version "1.15.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "pROC" version))
(sha256
(base32
"0ki1pvj5iaki81crapvwqllg5avn5qlvv62axnsdkdcmv9xc3wg0"))))
"1dxxkwdhxfnj2znq4c5ggrr9m5klh5pmfxg17rz59vr2hfb73m24"))))
(properties `((upstream-name . "pROC")))
(build-system r-build-system)
(propagated-inputs
@ -7850,25 +7850,26 @@ detection, parallelism through BLAS and parallel user templates.")
(define-public r-sjstats
(package
(name "r-sjstats")
(version "0.17.4")
(version "0.17.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "sjstats" version))
(sha256
(base32
"012hp9m17xzjnsfvjjz2wdfgxm3irsrfx0zmahfnfmgdrwxd5vk5"))))
"1x9ybvz84vgaabmqp4z6crbv5q6kqjg6msk1spbr11zx9dbj06ca"))))
(build-system r-build-system)
(propagated-inputs
`(("r-broom" ,r-broom)
`(("r-bayestestr" ,r-bayestestr)
("r-broom" ,r-broom)
("r-dplyr" ,r-dplyr)
("r-emmeans" ,r-emmeans)
("r-insight" ,r-insight)
("r-lme4" ,r-lme4)
("r-magrittr" ,r-magrittr)
("r-mass" ,r-mass)
("r-matrix" ,r-matrix)
("r-modelr" ,r-modelr)
("r-performance" ,r-performance)
("r-purrr" ,r-purrr)
("r-rlang" ,r-rlang)
("r-sjlabelled" ,r-sjlabelled)
@ -7948,14 +7949,14 @@ ROPE percentage and pd).")
(define-public r-performance
(package
(name "r-performance")
(version "0.1.0")
(version "0.2.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "performance" version))
(sha256
(base32
"19lfx25hkavzbycrh6hq4v24a0dz4s60ryq6jyihjlxgrb9g7cnw"))))
"1pzd6z7i1jxr2xi1shg3d0bxlbpmjl7kpmwgjnfys6syv57znd1z"))))
(build-system r-build-system)
(propagated-inputs
`(("r-bayestestr" ,r-bayestestr)
@ -9766,14 +9767,14 @@ the combination of non-negative and non-positive constraints.")
(define-public r-iso
(package
(name "r-iso")
(version "0.0-17")
(version "0.0-18")
(source
(origin
(method url-fetch)
(uri (cran-uri "Iso" version))
(sha256
(base32
"0lljc99sdzdqj6d56qbsggibr6pkdwkh821bj70ianikyvmdc1y0"))))
"014mm5b1f7i6nwlz3kyg1biph0y542kcx5bd13p68cv5a928qzid"))))
(properties `((upstream-name . "Iso")))
(build-system r-build-system)
(native-inputs `(("gfortran" ,gfortran)))
@ -11025,14 +11026,14 @@ machine or distributed on a compute cluster.")
(define-public r-rsvd
(package
(name "r-rsvd")
(version "1.0.0")
(version "1.0.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "rsvd" version))
(sha256
(base32
"0vjhrvnkl9rmvl8sv2kac5sd10z3fgxymb676ynxzc2pmhydy3an"))))
"1faskhf5j2bj9f971qljsmh182g3rnyilj1wwijz530a6skxidzz"))))
(build-system r-build-system)
(propagated-inputs
`(("r-matrix" ,r-matrix)))

View File

@ -33,6 +33,7 @@
;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Jack Hill <jackhill@jackhill.us>
;;;
;;; This file is part of GNU Guix.
;;;
@ -108,6 +109,7 @@
#:use-module (guix download)
#:use-module (guix bzr-download)
#:use-module (guix git-download)
#:use-module (guix build-system emacs)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system perl)
@ -928,8 +930,7 @@ organized in a hash table or B+ tree.")
(assoc-ref %build-inputs "bash:include")
"/include/bash"))))
(native-inputs `(("emacs" ,emacs-minimal)
("bc" ,bc)
(native-inputs `(("bc" ,bc)
("bash:include" ,bash "include")
("check" ,check)
("libuuid" ,util-linux)
@ -948,6 +949,26 @@ types are supported, as is encryption.")
(license license:gpl3+)
(home-page "https://www.gnu.org/software/recutils/")))
(define-public emacs-recutils
(package
(inherit recutils)
(name "emacs-recutils")
(build-system emacs-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'change-directory
(lambda _
(chdir "etc")
#t)))))
(native-inputs '())
(inputs '())
(synopsis "Emacs mode for working with recutils database files")
(description "This package provides an Emacs major mode @code{rec-mode}
for working with GNU Recutils text-based, human-editable databases. It
supports editing, navigation, and querying of recutils database files
including field and record folding.")))
(define-public rocksdb
(package
(name "rocksdb")

View File

@ -8534,29 +8534,32 @@ key. Optionally, a mouse pop-up can be added by binding
(license license:gpl3+)))
(define-public emacs-idris-mode
(package
(name "emacs-idris-mode")
(version "0.9.19")
(source
(origin
(method url-fetch)
(uri (string-append
"http://stable.melpa.org/packages/idris-mode-"
version ".tar"))
(sha256
(base32
"16hl2s22l3wc9drnwzw6hn7xrm49ml9lii0s6k218dgahdgsncmf"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-prop-menu" ,emacs-prop-menu)))
(home-page
"https://github.com/idris-hackers/idris-mode")
(synopsis "Major mode for editing Idris code")
(description
"This is an Emacs mode for editing Idris code. It requires the latest
(let ((commit "acc8835449475d7cd205aba213fdd3d41c38ba40")
(revision "0"))
(package
(name "emacs-idris-mode")
(version (git-version "0.9.19" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/idris-hackers/idris-mode.git")
(commit commit)))
(file-name (git-file-name name commit))
(sha256
(base32
"0n9xbknc68id0mf8hbfmawi8qpvrs47ix807sk9ffv2g3ik32kk6"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-prop-menu" ,emacs-prop-menu)))
(home-page
"https://github.com/idris-hackers/idris-mode")
(synopsis "Major mode for editing Idris code")
(description
"This is an Emacs mode for editing Idris code. It requires the latest
version of Idris, and some features may rely on the latest Git version of
Idris.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-browse-at-remote
(package

View File

@ -733,7 +733,7 @@ mixed vector/bitmap output.")
(define-public virtualgl
(package
(name "virtualgl")
(version "2.6.1")
(version "2.6.2")
(source
(origin
(method git-fetch)
@ -742,7 +742,7 @@ mixed vector/bitmap output.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "04fdwm6mz76lw4iwd5m7yxjfhpa0rpxd357bv5smk5lclnlbz1bv"))))
(base32 "0yyc553xsb5n0rx7jp9p4wdbd7md07b3qrkf3ssyjavqqg908qg9"))))
(arguments
`(#:tests? #f ; no tests are available
#:configure-flags (list

View File

@ -2115,7 +2115,7 @@ Hints specification (EWMH).")
(define-public gnumeric
(package
(name "gnumeric")
(version "1.12.44")
(version "1.12.45")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/gnumeric/"
@ -2123,7 +2123,7 @@ Hints specification (EWMH).")
"gnumeric-" version ".tar.xz"))
(sha256
(base32
"0147962c6ybdsj57rz95nla0rls7g545wc2n7pz59zmzyd5pksk0"))))
"0c8dl1kvnj3g32qy3s92qpqpqfy0in59cx005gjvvzsflahav61h"))))
(build-system glib-or-gtk-build-system)
(arguments
`(;; The gnumeric developers don't worry much about failing tests.
@ -5467,7 +5467,7 @@ to virtual private networks (VPNs) via OpenVPN.")
(define-public mobile-broadband-provider-info
(package
(name "mobile-broadband-provider-info")
(version "20170310")
(version "20190116")
(source (origin
(method url-fetch)
(uri (string-append
@ -5476,10 +5476,10 @@ to virtual private networks (VPNs) via OpenVPN.")
"mobile-broadband-provider-info-" version ".tar.xz"))
(sha256
(base32
"0fxm11x8k9hxjg8l5inaldfmmjnwkay3ibjv899jra03bv4h6kql"))))
"16y5lc7pfdvai9c8xwb825zc3v46039gghbip13fqslf5gw11fic"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; No tests
`(#:tests? #f)) ; no tests
(home-page "https://wiki.gnome.org/Projects/NetworkManager")
(synopsis "Database of broadband connection configuration")
(description "Database of broadband connection configuration.")

View File

@ -1600,7 +1600,7 @@ identical visual appearance.")
(define-public grim
(package
(name "grim")
(version "1.1")
(version "1.2.0")
(source
(origin
(method git-fetch)
@ -1609,7 +1609,7 @@ identical visual appearance.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1bcvkggqszcwy6hg8g4mch3yr25ic0baafbd90af5s5mrhrjxxxz"))))
(base32 "0brljl4zfbn5mh9hkfrfkvd27c5y9vdkgap9r1hrfy9r1x20sskn"))))
(build-system meson-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("cairo" ,cairo)
@ -1626,7 +1626,7 @@ identical visual appearance.")
(define-public slurp
(package
(name "slurp")
(version "1.0.1")
(version "1.2.0")
(source
(origin
(method git-fetch)
@ -1635,7 +1635,7 @@ identical visual appearance.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "072lkwhpvr753wfqzmd994bnhbrgfavxcgqcyml7abab28sdhs1y"))))
(base32 "0580m6kaiilgsrcj608r837r37sl6a25y7w21p7d6ij20fs3gvg1"))))
(build-system meson-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("cairo" ,cairo)

View File

@ -430,8 +430,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
It has been modified to remove all non-free binary blobs.")
(license license:gpl2)))
(define %linux-libre-version "5.1.7")
(define %linux-libre-hash "0hr4sbapdpgdkb6xg1f7bpc31242yiqdvy5sfpymsrzfslr8vwy1")
(define %linux-libre-version "5.1.8")
(define %linux-libre-hash "1vkirlz9vsvym8fdbvj308n3hj8f9j8n9m267x0dhlgbmig570j2")
(define %linux-libre-5.1-patches
(list %boot-logo-patch
@ -448,8 +448,8 @@ It has been modified to remove all non-free binary blobs.")
(make-linux-libre-headers %linux-libre-version
%linux-libre-hash))
(define %linux-libre-4.19-version "4.19.48")
(define %linux-libre-4.19-hash "04jwwzc9wbhx33i4bhm3vbs52vxlb8kjdmfjpfild94xbk8m2wy4")
(define %linux-libre-4.19-version "4.19.49")
(define %linux-libre-4.19-hash "0dxmm8190h0g5indj3sqfipkji10y3icr8xnf7bbz7086nkkrcvz")
(define %linux-libre-4.19-patches
(list %boot-logo-patch
@ -466,22 +466,8 @@ It has been modified to remove all non-free binary blobs.")
(make-linux-libre-headers %linux-libre-4.19-version
%linux-libre-4.19-hash))
(define %linux-libre-4.15-version "4.15.18")
(define %linux-libre-4.15-hash "0f0s4drx888ydlwjcm9qcxqian4850yiv2vamyw9bbjf83frwxyw")
(define-public linux-libre-4.15
(make-linux-libre %linux-libre-4.15-version
%linux-libre-4.15-hash
'("x86_64-linux" "i686-linux" "armhf-linux")
#:configuration-file kernel-config))
(define-public linux-libre-headers-4.15
(make-linux-libre-headers %linux-libre-4.15-version
%linux-libre-4.15-hash))
(define %linux-libre-4.14-version "4.14.123")
(define %linux-libre-4.14-hash "185kf576rwhsaq7jqrnmg8r5fh2nh4k8lifxaxwi3amshnwbj2qg")
(define %linux-libre-4.14-version "4.14.124")
(define %linux-libre-4.14-hash "0z9iaz1rcm9472rjvcihmq65ygyks07j6kbiqm989r9rb4dw6ghg")
(define-public linux-libre-4.14
(make-linux-libre %linux-libre-4.14-version
@ -4405,15 +4391,16 @@ developers.")
(define-public radeontop
(package
(name "radeontop")
(version "1.1")
(home-page "https://github.com/clbr/radeontop/")
(source (origin
(method url-fetch)
(uri (string-append home-page "archive/v" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1fv06j5c99imvzkac3j40lgjhr5b2i77fnyffhlvj92bli1fm1c6"))))
(version "1.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/clbr/radeontop.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1b1m30r2nfwqkajqw6m01xmfhlq83z1qylyijxg7962mp9x2k0gw"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -4437,6 +4424,7 @@ developers.")
("libpciaccess" ,libpciaccess)
("libxcb" ,libxcb)
("ncurses" ,ncurses)))
(home-page "https://github.com/clbr/radeontop/")
(synopsis "Usage monitor for AMD Radeon graphics")
(description "RadeonTop monitors resource consumption on supported AMD
Radeon Graphics Processing Units (GPUs), either in real time as bar graphs on

View File

@ -581,7 +581,7 @@ and corrections. It is based on a Bayesian filter.")
(define-public offlineimap
(package
(name "offlineimap")
(version "7.2.3")
(version "7.2.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -590,7 +590,7 @@ and corrections. It is based on a Bayesian filter.")
(file-name (git-file-name name version))
(sha256
(base32
"18sdnhjldn8zs03bgqy1qa3ikmlfvyxcvwp3nbnv1a74biccqbpa"))))
"0h5q5nk2p2vx86w6rrbs7v70h81dpqqr68x6l3klzl3m0yj9agb1"))))
(build-system python-build-system)
(native-inputs
`(("asciidoc" ,asciidoc)))

View File

@ -0,0 +1,41 @@
Fixes compilation with Mesa >= 18.2.5.
Taken from upstream:
https://github.com/liballeg/allegro5/commit/a40d30e21802ecf5c9382cf34af9b01bd3781e47
diff --git a/include/allegro5/allegro_opengl.h b/include/allegro5/allegro_opengl.h
index 0f86a6768..652dd024e 100644
--- a/include/allegro5/allegro_opengl.h
+++ b/include/allegro5/allegro_opengl.h
@@ -103,10 +103,14 @@
/* HACK: Prevent both Mesa and SGI's broken headers from screwing us */
#define __glext_h_
+#define __gl_glext_h_
#define __glxext_h_
+#define __glx_glxext_h_
#include <GL/gl.h>
#undef __glext_h_
+#undef __gl_glext_h_
#undef __glxext_h_
+#undef __glx_glxext_h_
#endif /* ALLEGRO_MACOSX */
diff --git a/include/allegro5/opengl/GLext/glx_ext_defs.h b/include/allegro5/opengl/GLext/glx_ext_defs.h
index 49c502091..fba8aea5d 100644
--- a/include/allegro5/opengl/GLext/glx_ext_defs.h
+++ b/include/allegro5/opengl/GLext/glx_ext_defs.h
@@ -1,7 +1,9 @@
/* HACK: Prevent both Mesa and SGI's broken headers from screwing us */
#define __glxext_h_
+#define __glx_glxext_h_
#include <GL/glx.h>
#undef __glxext_h_
+#undef __glx_glxext_h_
#ifndef GLX_VERSION_1_3
#define _ALLEGRO_GLX_VERSION_1_3
--
2.20.0

View File

@ -1404,13 +1404,13 @@ data derived from /etc/mime.types in UNIX-type systems.")
(define-public r-markdown
(package
(name "r-markdown")
(version "0.9")
(version "1.0")
(source (origin
(method url-fetch)
(uri (cran-uri "markdown" version))
(sha256
(base32
"08xzs4bcf12jxp0276m6xqvq8kcgg5qp6fxrvsz6r9x73jjccs1h"))))
"19nrz0ba1yd5kicd65crkkz2r3kialm2hm6zdkp495l2s5r80b8p"))))
(build-system r-build-system)
;; Skip check phase because the tests require the r-knitr package to be
;; installed. This prevents installation failures. Knitr normally
@ -1670,14 +1670,14 @@ like tidy evaluation.")
(define-public r-tibble
(package
(name "r-tibble")
(version "2.1.2")
(version "2.1.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "tibble" version))
(sha256
(base32
"1sb5j6k8hp7yf7grjjhn45hhc163fcndiw9zw976zc74f1856kpj"))))
"06jfayiip8j8ibdhw3fvxn4n8aqbqhwanrszpzlsf92xdfgfm34s"))))
(build-system r-build-system)
(propagated-inputs
`(("r-cli" ,r-cli)
@ -1731,14 +1731,14 @@ database.")
(define-public r-dbplyr
(package
(name "r-dbplyr")
(version "1.4.0")
(version "1.4.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "dbplyr" version))
(sha256
(base32
"0f4gfkzl07gfwihyc747kdnzxahaw2g28wli4jmikrvczldvjqjx"))))
"15fs66qq2p20gi3y2jlcsw27ach8rwkkkgr1mz2qbiyddbsjks6g"))))
(build-system r-build-system)
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
@ -2882,13 +2882,13 @@ ldap, and also supports cookies, redirects, authentication, etc.")
(define-public r-xml
(package
(name "r-xml")
(version "3.98-1.19")
(version "3.98-1.20")
(source (origin
(method url-fetch)
(uri (cran-uri "XML" version))
(sha256
(base32
"1axyfa56q45x7z4zd56aasdn9hz9niv2vv5qm1zp9i94vyic9cc1"))))
"0n28m8iz1wfgixr7fjswl238c5w9kggsrw0c8hdzp859dqvqdbs6"))))
(properties
`((upstream-name . "XML")))
(build-system r-build-system)
@ -3365,14 +3365,14 @@ Stochastic Neighbor Embedding using a Barnes-Hut implementation.")
(define-public r-e1071
(package
(name "r-e1071")
(version "1.7-1")
(version "1.7-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "e1071" version))
(sha256
(base32
"1zlxz3da216q6v6r4ff60il121xwz7g7m639vzdwglhw3jjh8psw"))))
"0lipj692rjjw8rrhqh2k9i5dh8y2sjrw9q53rwm32irhx2f2j73j"))))
(build-system r-build-system)
(propagated-inputs
`(("r-class" ,r-class)))
@ -4772,14 +4772,14 @@ and resampling-based inference.")
(define-public r-prabclus
(package
(name "r-prabclus")
(version "2.2-7.1")
(version "2.3-1")
(source
(origin
(method url-fetch)
(uri (cran-uri "prabclus" version))
(sha256
(base32
"0x998nidd7abq5nqynyr8q79z056qbli23mvad6f09fjn2xz6nrc"))))
"1h5k13w8mmmdy74l145zh64f339wy78z1nlg8xr3zg23gmv98cpg"))))
(build-system r-build-system)
(propagated-inputs
`(("r-mass" ,r-mass)
@ -4968,14 +4968,14 @@ of the points.")
(define-public r-fpc
(package
(name "r-fpc")
(version "2.2-1")
(version "2.2-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "fpc" version))
(sha256
(base32
"183awn9fbigsy3rwmg5l39zpfg2zpbb94hkx7k99v2dir8dpdy85"))))
"1lzqxi2jzc753j4356b949isx2nccd32mw2ch665q78nxccp145n"))))
(build-system r-build-system)
(propagated-inputs
`(("r-class" ,r-class)
@ -5139,14 +5139,14 @@ using modular prediction and response module classes.")
(define-public r-quantreg
(package
(name "r-quantreg")
(version "5.38")
(version "5.40")
(source
(origin
(method url-fetch)
(uri (cran-uri "quantreg" version))
(sha256
(base32
"1vvvnk291f0dccg04l3nsnk585gq75sk0b2vdbrqv3lczvv18nw1"))))
"1srni6lkgvy44ljxndz2j9ca702z2wy81f6z6mbbi6h06ni11qw6"))))
(build-system r-build-system)
(native-inputs
`(("gfortran" ,gfortran)))
@ -5377,14 +5377,14 @@ are computed via non-Monte Carlo methods.")
(define-public r-numderiv
(package
(name "r-numderiv")
(version "2016.8-1")
(version "2016.8-1.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "numDeriv" version))
(sha256
(base32
"07ni52rwiap4wilfz94w5mrqaxr59axxmgn57857ip4p6qkiss0v"))))
"0idk02pqkziik932bd8k72d1q775g1is3m4bc861pcxfz6gx3i6q"))))
(properties `((upstream-name . "numDeriv")))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/numDeriv")

View File

@ -28,7 +28,7 @@
(define-public tbb
(package
(name "tbb")
(version "2019_U6")
(version "2019_U8")
(source (origin
(method git-fetch)
(uri (git-reference
@ -37,7 +37,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"1zbf06l659vq6s5wp3ln96ycwcd42caffan5vilqvqyxqvjljyic"))
"0z0kh1a5g28gckcxlv3x7qqskh5fsl8knf2ypbbvk7z9ln9k3wfq"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -924,7 +924,7 @@ tmux.")
(define-public kitty
(package
(name "kitty")
(version "0.14.1")
(version "0.14.2")
(home-page "https://sw.kovidgoyal.net/kitty/")
(source
(origin
@ -935,7 +935,7 @@ tmux.")
(file-name (git-file-name name version))
(sha256
(base32
"0nm8l8ki0csdapf5mj3vg605ki5hjsx7h7i3m01x1a4vjzjmk8bv"))
"15iv3k7iryf10n8n67d37x24pzcarq97a3dr42lbld00k1lx19az"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -310,7 +310,7 @@ integrate Windows applications into your desktop.")
(define-public wine-staging-patchset-data
(package
(name "wine-staging-patchset-data")
(version "4.9")
(version "4.10")
(source
(origin
(method git-fetch)
@ -320,7 +320,7 @@ integrate Windows applications into your desktop.")
(file-name (git-file-name name version))
(sha256
(base32
"17v66rsxvm3grglidxxzllw4msfrgwg35hmzanvrf8x8jfzjlvv2"))))
"0kl5718c4xk8d1va1jb5jaa2n0vw3l0hi6bpc7siaww1fp64hy98"))))
(build-system trivial-build-system)
(native-inputs
`(("bash" ,bash)
@ -366,7 +366,7 @@ integrate Windows applications into your desktop.")
(file-name (string-append name "-" version ".tar.xz"))
(sha256
(base32
"16vrzhhk0x862mfhninx5515s76j2kbjgmz7gzdigjzkzwi8x14i"))))
"041d3km85iqbshspy9av1fxjwq18xldrb18j04xl2fmpv1hq3pas"))))
(inputs `(("autoconf" ,autoconf) ; for autoreconf
("faudio" ,faudio)
("ffmpeg" ,ffmpeg)

View File

@ -28,6 +28,7 @@
#:use-module (guix store)
#:use-module (guix deprecation)
#:use-module (gnu services)
#:use-module (gnu services admin)
#:use-module (gnu services shepherd)
#:use-module (gnu system pam)
#:use-module (gnu system shadow) ; 'user-account', etc.
@ -1824,7 +1825,8 @@ raise a deprecation warning if the 'compression-level' field was used."
#:environment-variables
(list (string-append "GUIX_LOCPATH="
#$glibc-utf8-locales "/lib/locale")
"LC_ALL=en_US.utf8")))
"LC_ALL=en_US.utf8")
#:log-file "/var/log/guix-publish.log"))
(stop #~(make-kill-destructor))))))
(define %guix-publish-accounts
@ -1837,6 +1839,10 @@ raise a deprecation warning if the 'compression-level' field was used."
(home-directory "/var/empty")
(shell (file-append shadow "/sbin/nologin")))))
(define %guix-publish-log-rotations
(list (log-rotation
(files (list "/var/log/guix-publish.log")))))
(define (guix-publish-activation config)
(let ((cache (guix-publish-configuration-cache config)))
(if cache
@ -1858,6 +1864,8 @@ raise a deprecation warning if the 'compression-level' field was used."
guix-publish-shepherd-service)
(service-extension account-service-type
(const %guix-publish-accounts))
(service-extension rottlog-service-type
(const %guix-publish-log-rotations))
(service-extension activation-service-type
guix-publish-activation)))
(default-value (guix-publish-configuration))

112
gnu/services/nix.scm Normal file
View File

@ -0,0 +1,112 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Oleg Pykhalov <go.wigust@gmail.com>
;;;
;;; 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/>.
(define-module (gnu services nix)
#:use-module (gnu packages admin)
#:use-module (gnu packages package-management)
#:use-module (gnu services base)
#:use-module (gnu services configuration)
#:use-module (gnu services shepherd)
#:use-module (gnu services web)
#:use-module (gnu services)
#:use-module (gnu system shadow)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix records)
#:use-module (guix store)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:export (nix-service-type))
;;; Commentary:
;;;
;;; This module provides a service definition for the Nix daemon.
;;;
;;; Code:
;;;
;;; Accounts
;;;
;; Copied from gnu/services/base.scm
(define* (nix-build-accounts count #:key
(group "nixbld")
(shadow shadow))
"Return a list of COUNT user accounts for Nix build users with the given
GID."
(unfold (cut > <> count)
(lambda (n)
(user-account
(name (format #f "nixbld~2,'0d" n))
(system? #t)
(group group)
(supplementary-groups (list group "kvm"))
(comment (format #f "Nix Build User ~2d" n))
(home-directory "/var/empty")
(shell (file-append shadow "/sbin/nologin"))))
1+
1))
(define (nix-accounts _)
"Return the user accounts and user groups."
(cons (user-group
(name "nixbld")
(system? #t)
;; Use a fixed GID so that we can create the store with the right
;; owner.
(id 40000))
(nix-build-accounts 10 #:group "nixbld")))
(define (nix-activation _)
"Return the activation gexp."
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(for-each (cut mkdir-p <>) '("/nix/store" "/nix/var/log"
"/nix/var/nix/gcroots/per-user"
"/nix/var/nix/profiles/per-user"))
(chown "/nix/store"
(passwd:uid (getpw "root")) (group:gid (getpw "nixbld01")))
(chmod "/nix/store" #o775)
(for-each (cut chmod <> #o777) '("/nix/var/nix/profiles"
"/nix/var/nix/profiles/per-user")))))
(define (nix-shepherd-service _)
"Return a <shepherd-service> for Nix."
(list
(shepherd-service
(provision '(nix-daemon))
(documentation "Run nix-daemon.")
(requirement '())
(start #~(make-forkexec-constructor
(list (string-append #$nix "/bin/nix-daemon"))))
(respawn? #f)
(stop #~(make-kill-destructor)))))
(define nix-service-type
(service-type
(name 'nix)
(extensions
(list (service-extension shepherd-root-service-type nix-shepherd-service)
(service-extension account-service-type nix-accounts)
(service-extension activation-service-type nix-activation)))
(default-value '())
(description "Run the Nix daemon.")))
;;; nix.scm ends here

View File

@ -465,7 +465,7 @@ desktop session from the system or user profile will be used."
(define %default-slim-theme-name
;; This must be the name of the sub-directory in %DEFAULT-SLIM-THEME that
;; contains the actual theme files.
"0.x")
"1.x")
(define-record-type* <slim-configuration>
slim-configuration make-slim-configuration

View File

@ -982,12 +982,17 @@ recursively."
(define* (build-derivations store derivations
#:optional (mode (build-mode normal)))
"Build DERIVATIONS, a list of <derivation> objects or .drv file names, using
the specified MODE."
"Build DERIVATIONS, a list of <derivation> objects, .drv file names, or
derivation/output pairs, using the specified MODE."
(build-things store (map (match-lambda
((? derivation? drv)
(derivation-file-name drv))
((? string? file) file)
((and drv ($ <derivation>))
(derivation-file-name drv)))
(((? derivation? drv) . output)
(cons (derivation-file-name drv)
output))
(((? string? file) . output)
(cons file output)))
derivations)
mode))

View File

@ -393,8 +393,8 @@
(module-autoload! (current-module)
'(guix base16) '(bytevector->base16-string))
(list (guix-publish "mirror.hydra.gnu.org")
(guix-publish "berlin.guixsd.org")
(list (guix-publish "ci.guix.gnu.org")
(guix-publish "mirror.hydra.gnu.org")
(lambda (file algo hash)
;; 'tarballs.nixos.org' supports several algorithms.
(string-append "https://tarballs.nixos.org/"

View File

@ -621,9 +621,9 @@ releases are on gnu.org."
(false-if-ftp-error
(latest-ftp-release
(package-upstream-name package)
#:server "mirrors.mit.edu"
#:directory
(string-append "/kde" (dirname (dirname (uri-path uri))))))))
#:server "ftp.mirrorservice.org"
#:directory (string-append "/sites/ftp.kde.org/pub/kde/"
(dirname (dirname (uri-path uri))))))))
(define (latest-xorg-release package)
"Return the latest release of PACKAGE, the name of an X.org package."

View File

@ -455,8 +455,9 @@ the image."
#$profile
#:database #+database
#:system (or #$target (utsname:machine (uname)))
#:entry-point (string-append #$profile "/"
#$entry-point)
#:entry-point #$(and entry-point
#~(string-append #$profile "/"
#$entry-point))
#:symlinks '#$symlinks
#:compressor '#$(compressor-command compressor)
#:creation-time (make-time time-utc 0 1))))))

View File

@ -33,6 +33,7 @@
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (ice-9 match)
#:use-module (ice-9 format)
#:use-module (ice-9 binary-ports)
#:export (open-ssh-session
remote-inferior

View File

@ -1211,16 +1211,22 @@ an arbitrary directory layout in the store without creating a derivation."
"Build THINGS, a list of store items which may be either '.drv' files or
outputs, and return when the worker is done building them. Elements of THINGS
that are not derivations can only be substituted and not built locally.
Return #t on success."
(parameterize ((current-store-protocol-version
(store-connection-version store)))
(if (>= (store-connection-minor-version store) 15)
(build store things mode)
(if (= mode (build-mode normal))
(build/old store things)
(raise (condition (&store-protocol-error
(message "unsupported build mode")
(status 1))))))))))
Alternately, an element of THING can be a derivation/output name pair, in
which case the daemon will attempt to substitute just the requested output of
the derivation. Return #t on success."
(let ((things (map (match-lambda
((drv . output) (string-append drv "!" output))
(thing thing))
things)))
(parameterize ((current-store-protocol-version
(store-connection-version store)))
(if (>= (store-connection-minor-version store) 15)
(build store things mode)
(if (= mode (build-mode normal))
(build/old store things)
(raise (condition (&store-protocol-error
(message "unsupported build mode")
(status 1)))))))))))
(define-operation (add-temp-root (store-path path))
"Make PATH a temporary root for the duration of the current session.

File diff suppressed because it is too large Load Diff

View File

@ -787,6 +787,28 @@
(build-derivations store (list drv))
#f)))
(test-assert "build-derivations with specific output"
(with-store store
(let* ((content (random-text)) ;contents of the output
(drv (build-expression->derivation
store "substitute-me"
`(begin ,content (exit 1)) ;would fail
#:outputs '("out" "one" "two")
#:guile-for-build
(package-derivation store %bootstrap-guile)))
(out (derivation->output-path drv)))
(with-derivation-substitute drv content
(set-build-options store #:use-substitutes? #t
#:substitute-urls (%test-substitute-urls))
(and (has-substitutes? store out)
;; Ask for nothing but the "out" output of DRV.
(build-derivations store `((,drv . "out")))
(valid-path? store out)
(equal? (pk 'x content) (pk 'y (call-with-input-file out get-string-all)))
)))))
(test-assert "build-expression->derivation and derivation-prerequisites-to-build"
(let ((drv (build-expression->derivation %store "fail" #f)))
;; The only direct dependency is (%guile-for-build) and it's already

View File

@ -599,6 +599,26 @@
(valid-path? s o)
(equal? c (call-with-input-file o get-string-all)))))))
(test-assert "substitute + build-things with specific output"
(with-store s
(let* ((c (random-text)) ;contents of the output
(d (build-expression->derivation
s "substitute-me" `(begin ,c (exit 1)) ;would fail
#:outputs '("out" "one" "two")
#:guile-for-build
(package-derivation s %bootstrap-guile (%current-system))))
(o (derivation->output-path d)))
(with-derivation-substitute d c
(set-build-options s #:use-substitutes? #t
#:substitute-urls (%test-substitute-urls))
(and (has-substitutes? s o)
;; Ask for nothing but the "out" output of D.
(build-things s `((,(derivation-file-name d) . "out")))
(valid-path? s o)
(equal? c (call-with-input-file o get-string-all)))))))
(test-assert "substitute, corrupt output hash"
;; Tweak the substituter into installing a substitute whose hash doesn't
;; match the one announced in the narinfo. The daemon must notice this and