0552dcb294
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. |
||
---|---|---|
.. | ||
container | ||
git | ||
home | ||
import | ||
system | ||
archive.scm | ||
authenticate.scm | ||
build.scm | ||
challenge.scm | ||
container.scm | ||
copy.scm | ||
deploy.scm | ||
describe.scm | ||
discover.scm | ||
download.scm | ||
edit.scm | ||
environment.scm | ||
gc.scm | ||
git.scm | ||
graph.scm | ||
hash.scm | ||
home.scm | ||
import.scm | ||
install.scm | ||
lint.scm | ||
offload.scm | ||
pack.scm | ||
package.scm | ||
perform-download.scm | ||
processes.scm | ||
publish.scm | ||
pull.scm | ||
refresh.scm | ||
remove.scm | ||
repl.scm | ||
search.scm | ||
shell.scm | ||
show.scm | ||
size.scm | ||
style.scm | ||
substitute.scm | ||
system.scm | ||
time-machine.scm | ||
upgrade.scm | ||
weather.scm |