guix/gnu
Ludovic Courtès 0552dcb294
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.
2022-01-11 20:34:59 +01:00
..
bootloader
build
home
installer
machine machine: ssh: Open a single SSH session per machine. 2022-01-09 23:17:17 +01:00
packages gnu: varnish: Remove input labels. 2022-01-11 18:36:40 +01:00
platforms
services services: laminar: Set LAMINAR_BIND_RPC environment variable. 2022-01-11 11:47:42 +05:30
system
tests
artwork.scm
bootloader.scm
ci.scm
home.scm
image.scm
installer.scm
local.mk gnu: QEMU: Update to 6.2.0. 2022-01-11 18:36:40 +01:00
machine.scm
packages.scm shell: Cache profiles even when using package specs. 2022-01-11 20:34:59 +01:00
platform.scm
services.scm
system.scm
tests.scm