mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 07:26:13 -05:00
guix: Delay loading of (gnutls).
(web …) modules pull in (gnutls) indirectly. Arrange to load them lazily, thereby reducing I/O and allocations when GnuTLS is not needed such as when running ‘guix describe’ or ‘guix shell’ on a cache hit. * guix/download.scm: Autoload (web uri). * guix/scripts/describe.scm: Likewise. * guix/store.scm: Likewise. (%default-substitute-urls): Remove ‘resolve-interface’ call and use https URLs unconditionally. Change-Id: Ide470c556a14866e8740966d25821df487a79859
This commit is contained in:
parent
54be7795b5
commit
44de6d3990
3 changed files with 12 additions and 10 deletions
|
@ -32,7 +32,7 @@ (define-module (guix download)
|
||||||
#:use-module (guix monads)
|
#:use-module (guix monads)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
#:autoload (guix build utils) (call-with-temporary-output-file)
|
#:autoload (guix build utils) (call-with-temporary-output-file)
|
||||||
#:use-module (web uri)
|
#:autoload (web uri) (string->uri uri-scheme uri-path)
|
||||||
#:use-module (srfi srfi-1)
|
#:use-module (srfi srfi-1)
|
||||||
#:use-module (srfi srfi-26)
|
#:use-module (srfi srfi-26)
|
||||||
#:export (%download-methods
|
#:export (%download-methods
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2018, 2019, 2020, 2021, 2023 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2018, 2019, 2020, 2021, 2023, 2024 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||||
;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
|
;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
|
||||||
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
|
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
|
||||||
|
@ -37,7 +37,7 @@ (define-module (guix scripts describe)
|
||||||
#:use-module (ice-9 match)
|
#:use-module (ice-9 match)
|
||||||
#:use-module (ice-9 format)
|
#:use-module (ice-9 format)
|
||||||
#:autoload (ice-9 pretty-print) (pretty-print)
|
#:autoload (ice-9 pretty-print) (pretty-print)
|
||||||
#:use-module (web uri)
|
#:autoload (web uri) (string->uri uri-host)
|
||||||
#:export (display-profile-content
|
#:export (display-profile-content
|
||||||
channel-commit-hyperlink
|
channel-commit-hyperlink
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012-2023 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012-2024 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2018 Jan Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2018 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;; Copyright © 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
|
;;; Copyright © 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
|
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
|
||||||
|
@ -49,7 +49,12 @@ (define-module (guix store)
|
||||||
#:use-module (ice-9 popen)
|
#:use-module (ice-9 popen)
|
||||||
#:autoload (ice-9 threads) (current-processor-count)
|
#:autoload (ice-9 threads) (current-processor-count)
|
||||||
#:use-module (ice-9 format)
|
#:use-module (ice-9 format)
|
||||||
#:use-module (web uri)
|
#:autoload (web uri) (uri?
|
||||||
|
string->uri
|
||||||
|
uri-scheme
|
||||||
|
uri-host
|
||||||
|
uri-port
|
||||||
|
uri-path)
|
||||||
#:export (%daemon-socket-uri
|
#:export (%daemon-socket-uri
|
||||||
%gc-roots-directory
|
%gc-roots-directory
|
||||||
%default-substitute-urls
|
%default-substitute-urls
|
||||||
|
@ -764,11 +769,8 @@ (define %default-substitute-urls
|
||||||
;; Default list of substituters. This is *not* the list baked in
|
;; Default list of substituters. This is *not* the list baked in
|
||||||
;; 'guix-daemon', but it is used by 'guix-service-type' and and a couple of
|
;; 'guix-daemon', but it is used by 'guix-service-type' and and a couple of
|
||||||
;; clients ('guix build --log-file' uses it.)
|
;; clients ('guix build --log-file' uses it.)
|
||||||
(map (if (false-if-exception (resolve-interface '(gnutls)))
|
'("https://bordeaux.guix.gnu.org"
|
||||||
(cut string-append "https://" <>)
|
"https://ci.guix.gnu.org"))
|
||||||
(cut string-append "http://" <>))
|
|
||||||
'("bordeaux.guix.gnu.org"
|
|
||||||
"ci.guix.gnu.org")))
|
|
||||||
|
|
||||||
(define (current-user-name)
|
(define (current-user-name)
|
||||||
"Return the name of the calling user."
|
"Return the name of the calling user."
|
||||||
|
|
Loading…
Reference in a new issue