aboutsummaryrefslogtreecommitdiff
Commit message (Expand)AuthorAge
* substitute: Rework connection error handling.•••This is part of trying to reduce the interdependency of code within the substitute module. This commit addresses some of the error handling that was performed through open-connection-for-uri/maybe. The new approach is to use call-with-connection-error-handling, and wrap calls to http-multiple-get and http-fetch with that procedure, which takes care of handling connection errors. I think this is even slightly more rigerous than the previous setup, because this approach handles connection errors that occur when http-multiple-get reconnects to a host. * guix/scripts/substitute.scm (open-connection-for-uri/maybe): Transform in to call-with-connection-error-handling. (fetch-narinfos): Use call-with-connection-error-handling. (process-query): Replace open-connection-for-uri/maybe with open-connection-for-uri/cached. (open-connection-for-uri/cached): Set a default timeout, matching the behaviour in open-connection-for-uri/maybe. (process-substitution): Use call-with-connection-error-handling. prepare-to-move-guix-scripts-substitute-codeChristopher Baines2021-02-22
* substitute: Remove fetch-narinfos use open-connection-for-uri/maybe.•••At least by default. Instead, make the open-connection procedure a parameter, and make the default guix:open-connection-for-uri. Do so similarly for lookup-narinfos and lookup-narinfos/diverse which work towards calling fetch-narinfos. This means this code can be moved to a different module, without having use/move the connection caching code. * guix/scripts/substitute.scm (fetch-narinfos): Add #:open-connection argument, and call http-multiple-get with it. (lookup-narinfos) Add #:open-connection argument, and call fetch-narinfos with it. (lookup-narinfos/diverse): Add #:open-connection argument, and call lookup-narinfos with it. (process-query): Call lookup-narinfos/diverse with #:open-connection open-connection-for-uri/maybe. Christopher Baines2021-02-22
* substitute: Inline fetch in to process-substitutes.•••As it's only called in one place, and this should make the code easier to read. * guix/scripts/substitute.scm (fetch): Move procedure inside… (process-substitution): …here. Christopher Baines2021-02-22
* substitute: Remove redundant fetch arguments.•••It's just called in one place, with hardcoded argument values, so just inline them. * guix/scripts/substitute.scm (fetch): Remove arguments that don't vary, copy the values from the call site in process-substitution. (process-substitution): Remove unnecessary argument values from fetch call. Christopher Baines2021-02-22
* substitute: Remove now redundant connection caching helpers.•••Failures now should be handled where they occur, and if there's a problem that's symptomatic of an issue with the connection, the port should be closed. * guix/scripts/substitute.scm (call-with-cached-connection): Remove procedure. (with-cached-connection): Remove syntax rule. Christopher Baines2021-02-22
* substitute: Change connection cache handling in process-substitution.•••Just pass open-connection-for-uri/maybe to http-fetch, this removes the need for with-cached-connection and passing the port in. * guix/scripts/substitute.scm (fetch): Don't take a port as an argument, and pass open-connection-for-uri/maybe to http-fetch. (process-substitution): Don't call fetch with with-cached-connection. Christopher Baines2021-02-22
* http-client: Accept #:open-connection in http-fetch.•••So that an alternative procedure can be passed in, perhaps to perform connection caching. * guix/http-client.scm (http-fetch): Add an #:open-connection keyword argument. Christopher Baines2021-02-22
* substitute: Stop using call-with-cached-connection in fetch-narinfos.•••Instead, just pass open-connection-for-uri/maybe to http-multiple-get. This code should be functionaly similar to the previous code. The eventual aim of this is to make the connection caching not mandatory in fetch-narinfos. * guix/scripts/substitute.scm (fetch-narinfos): Remove use of call-with-cached-connection. Christopher Baines2021-02-22
* substitute: open-connection-for-uri/maybe add #:verify-certificate?.•••As this is used by http-fetch and http-multiple-get when they call the specified open connection procedure. * guix/scripts/substitute.scm (open-connection-for-uri/maybe): Support #:verify-certificate?. Christopher Baines2021-02-22
* http-client: Add error handling to http-multiple-get.•••Making sure to close the port if it looks to be unusable. This closing of the port will allow for caching connections, without caching broken connections, as the cache can avoid handing out closed ports. * guix/http-client.scm (http-multiple-get): Try to catch exceptions that happen if the port is unusable, this is a adaptation of code within the (guix scripts substitute) module. Christopher Baines2021-02-22
* guix: Move http-multiple-get to (guix http-client).•••From (guix scripts substitute). This will make it easier to reuse this code. * guix/scripts/substitute.scm (http-multiple-get): Remove, and move to… * guix/http-client.scm (http-multiple-get): …here. Christopher Baines2021-02-22
* substitute: Remove redundant let block from fetch.•••* guix/scripts/substitute.scm (fetch): Remove redundant let block. Christopher Baines2021-02-22
* substitute: Remove connection handling from fetch.•••http-fetch does this, so just use that code instead. * guix/scripts/substitute.scm (fetch): Remove connection handling when the port is closed. Christopher Baines2021-02-22
* substitute: Remove buffer handling from fetch.•••http-fetch does this, so just set the right option. * guix/scripts/substitute.scm (fetch): Remove buffering code, and pass #:buffered? to http-fetch. Christopher Baines2021-02-22
* gnu: Add dstask.•••* gnu/packages/task-management.scm (dstask): New variable. Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net> Stefan Reichör2021-02-22
* gnu: gnome-keyring: Propagate gcr to fix unlock prompts.•••On desktop environments other than GNOME, it is not obvious gcr package needs to be installed in the profile for gnome-keyring unlock prompts to work. Propagating it ensures no one will need to figure this out in the future. * gnu/packages/gnome.scm (gnome-keyring)[propagated-inputs]: Add "gcr". Léo Le Bouter2021-02-22
* gnu: gita: Update to 0.12.9.•••* gnu/packages/version-control.scm (gita): Update to 0.12.9. Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net> Stefan Reichör2021-02-22
* gnu: python-sane: Correct the license.•••This is a followup to commit f500905ce1baf85a2407c5ccde148ee6c2ea2584. * gnu/packages/python-xyz.scm (python-sane)[license]: Describe the license. Leo Famulari2021-02-22
* gnu: Add python-screenkey.•••* gnu/packages/python-xyz.scm (python-screenkey): New variable. Co-authored-by: Léo Le Bouter <lle-bout@zaclys.net> Alexandros Theodotou2021-02-22
* doc: Fix build.•••This is a follow-up of b309a28678664c295e97a70607def02b0c9b4296. * doc/guix.texi (Tor): Fix build. Mathieu Othacehe2021-02-22
* gnu: cuirass: Add missing dependency.•••* gnu/packages/ci.scm (cuirass)[inputs]: Add gnutls. [arguments]: Adapt accordingly. Mathieu Othacehe2021-02-22
* services: postgresql: Define a default value.•••* gnu/services/databases.scm (postgresql-service-type): Define a default value. Mathieu Othacehe2021-02-22
* services: cuirass: Instantiate postgresql service.•••* gnu/services/cuirass.scm (cuirass-service-type): Instantiate postgresql service when missing. Mathieu Othacehe2021-02-22
* services: tor: Add control-socket? option.•••* doc/guix.texi (Networking Services): Document new `control-socket?' option for `tor-configuration`. * gnu/services/networking.scm (<tor-configuration>): (tor-configuration->torrc): Christopher Lemmer Webber2021-02-22
* gnu: ruby-omniauth-oauth2: Update to 1.7.1.•••* gnu/packages/ruby.scm (ruby-omniauth-oauth2): Update to 1.7.1. Efraim Flashner2021-02-22
* gnu: ruby-omniauth: Update to 2.0.3.•••* gnu/packages/ruby.scm (ruby-omniauth): Update to 2.0.3. [arguments]: Don't skip tests. [propagated-inputs]: Add ruby-rack-protector. [native-inputs]: Add ruby-rspec. Efraim Flashner2021-02-22
* gnu: cuirass: Update to 0.0.1-72.543e26a.•••* gnu/packages/ci.scm (guile-mastodon-dev): New variable. (guile-mastodon-dev): Update to 0.0.1-72.543e26a. [inputs]: Use guile-mastodon-dev instead of guile-mastodon. Mathieu Othacehe2021-02-22
* gnu: Fix "license:" prefix in scanner.scm.•••* gnu/packages/scanner.scm: Change "licence:" to "license:". Ludovic Courtès2021-02-22
* gnu: Add python-sane.•••* gnu/packages/python-xyz.scm (python-sane): New variable Signed-off-by: Ludovic Courtès <ludo@gnu.org> Andy Tai2021-02-22
* gnu: guile-dsv: Update to 0.4.0.•••* gnu/packages/guile-xyz.scm (guile-dsv): Update to 0.4.0 [arguments]: Remove phase "configure-support-guile3.0". Signed-off-by: Ludovic Courtès <ludo@gnu.org> Jack Hill2021-02-22
* news: Add 'zh' translation.•••Signed-off-by: Ludovic Courtès <ludo@gnu.org> Zhu Zihao2021-02-22
* packages: 'package-field-location' handles 'search-path' returning #f.•••Fixes <https://bugs.gnu.org/46390>. Reported by zimoun <zimon.toutoune@gmail.com>. This is similar to the fix in d10474c38d58bdc676e64336769dc2e00cdfa8ed. * guix/packages.scm (package-field-location): Handle FILE not in %LOAD-PATH. * tests/guix-lint.sh: Add test. Ludovic Courtès2021-02-22
* gnu: emacs-selectrum: Update to 3.1.•••* gnu/packages/emacs-xyz.scm (emacs-selectrum): Update to 3.1. Nicolas Goaziou2021-02-22
* gnu: cuirass: Update to 0.0.1-71.3e65617.•••* gnu/packages/ci.scm (cuirass): Update to 0.0.1-71.3e65617. Mathieu Othacehe2021-02-22
* gnu: nixfmt: Fix name.•••* gnu/packages/haskell-apps.scm (nixfmt): Fix name. Nicolas Goaziou2021-02-22
* gnu: Rename ghc-nixfmt into nixfmt•••* gnu/packages/haskell-xyz.scm (ghc-nixfmt): Move to... * gnu/packages/haskell-apps.scm (nixfmt): ... here. This is a followup to 703ccd583611b6efa689b7a2d1daf35d6cd83c35. Nicolas Goaziou2021-02-22
* gnu: cuirass: Update dependencies.•••* gnu/packages/ci.scm (cuirass)[inputs]: Add "guile-mastodon" and "mailutils". [arguments]: Adapt accordingly. Mathieu Othacehe2021-02-22
* gnu: guile-mastodon: Build with Guile 3.0.•••* gnu/packages/guile-xyz.scm (guile-mastodon)[source]: Modify configure.ac to add Guile 3.0 support. [native-inputs]: Add "emacs" and "texinfo". [inputs]: Use Guile 3.0 and Guile Json 4.0. Mathieu Othacehe2021-02-22
* services: cuirass: Add parameters support.•••* gnu/services/cuirass.scm (<cuirass-configuration>)[parameters]: New field. [zabbix-uri]: Remove it. (cuirass-shepherd-service): Honor it. Mathieu Othacehe2021-02-22
* gnu: cuirass: Update to 0.0.1-70.342c5ed•••* gnu/packages/ci.scm (cuirass): Update to 0.0.1-70.342c5ed. Mathieu Othacehe2021-02-22
* gnu: autoconf-archive: Update to 2021.02.19.•••* gnu/packages/autotools.scm (autoconf-archive): Update to 2021.02.19. Efraim Flashner2021-02-22
* gnu: git: Add credential-libsecret output.•••* gnu/packages/version-control.scm (git)[native-inputs]: Add pkg-config. [inputs]: Add glib and libsecret. [outputs]: Add "credential-libsecret". [arguments]: Add 'install-credential-libsecret phase to #:phases to build and install "git-credential-libsecret" to "credential-libsecret" output. (git-minimal)[arguments]: Delete the 'install-credential-libsecret phase. Signed-off-by: Chris Marusich <cmmarusich@gmail.com> Léo Le Bouter2021-02-21
* gnu: diffoscope: Update to 167.•••* gnu/packages/diffoscope.scm (diffoscope): Update to 167. Vagrant Cascadian2021-02-21
* gnu: Add HDF5 1.12.0.•••* gnu/packages/maths.scm (hdf5-1.12): New variable. Signed-off-by: Leo Famulari <leo@famulari.name> Gerd Heber2021-02-21
* gnu: ffmpeg: Update to 4.3.2.•••* gnu/packages/video.scm (ffmpeg): Update to 4.3.2. Signed-off-by: Leo Famulari <leo@famulari.name> Vincent Legoll2021-02-21
* image: Add rock64 support.•••* gnu/system/images/rock64.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly. Marius Bakke2021-02-21
* gnu: ungoogled-chromium: Update default preferences.•••* gnu/packages/aux-files/chromium/master-preferences.json: Adjust for upstream changes. Marius Bakke2021-02-21
* gnu: ungoogled-chromium: Update to 88.0.4324.182-0.b98f2d5.•••* gnu/packages/chromium.scm (%chromium-version): Set to -88.0.4324.182. (%ungoogled-revision): Set to 27c9e9fabd38001b32d148f7b3f99b4d31e67277. (%ungoogled-origin, ungoogled-chromium): Update hashes. Marius Bakke2021-02-21
* gnu: emacs-helm-pass: Update to 0.4.•••* gnu/packages/emacs-xyz.scm (emacs-helm-pass): Update to 0.4. Pierre Neidhardt2021-02-21
* gnu: ir: Remove whitespace at end of line.•••* gnu/packages/audio.scm (ir): Remove whitespace at end of line. Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net> Alexandros Theodotou2021-02-21