[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
46/96: environment: Really auto-load (guix scripts pack).
From: |
guix-commits |
Subject: |
46/96: environment: Really auto-load (guix scripts pack). |
Date: |
Wed, 19 Apr 2023 21:41:12 -0400 (EDT) |
apteryx pushed a commit to branch core-updates
in repository guix.
commit abdf812acc70d5424e51e2d6fb280bf08b087b68
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Mon Apr 17 14:32:24 2023 +0200
environment: Really auto-load (guix scripts pack).
Fixes a performance regression on cache hits introduced in
b31ea797edb4f6e8c14e8fe790da1319607c5cb1, whereby (guix scripts pack)
would be loaded eagerly during startup, leading hundreds of (gnu
packages *) modules to be loaded.
Fixes <https://issues.guix.gnu.org/62899>.
* guix/scripts/environment.scm: Autoload (gnu build install).
(%options): Add indirection when calling 'symlink-spec-option-parser' so
that (guix scripts pack) is auto-loaded only when needed.
---
guix/scripts/environment.scm | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm
index ebfc05731c..8c0da9694e 100644
--- a/guix/scripts/environment.scm
+++ b/guix/scripts/environment.scm
@@ -38,7 +38,7 @@
#:autoload (guix scripts pack) (symlink-spec-option-parser)
#:use-module (guix transformations)
#:autoload (ice-9 ftw) (scandir)
- #:use-module (gnu build install)
+ #:autoload (gnu build install) (evaluate-populate-directive)
#:autoload (gnu build linux-container) (call-with-container %namespaces
user-namespace-supported?
unprivileged-user-namespace-supported?
@@ -271,7 +271,11 @@ use '--preserve' instead~%"))
(alist-cons 'file-system-mapping
(specification->file-system-mapping arg #f)
result)))
- (option '(#\S "symlink") #t #f symlink-spec-option-parser)
+ (option '(#\S "symlink") #t #f
+ (lambda (opt name arg result)
+ ;; Delay call to avoid auto-loading (guix scripts pack)
+ ;; when unnecessary.
+ (symlink-spec-option-parser opt name arg result)))
(option '(#\r "root") #t #f
(lambda (opt name arg result)
(alist-cons 'gc-root arg result)))
- 92/96: gnu: gnutls: Extend test timeout on powerpc-linux., (continued)
- 92/96: gnu: gnutls: Extend test timeout on powerpc-linux., guix-commits, 2023/04/19
- 23/96: gnu: qtbase: Disable unstable tst_qpauseanimation test., guix-commits, 2023/04/19
- 25/96: gnu: python-isort: Update to 5.12.0., guix-commits, 2023/04/19
- 40/96: gnu: python-scikit-build: Update to 0.17.1., guix-commits, 2023/04/19
- 41/96: gnu: python-fonttools: Update to 4.39.3., guix-commits, 2023/04/19
- 57/96: snippets: tempel: Simplify git-commit-mode detection., guix-commits, 2023/04/19
- 62/96: gnu: texlive-latex-acronym: Replace with texlive-acronym., guix-commits, 2023/04/19
- 64/96: gnu: texlive-latex-lastpage: Replace with texlive-lastpage., guix-commits, 2023/04/19
- 37/96: gnu: python-pytest-trio: Update to 0.8.0., guix-commits, 2023/04/19
- 44/96: gnu: python-anyio: Update to 3.6.2., guix-commits, 2023/04/19
- 46/96: environment: Really auto-load (guix scripts pack).,
guix-commits <=
- 47/96: services: agetty: 'term-console' succeeds by default., guix-commits, 2023/04/19
- 48/96: substitute: Download nar from another server upon ETIMEDOUT., guix-commits, 2023/04/19
- 49/96: ssh: Silence remote daemon messages when sending store items., guix-commits, 2023/04/19
- 54/96: gnu: audacity: Update to 3.3.0-beta-1., guix-commits, 2023/04/19
- 58/96: gnu: r-with-tests: Update to 4.2.3., guix-commits, 2023/04/19
- 60/96: gnu: Add texlive-relsize., guix-commits, 2023/04/19
- 65/96: gnu: Add texlive-totpages., guix-commits, 2023/04/19
- 66/96: gnu: emacs-autothemer: Update to 0.2.17., guix-commits, 2023/04/19
- 75/96: gnu: kwin: Update skipped test list., guix-commits, 2023/04/19
- 78/96: gnu: r-rhdf5: Update to 2.42.1., guix-commits, 2023/04/19