aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-09-14ui: 'show-what-to-build' displays download estimate more prominently.Ludovic Courtès
* guix/ui.scm (show-what-to-build): When VERBOSITY is 1, add a newline before the "would/will be downloaded" line, and wrap that message in 'highlight'.
2020-09-14tests: Remove one 'delete-paths' call in 'tests/store.scm'.Ludovic Courtès
This makes the test slightly less expensive. * tests/store.scm ("add-text-to-store vs. delete-paths") ("add-to-store vs. delete-paths"): Delete and merge into... ("add-text-to-store/add-to-store vs. delete-paths"): ... this test.
2020-09-14authenticate: Cache the ACL and key pairs.Ludovic Courtès
In practice we're always using the same key pair, /etc/guix/signing-key.{pub,sec}. Keeping them in cache allows us to avoid redundant I/O and parsing when signing multiple store items in a row. * guix/scripts/authenticate.scm (load-key-pair): New procedure. (sign-with-key): Remove 'key-file' parameter and add 'public-key' and 'secret-key'. Adjust accordingly. (validate-signature): Add 'acl' parameter and pass it to 'authorized-key?'. (guix-authenticate)[call-with-reply]: New procedure. [with-reply]: New macro. Call 'current-acl' upfront and cache its result. Add 'key-pairs' as an argument to 'loop' and use it as a cache of key pairs.
2020-09-14daemon: Spawn 'guix authenticate' once for all.Ludovic Courtès
Previously, we'd spawn 'guix authenticate' once for each item that has to be signed (when exporting) or authenticated (when importing). Now, we spawn it once for all and then follow a request/reply protocol. This reduces the wall-clock time of: guix archive --export -r $(guix build coreutils -d) from 30s to 2s. * guix/scripts/authenticate.scm (sign-with-key): Return the signature instead of displaying it. Raise a &formatted-message instead of calling 'leave'. (validate-signature): Likewise. (read-command): New procedure. (define-enumerate-type, reply-code): New macros. (guix-authenticate)[send-reply]: New procedure. Change to read commands from current-input-port. * nix/libstore/local-store.cc (runAuthenticationProgram): Remove. (authenticationAgent, readInteger, readAuthenticateReply): New functions. (signHash, verifySignature): Rewrite in terms of the agent. * tests/store.scm ("import not signed"): Remove 'pk' call. ("import signed by unauthorized key"): Check the error message of C. * tests/guix-authenticate.sh: Rewrite using the new protocol. fixlet
2020-09-14daemon: Move 'Agent' to libutil.Ludovic Courtès
* nix/libstore/build.cc (DerivationGoal::tryBuildHook): Add "offload" to 'args' and pass settings.guixProgram as the first argument to Agent::Agent. (pathNullDevice, commonChildInit, Agent, Agent::Agent) (Agent::~Agent): Move to... * nix/libutil/util.cc: ... here. * nix/libutil/util.hh (struct Agent, commonChildInit): New declarations.
2020-09-14daemon: Isolate signing and signature verification functions.Ludovic Courtès
* nix/libstore/local-store.cc (signHash, verifySignature): New functions. (LocalStore::exportPath): Use 'signHash' instead of inline code. (LocalStore::importPath): Use 'verifySignature' instead of inline code.
2020-09-14daemon: Generalize 'HookInstance' to 'Agent'.Ludovic Courtès
* nix/libstore/build.cc (HookInstance): Rename to... (Agent): ... this. Rename 'toHook' and 'fromHook' similarly and update users. Change constructor to require a command and an argument list. (DerivationGoal::tryBuildHook): Pass arguments to the 'Agent' constructor.
2020-09-14guix: Fix download-svn-to-store.Paul Garlick
* guix/svn-download.scm (download-svn-to-store): Add a subdirectory to the download path. The subdirectory is used as the target for the 'svn export' command, avoiding a 'directory exists' error when attempting to use the parent directory directly.
2020-09-14gnu: cuirass: Update to 0.0.1-45.cf11b73.Mathieu Othacehe
* gnu/packages/ci.scm (cuirass): Update to 0.0.1-45.cf11b73.
2020-09-14gnu: grub: Support loading files from TFTP if the root filesystem is NFS.Stefan
* gnu/bootloader/grub.scm (grub-root-search): Set the root to "(tftp)" if the searched-for file is stored on NFS.
2020-09-14gnu: Add altermime.Ricardo Wurmus
* gnu/packages/mail.scm (altermime): New variable.
2020-09-14gnu: rapicorn: Use pandoc instead of ghc-pandoc.zimoun
* gnu/packages/graphics.scm (rapicorn)[native-inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14gnu: ganeti: Use pandoc instead of ghc-pandoc.zimoun
* gnu/packages/text-editors.scm (ganeti)[native-inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14gnu: manuskript: Use pandoc instead of ghc-pandoc.zimoun
* gnu/packages/text-editors.scm (manuskript)[inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14gnu: emacs-org-web-tools: Use pandoc instead of ghc-pandoc.zimoun
* gnu/packages/emacs-xyz.scm (emacs-org-webtools)[inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14gnu: emacs-ox-pandoc: Use pandoc instead of ghc-pandoc.zimoun
* gnu/packages/emacs-xyz.scm (emacs-ox-pandoc)[inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14gnu: ruby-pandoc-ruby: Use pandoc instead of ghc-pandoc.zimoun
* gnu/packages/ruby.scm (ruby-pandoc-ruby)[native-inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14database: register-items: reduce transaction scope.Christopher Baines
It was made transactional in a4678c6ba18d8dbd79d931f80426eebf61be7ebe, with the reasoning to prevent broken intermediate states from being visible. I think this means something like an entry being in ValidPaths, but the Refs not being inserted. Using a transaction for this makes sense, but I think using one single transaction for the whole register-items call is unnecessary to avoid broken states from being visible, and could block other writes to the store database while register-items is running. Because the deduplication and resetting timestamps happens within the transaction as well, even though these things don't involve the database, writes to the database will still be blocked while this is happening. To reduce the potential for register-items to block other writers to the database for extended periods, this commit moves the transaction to just wrap the call to sqlite-register. This is the one place where writes occur, so that should prevent the broken intermediate states issue above. The one difference this will make is some of the registered items will be visible to other connections while others may be still being added. I think this is OK, as it's equivalent to just registering different items. * guix/store/database.scm (register-items): Reduce transaction scope. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14database: document extra registration requirements.Caleb Ristvedt
It's necessary that store items be locked and protected from garbage collection while they are being registered. This documents that. * guix/store/database.scm (register-path, register-items): document GC protection and locking requirements. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14deduplication: pass store directory to replace-with-link.Caleb Ristvedt
This causes with-writable-file to take into consideration the actual store being used, as passed to 'deduplicate', rather than whatever (%store-directory) may return. * guix/store/deduplication.scm (replace-with-link): new keyword argument 'store'. Pass to with-writable-file. (with-writable-file, call-with-writable-file): new store argument. (deduplicate): pass store to replace-with-link. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14.dir-locals.el: fix call-with-{retrying-}transaction indenting.Caleb Ristvedt
* .dir-locals.el (call-with-transaction, call-with-retrying-transaction): change scheme-indent-function property from 2 to 1. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-14gnu: python-wrapper: Mention pip in description.Pierre Neidhardt
* gnu/packages/python.scm (python-wrapper)[description]: Mention that `pip' won't work properly if both python and python-wrapper are installed.
2020-09-14build-system: linux-module: Delete some huge items that we probably don't need.Danny Milosavljevic
* guix/build-system/linux-module.scm (make-linux-module-builder): Delete some huge items that we probably don't need.
2020-09-14gnu: sxiv: Use 'cc-for-target'.Efraim Flashner
* gnu/packages/image-viewers.scm (sxiv)[arguments]: Replace hard-coded gcc substitution with cc-for-target in make-flags.
2020-09-14gnu: sxiv: Install icons.Efraim Flashner
* gnu/packages/image-viewers.scm (sxiv)[arguments]: Add custom phase to install icons.
2020-09-14gnu: sxiv: Install desktop file.Efraim Flashner
* gnu/packages/image-viewers.scm (sxiv)[arguments]: Add custom 'install-desktop-file phase to install desktop file.
2020-09-14gnu: rofi: Update to 1.6.0.Gabriel Arazas
* gnu/packages/xdisorg.scm (rofi): Update to 1.6.0. [inputs]: Add libjpeg-turbo. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2020-09-14gnu: Update coq and its dependentsRobin Green
* gnu/packages/coq.scm (coq): Update to 8.11.2 (coq-flocq): Update to 3.3.1 (coq-gappa): Update to 1.4.4 (coq-mathcomp): Update to 1.11.0 (coq-coquelicot): Update to 3.1.0 (coq-bignums): Update to 8.11.0 (coq-interval): Update to 4.0.0 (coq-equations): Update to 1.2.3 Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2020-09-14gnu: youtube-dl: Update to 2020.09.14.Tobias Geerinckx-Rice
* gnu/packages/video.scm (youtube-dl): Update to 2020.09.14.
2020-09-14gnu: python-ansi2html: Fix typo in description.Tobias Geerinckx-Rice
* gnu/packages/python-xyz.scm (python-ansi2html)[description]: Fix typo.
2020-09-14gnu: wesnoth: Update to 1.14.14.Tobias Geerinckx-Rice
* gnu/packages/games.scm (wesnoth): Update to 1.14.14.
2020-09-14gnu: jasper: Update to 2.0.20 [fixes CVE-2016-9398's revenge].Tobias Geerinckx-Rice
* gnu/packages/image.scm (jasper): Update to 2.0.20. [arguments]: Skip tests of the now-disabled MIF image format.
2020-09-14gnu: shellcheck: Update to 0.7.1.Tobias Geerinckx-Rice
* gnu/packages/haskell-apps.scm (shellcheck): Update to 0.7.1.
2020-09-14gnu: bear: Update to 2.4.4.Tobias Geerinckx-Rice
* gnu/packages/build-tools.scm (bear): Update to 2.4.4.
2020-09-13gnu: libhandy: Enable glade_catalog.Leo Prikler
* gnu/packages/gnome.scm (libhandy)[configure-flags]: Add glade_catalog. [inputs]: Add glade and libxml2. (libhandy-0.0)[configure-flags]: Keep glade_catalog disabled. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: glade: Add catalog and module search paths.Leo Prikler
* gnu/packages/gnome.scm (glade3)[native-search-paths]: Add GLADE_CATALOG_SEARCH_PATH and GLADE_MODULE_SEARCH_PATH. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: emacs-djvu: Add needed inputsMorgan Smith
* gnu/packages/emacs-xyz.scm (emacs-djvu)[inputs, arguments]: New fields. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13services: certbot: Support registration without email.Timotej Lazar
* gnu/services/certbot.scm (certbot-configuration): Add default for the email option. (certbot-command): Pass email for registration only when specified. * doc/guix.texi (Certificate Services): "mandatory"→"optional" email. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: fmt: Update to 7.0.3.Greg Hogan
From 820d39a55a5673fffac70c919b8cc3b28d94f6e7 Mon Sep 17 00:00:00 2001 From: Greg Hogan <code@greghogan.com> Date: Fri, 11 Sep 2020 10:53:20 +0000 Subject: [PATCH] gnu: fmt: Update to 7.0.3. * gnu/packages/pretty-print.scm (fmt): Update to 7.0.3. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: gcc-toolchain: Reword description.zimoun
* gnu/packages/commencement.scm (make-gcc-toolchain)[description]: Reword. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: gccgo: Reword synopsis and description.zimoun
Fixes <https://bugs.gnu.org/43303>. Reported by Jeffrey Walton <noloader@gmail.com>. * gnu/packages/gcc.scm: (gccgo-4.9): Add synopsis and description Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: libgccjit: Reword synopsis and description.zimoun
Fixes <https://bugs.gnu.org/43303>. Reported by Jeffrey Walton <noloader@gmail.com>. * gnu/packages/gcc.scm: (libgccjit)[synopsis,description]: Reword. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: zrythm: Update to 0.8.911.Alexandros Theodotou
* gnu/packages/music.scm (zrythm): Update to 0.8.911. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: Add meson 0.55.1.Alexandros Theodotou
* gnu/packages/build-tools.scm (meson-0.55): New variable. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: libaudec: Update to 0.2.3.Alexandros Theodotou
* gnu/packages/audio.scm (libaudec): Update to 0.2.3. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: libcyaml: Update to 1.1.0.Ludovic Courtès
* gnu/packages/web.scm (libcyaml): Update to 1.1.0.
2020-09-13services: Fix zram-device-service.Tobias Geerinckx-Rice
* gnu/services/linux.scm (<zram-device-configuration>): Fix typo.
2020-09-13gnu: Fix a crash in NTP and Chrony.Leo Famulari
Fixes <https://bugs.gnu.org/43321>. * gnu/packages/ntp.scm (ntp, chrony)[inputs]: Replace libcap with libcap/next.
2020-09-13gnu: josm: Fix formatting and install more files.Christopher Baines
This means that JOSM appears in the GNOME Shell menu. * gnu/packages/geo.scm (josm)[source]: Replace tab character. [arguments]: Reduce line length, and add install-share-directories phase.
2020-09-13gnu: profanity: Change build system.Raghav Gururajan
* gnu/package/messaging.scm (profanity) [build-system]: Change from gnu to glib-or-gtk. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>