summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2020-12-08daemon: Raise an error if substituter doesn't send the expected hash....It was already impossible in practice for 'expectedHashStr' to be empty if 'status' == "success". * nix/libstore/build.cc (SubstitutionGoal::finished): Throw 'SubstError' when 'expectedHashStr' is empty. Ludovic Courtès
2020-12-08substitute: Cache and reuse connections while substituting....That way, when fetching a series of substitutes from the same server(s), the connection is reused instead of being closed/opened for each substitutes, which saves on network round trips and TLS handshakes. * guix/http-client.scm (http-fetch): Add #:keep-alive? and honor it. * guix/progress.scm (progress-report-port): Add #:close? parameter and honor it. * guix/scripts/substitute.scm (at-most): Return the tail as a second value. (fetch): Add #:port and #:keep-alive? and honor them. (%max-cached-connections): New variable. (open-connection-for-uri/cached, call-with-cached-connection): New procedures. (with-cached-connection): New macro. (process-substitution): Wrap 'fetch' call in 'with-cached-connection'. Pass #:close? to 'progress-report-port'. Ludovic Courtès
2020-12-08daemon: Run 'guix substitute --substitute' as an agent....This avoids spawning one substitute process per substitution. * nix/libstore/build.cc (class Worker)[substituter]: New field. [outPipe, logPipe, pid]: Remove. (class SubstitutionGoal)[expectedHashStr, status, substituter]: New fields. (SubstitutionGoal::timedOut): Adjust to check 'substituter'. (SubstitutionGoal::tryToRun): Remove references to 'outPipe' and 'logPipe'. Run "guix substitute --substitute" as an 'Agent'. Send the request with 'writeLine'. (SubstitutionGoal::finished): Likewise. (SubstitutionGoal::handleChildOutput): Change to fill in 'expectedHashStr' and 'status'. (SubstitutionGoal::handleEOF): Call 'wakeUp' unconditionally. (SubstitutionGoal::~SubstitutionGoal): Adjust to check 'substituter'. * guix/scripts/substitute.scm (process-substitution): Write "success\n" to stdout upon success. (%error-to-file-descriptor-4?): New variable. (guix-substitute): Set 'current-error-port' to file descriptor 4 unless (%error-to-file-descriptor-4?) is false. Remove "--substitute" arguments. Loop reading line from stdin. * tests/substitute.scm <top level>: Call '%error-to-file-descriptor-4?'. (request-substitution): New procedure. ("substitute, no signature") ("substitute, invalid hash") ("substitute, unauthorized key") ("substitute, authorized key") ("substitute, unauthorized narinfo comes first") ("substitute, unsigned narinfo comes first") ("substitute, first narinfo is unsigned and has wrong hash") ("substitute, first narinfo is unsigned and has wrong refs") ("substitute, two invalid narinfos") ("substitute, narinfo with several URLs"): Adjust to new "guix substitute --substitute" calling convention. Ludovic Courtès
2020-12-08daemon: Factorize substituter agent spawning....* nix/libstore/local-store.hh (class LocalStore)[substituter]: New method. [runningSubstituter]: Turn into a shared_ptr. * nix/libstore/local-store.cc (LocalStore::querySubstitutablePaths): Call 'substituter' instead of using inline code. (LocalStore::querySubstitutablePathInfos): Likewise. (LocalStore::substituter): New method. Ludovic Courtès
2020-12-08daemon: Use 'Agent' to spawn 'guix substitute --query'....* nix/libstore/local-store.hh (RunningSubstituter): Remove. (LocalStore)[runningSubstituter]: Change to unique_ptr<Agent>. [setSubstituterEnv, didSetSubstituterEnv]: Remove. [getLineFromSubstituter, getIntLineFromSubstituter]: Take an 'Agent'. * nix/libstore/local-store.cc (LocalStore::~LocalStore): Remove reference to 'runningSubstituter'. (LocalStore::setSubstituterEnv, LocalStore::startSubstituter): Remove. (LocalStore::getLineFromSubstituter): Adjust to 'run' being an 'Agent'. (LocalStore::querySubstitutablePaths): Spawn substituter agent if needed. Adjust to 'Agent' interface. (LocalStore::querySubstitutablePathInfos): Likewise. * nix/libstore/build.cc (SubstitutionGoal::tryToRun): Remove call to 'setSubstituterEnv' and add 'setenv' call for "_NIX_OPTIONS" instead. (SubstitutionGoal::finished): Remove 'readLine' call for 'dummy'. * guix/scripts/substitute.scm (%allow-unauthenticated-substitutes?): Remove second argument to 'make-parameter'. (process-query): Call 'warn-about-missing-authentication' when (%allow-unauthenticated-substitutes?) is #t. (guix-substitute): Wrap body in 'parameterize'. Set 'guix-warning-port' too. No longer exit when 'substitute-urls' returns the empty list. No longer print newline initially. * tests/substitute.scm (test-quit): Parameterize 'current-error-port' to account for the port changes in 'guix-substitute'. Ludovic Courtès
2020-12-08daemon: 'Agent' constructor takes a list of environment variables....* nix/libutil/util.hh (struct Agent)[Agent]: Add 'env' parameter. * nix/libutil/util.cc (Agent::Agent): Honor it. Ludovic Courtès
2020-12-08gnu: autotools: Add version 2.70....* gnu/packages/autotools.scm (autoconf): Rename to... (autoconf-2.69): ... this. (autoconf): Define as an alias for AUTOCONF-2.69. (autoconf-2.70): New variable. Ludovic Courtès
2020-12-08database: Remove unnecessary module imports....* guix/store/database.scm: Remove unnecessary imports added in 4b9eecd322e566783369795ebea63a479b51f486. Ludovic Courtès
2020-12-08gnu: ocaml-menhir: Update to 20200211....* gnu/packages/ocaml.scm (ocaml-menhir): Update to 20200211. [build-system]: Switch from gnu to dune. [arguments]: Remove phases and make-flags. [native-inputs]: Remove field. Signed-off-by: Christopher Baines <mail@cbaines.net> Vincent Legoll
2020-12-08gnu: mruby: Update to 2.1.2....* gnu/packages/ruby.scm (mruby): Update to 2.1.2. Efraim Flashner
2020-12-08gnu: Add mypaint....* gnu/packages/image.scm (mypaint): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net> L p R n d n
2020-12-08gnu: libmypaint: Update to 1.6.1....Needed by mypaint@2.0.1. * gnu/packages/gimp.scm (libmypaint): Update to 1.6.1. Christopher Baines
2020-12-08gnu: isync: Use OpenSSL 1.1....* gnu/packages/mail.scm (isync)[inputs]: Replace openssl-1.0 with openssl. Leo Famulari
2020-12-08gnu: fcitx5-material-color-theme: Add source file-name....* gnu/packages/fcitx5.scm (fcitx5-material-color-theme)[source]: Add file-name field. Efraim Flashner
2020-12-08guix: opam: Add coq support in the importer....* guix/import/opam.scm (get-opam-repository): Add support for coq repositories. (ocaml-name->guix-name): Properly name coq package. * doc/guix.texi (Invoking guix import): Document it. Julien Lepiller
2020-12-08guix: opam: Add --repo argument to importer....* guix/scripts/import/opam.scm (guix-import-opam): Pass --repo argument to recursive and non-recursive importers. * guix/import/opam.scm (get-opam-repository): Select proper repository location depending on a new repo argument. (opam->guix-package): Use get-opam-repository in the procedure body. Julien Lepiller
2020-12-08guix: opam: Pass default repository to recursive importer....* guix/import/opam.scm (opam->guix-package): Rename #:repository key to #:repo. (opam-recursive-import): Pass #:repo keyword. * tests/opam.scm (opam->guix-package): Rename #:repository to #:repo. Julien Lepiller
2020-12-08guix: opam: Filter implicit inputs....* guix/import/opam.scm (opam->guix-package, depends->inputs): Filter out implicit inputs. Julien Lepiller
2020-12-08guix: opam: Remove stray `pk'....* guix/import/opam.scm (opam->guix-package): Remove stray `pk'. Julien Lepiller
2020-12-08gnu: Add fcitx5-material-color-theme....* gnu/packages/fcitx5.scm (fcitx5-material-color-theme): New variable. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zhu Zihao
2020-12-08gnu: Add fcitx5-configtool....* gnu/packages/fcitx5.scm (fcitx5-configtool): New variable. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zhu Zihao
2020-12-08gnu: Add fcitx5-chinese-addons....* gnu/packages/fcitx5.scm (fcitx5-chinese-addons): New variable. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zhu Zihao
2020-12-08gnu: Add fcitx5-gtk....* gnu/packages/fcitx5.scm (fcitx5-gtk): New variable. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zhu Zihao
2020-12-08gnu: Add fcitx5-qt....* gnu/packages/fcitx5.scm (fcitx5-qt): New variable. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zhu Zihao
2020-12-08gnu: Add libime....* gnu/packages/fcitx5.scm (libime): New variable. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zhu Zihao
2020-12-08gnu: Add fcitx5-lua....* gnu/packages/fcitx5.scm (fcitx5-lua): New variable. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zhu Zihao
2020-12-08gnu: Add fcitx5....* gnu/packages/fcitx5.scm (fcitx5): New variable. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zhu Zihao
2020-12-08gnu: Add xcb-imdkit....* gnu/packages/fcitx5.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zhu Zihao
2020-12-08services: cuirass: Add queue-size option....* gnu/services/cuirass.scm (<cuirass-configuration>): Add "queue-size" field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it. Mathieu Othacehe
2020-12-08gnu: cuirass: Update to 0.0.1-56.697fa14....* gnu/packages/ci.scm (cuirass): Update to 0.0.1-56.697fa14. Mathieu Othacehe
2020-12-08gnu: Add cjson....* gnu/packages/javascript.scm (cjson): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net> Ryan Prior
2020-12-08gnu: Add tiny-bignum....* gnu/packages/maths.scm (tiny-bignum): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net> Ryan Prior
2020-12-08gnu: trezord: Update to 2.0.30....* gnu/packages/finance.scm (trezord): Update to 2.0.30. Signed-off-by: Christopher Baines <mail@cbaines.net> Martin Becze
2020-12-08gnu: Add go-gopkg-in-natefinch-lumberjack.v2....* gnu/packages/golang.scm (go-gopkg-in-natefinch-lumberjack.v2): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net> Martin Becze
2020-12-08gnu: Add go-github-com-gorilla-csrf....* gnu/packages/golang.scm (go-github-com-gorilla-csrf): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net> Martin Becze
2020-12-08gnu: Add go-github-com-gorilla-securecookie....* gnu/packages/golang.scm (go-github-com-gorilla-securecookie): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net> Martin Becze
2020-12-08gnu: Add go-github-com-gorilla-handlers....* gnu/packages/golang.scm (go-github-com-gorilla-handlers): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net> Martin Becze
2020-12-08gnu: Add go-github-com-felixge-httpsnoop....* gnu/packages/golang.scm (go-github-com-felixge-httpsnoop): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net> Martin Becze
2020-12-08gnu: go-github-com-gorilla-mux: Update to 1.8.0....* gnu/packages/golang.scm (go-github-com-gorilla-mux): Update to 1.8.0. Signed-off-by: Christopher Baines <mail@cbaines.net> Martin Becze
2020-12-08gnu: scummvm: Update source URL....* gnu/packages/emulators.scm (scummvm)[source]: Use HTTPS & new subdomain. Reported by Matthew Brooks <matthewfbrooks@mailbox.org>. Tobias Geerinckx-Rice
2020-12-08gnu: gita: Install shell completions....* gnu/packages/version-control.scm (gita)[arguments]: Add phase install-shell-completions. Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com> Michael Rohleder
2020-12-08gnu: Add emacs-burly....* gnu/packages/emacs-xyz.scm (emacs-burly): New variable. Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com> Ryan Desfosses
2020-12-08gnu: Add emacs-map....* gnu/packages/emacs-xyz.scm (emacs-map): New variable. Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com> Ryan Desfosses
2020-12-08gnu: shadowsocks: Build against openssl....This patch allows shadowsocks to be used without supplying libopenssl in its configuration. See also https://unix.stackexchange.com/questions/623324/. * gnu/packages/networking.scm (shadowsocks)[inputs]: Add openssl. [#:phases]: Add patch-crypto-paths. Signed-off-by: Marius Bakke <marius@gnu.org> Leo Prikler
2020-12-08gnu: qoauth: Minor cosmetic improvements....* gnu/packages/web.scm (qoauth)[arguments]: Add #:tests?. Don't delete 'check' phase. Override 'configure' instead of adding new phase. Marius Bakke
2020-12-08gnu: qoauth: Fix build failure....Fixes <https://bugs.gnu.org/45031>. Reported by Distopico <distopico@riseup.net>. * gnu/packages/web.scm (qoauth)[arguments]: Add phase 'adjust-mkspecs-directory'. Marius Bakke
2020-12-08gnu: qca: Correct license....* gnu/packages/kde.scm (qca)[license]: Change from LGPL2.1 to LGPL2.1+. Marius Bakke
2020-12-08gnu: Add gita....* gnu/packages/version-control.scm (gita): New variable. Oleg Pykhalov
2020-12-07gnu: imapfilter: Update to 2.7.5....* gnu/packages/mail.scm (imapfilter): Update to 2.7.5. Tobias Geerinckx-Rice
2020-12-07gnu: grammalecte: Update to 2.0.0....* gnu/packages/dictionaries.scm (grammalecte): Update to 2.0.0. Nicolas Goaziou