diff options
| author | Ludovic Courtès <ludo@gnu.org> | 2022-01-05 19:29:50 +0100 |
|---|---|---|
| committer | Ludovic Courtès <ludo@gnu.org> | 2022-01-11 20:34:59 +0100 |
| commit | 0552dcb294bbfed76d7a495f5e368c53f20b852a (patch) | |
| tree | 9e6c02128719eb15ca8eb3a76aad66f811942a04 /gnu/packages.scm | |
| parent | 6128c274786fc0c109c0c4ce257e5d8b01ac86c3 (diff) | |
shell: Cache profiles even when using package specs.
This enables profile caching not just when '-m' or '-f' is used, but
also when package specs are passed on the command line, as in:
guix shell -D guix git
It also changes profile cache keys to include the system type, which was
previously ignored.
* guix/scripts/shell.scm (options-with-caching)[single-file-for-caching]:
Remove.
Call 'profile-cached-gc-root' instead; adjust to accept two values.
(profile-cache-primary-key): New procedure.
(profile-cache-key): Remove.
(profile-file-cache-key, profile-spec-cache-key): New procedures.
(profile-cached-gc-root): Rewrite to include functionality formally in
'single-file-for-caching', but extend to handle package specs.
* gnu/packages.scm (cache-is-authoritative?): Export.
* guix/transformations.scm (transformation-option-key?): New procedure.
* doc/guix.texi (Invoking guix shell): Move '--rebuild-cache'
documentation to the bottom, just above '--root'. Explain caching and
how these two options relate to that.
Diffstat (limited to 'gnu/packages.scm')
| -rw-r--r-- | gnu/packages.scm | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gnu/packages.scm b/gnu/packages.scm index ccfc83dd117..65ab7a7c1e4 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | ;;; GNU Guix --- Functional package management for GNU | 1 | ;;; GNU Guix --- Functional package management for GNU |
| 2 | ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> | 2 | ;;; Copyright © 2012-2020, 2022 Ludovic Courtès <ludo@gnu.org> |
| 3 | ;;; Copyright © 2013 Mark H Weaver <mhw@netris.org> | 3 | ;;; Copyright © 2013 Mark H Weaver <mhw@netris.org> |
| 4 | ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> | 4 | ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> |
| 5 | ;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com> | 5 | ;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com> |
| @@ -51,6 +51,7 @@ | |||
| 51 | %auxiliary-files-path | 51 | %auxiliary-files-path |
| 52 | %package-module-path | 52 | %package-module-path |
| 53 | %default-package-module-path | 53 | %default-package-module-path |
| 54 | cache-is-authoritative? | ||
| 54 | 55 | ||
| 55 | fold-packages | 56 | fold-packages |
| 56 | fold-available-packages | 57 | fold-available-packages |
