aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* substitute: Rework connection error handling.prepare-to-move-guix-scripts-substitute-codeChristopher Baines2021-02-22
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* substitute: Remove fetch-narinfos use open-connection-for-uri/maybe.Christopher Baines2021-02-22
| | | | | | | | | | | | | | | | | | | 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.
* substitute: Inline fetch in to process-substitutes.Christopher Baines2021-02-22
| | | | | | | | 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.
* substitute: Remove redundant fetch arguments.Christopher Baines2021-02-22
| | | | | | | | | 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.
* substitute: Remove now redundant connection caching helpers.Christopher Baines2021-02-22
| | | | | | | | 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.
* substitute: Change connection cache handling in process-substitution.Christopher Baines2021-02-22
| | | | | | | | | 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.
* http-client: Accept #:open-connection in http-fetch.Christopher Baines2021-02-22
| | | | | | | | 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.
* substitute: Stop using call-with-cached-connection in fetch-narinfos.Christopher Baines2021-02-22
| | | | | | | | | 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.
* substitute: open-connection-for-uri/maybe add #:verify-certificate?.Christopher Baines2021-02-22
| | | | | | | | 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?.
* http-client: Add error handling to http-multiple-get.Christopher Baines2021-02-22
| | | | | | | | | | 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.
* guix: Move http-multiple-get to (guix http-client).Christopher Baines2021-02-22
| | | | | | | 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.
* substitute: Remove redundant let block from fetch.Christopher Baines2021-02-22
| | | | * guix/scripts/substitute.scm (fetch): Remove redundant let block.
* substitute: Remove connection handling from fetch.Christopher Baines2021-02-22
| | | | | | | http-fetch does this, so just use that code instead. * guix/scripts/substitute.scm (fetch): Remove connection handling when the port is closed.
* substitute: Remove buffer handling from fetch.Christopher Baines2021-02-22
| | | | | | | http-fetch does this, so just set the right option. * guix/scripts/substitute.scm (fetch): Remove buffering code, and pass #:buffered? to http-fetch.
* gnu: Add dstask.Stefan Reichör2021-02-22
| | | | | | * gnu/packages/task-management.scm (dstask): New variable. Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net>
* gnu: gnome-keyring: Propagate gcr to fix unlock prompts.Léo Le Bouter2021-02-22
| | | | | | | | 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".
* gnu: gita: Update to 0.12.9.Stefan Reichör2021-02-22
| | | | | | * gnu/packages/version-control.scm (gita): Update to 0.12.9. Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net>
* gnu: python-sane: Correct the license.Leo Famulari2021-02-22
| | | | | | | This is a followup to commit f500905ce1baf85a2407c5ccde148ee6c2ea2584. * gnu/packages/python-xyz.scm (python-sane)[license]: Describe the license.
* gnu: Add python-screenkey.Alexandros Theodotou2021-02-22
| | | | | | * gnu/packages/python-xyz.scm (python-screenkey): New variable. Co-authored-by: Léo Le Bouter <lle-bout@zaclys.net>
* doc: Fix build.Mathieu Othacehe2021-02-22
| | | | | | This is a follow-up of b309a28678664c295e97a70607def02b0c9b4296. * doc/guix.texi (Tor): Fix build.
* gnu: cuirass: Add missing dependency.Mathieu Othacehe2021-02-22
| | | | | * gnu/packages/ci.scm (cuirass)[inputs]: Add gnutls. [arguments]: Adapt accordingly.
* services: postgresql: Define a default value.Mathieu Othacehe2021-02-22
| | | | * gnu/services/databases.scm (postgresql-service-type): Define a default value.
* services: cuirass: Instantiate postgresql service.Mathieu Othacehe2021-02-22
| | | | | * gnu/services/cuirass.scm (cuirass-service-type): Instantiate postgresql service when missing.
* services: tor: Add control-socket? option.Christopher Lemmer Webber2021-02-22
| | | | | | | * doc/guix.texi (Networking Services): Document new `control-socket?' option for `tor-configuration`. * gnu/services/networking.scm (<tor-configuration>): (tor-configuration->torrc):
* gnu: ruby-omniauth-oauth2: Update to 1.7.1.Efraim Flashner2021-02-22
| | | | * gnu/packages/ruby.scm (ruby-omniauth-oauth2): Update to 1.7.1.
* gnu: ruby-omniauth: Update to 2.0.3.Efraim Flashner2021-02-22
| | | | | | | * 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.
* gnu: cuirass: Update to 0.0.1-72.543e26a.Mathieu Othacehe2021-02-22
| | | | | | * 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.
* gnu: Fix "license:" prefix in scanner.scm.Ludovic Courtès2021-02-22
| | | | * gnu/packages/scanner.scm: Change "licence:" to "license:".
* gnu: Add python-sane.Andy Tai2021-02-22
| | | | | | * gnu/packages/python-xyz.scm (python-sane): New variable Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu: guile-dsv: Update to 0.4.0.Jack Hill2021-02-22
| | | | | | | * 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>
* news: Add 'zh' translation.Zhu Zihao2021-02-22
| | | | Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* packages: 'package-field-location' handles 'search-path' returning #f.Ludovic Courtès2021-02-22
| | | | | | | | | | 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.
* gnu: emacs-selectrum: Update to 3.1.Nicolas Goaziou2021-02-22
| | | | * gnu/packages/emacs-xyz.scm (emacs-selectrum): Update to 3.1.
* gnu: cuirass: Update to 0.0.1-71.3e65617.Mathieu Othacehe2021-02-22
| | | | * gnu/packages/ci.scm (cuirass): Update to 0.0.1-71.3e65617.
* gnu: nixfmt: Fix name.Nicolas Goaziou2021-02-22
| | | | * gnu/packages/haskell-apps.scm (nixfmt): Fix name.
* gnu: Rename ghc-nixfmt into nixfmtNicolas Goaziou2021-02-22
| | | | | | | * gnu/packages/haskell-xyz.scm (ghc-nixfmt): Move to... * gnu/packages/haskell-apps.scm (nixfmt): ... here. This is a followup to 703ccd583611b6efa689b7a2d1daf35d6cd83c35.
* gnu: cuirass: Update dependencies.Mathieu Othacehe2021-02-22
| | | | | * gnu/packages/ci.scm (cuirass)[inputs]: Add "guile-mastodon" and "mailutils". [arguments]: Adapt accordingly.
* gnu: guile-mastodon: Build with Guile 3.0.Mathieu Othacehe2021-02-22
| | | | | | | * 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.
* services: cuirass: Add parameters support.Mathieu Othacehe2021-02-22
| | | | | | * gnu/services/cuirass.scm (<cuirass-configuration>)[parameters]: New field. [zabbix-uri]: Remove it. (cuirass-shepherd-service): Honor it.
* gnu: cuirass: Update to 0.0.1-70.342c5edMathieu Othacehe2021-02-22
| | | | * gnu/packages/ci.scm (cuirass): Update to 0.0.1-70.342c5ed.
* gnu: autoconf-archive: Update to 2021.02.19.Efraim Flashner2021-02-22
| | | | * gnu/packages/autotools.scm (autoconf-archive): Update to 2021.02.19.
* gnu: git: Add credential-libsecret output.Léo Le Bouter2021-02-21
| | | | | | | | | | | * 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>
* gnu: diffoscope: Update to 167.Vagrant Cascadian2021-02-21
| | | | * gnu/packages/diffoscope.scm (diffoscope): Update to 167.
* gnu: Add HDF5 1.12.0.Gerd Heber2021-02-21
| | | | | | * gnu/packages/maths.scm (hdf5-1.12): New variable. Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu: ffmpeg: Update to 4.3.2.Vincent Legoll2021-02-21
| | | | | | * gnu/packages/video.scm (ffmpeg): Update to 4.3.2. Signed-off-by: Leo Famulari <leo@famulari.name>
* image: Add rock64 support.Marius Bakke2021-02-21
| | | | | * gnu/system/images/rock64.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu: ungoogled-chromium: Update default preferences.Marius Bakke2021-02-21
| | | | | * gnu/packages/aux-files/chromium/master-preferences.json: Adjust for upstream changes.
* gnu: ungoogled-chromium: Update to 88.0.4324.182-0.b98f2d5.Marius Bakke2021-02-21
| | | | | | * gnu/packages/chromium.scm (%chromium-version): Set to -88.0.4324.182. (%ungoogled-revision): Set to 27c9e9fabd38001b32d148f7b3f99b4d31e67277. (%ungoogled-origin, ungoogled-chromium): Update hashes.
* gnu: emacs-helm-pass: Update to 0.4.Pierre Neidhardt2021-02-21
| | | | * gnu/packages/emacs-xyz.scm (emacs-helm-pass): Update to 0.4.
* gnu: ir: Remove whitespace at end of line.Alexandros Theodotou2021-02-21
| | | | | | * gnu/packages/audio.scm (ir): Remove whitespace at end of line. Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net>