guix/guix
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
..
build build: julia-build-system: Create 'Project.toml' file when missing. 2022-01-10 15:15:31 +02:00
build-system build-system: Pass #:make-dynamic-linker-cache? #f when cross-compiling. 2022-01-11 20:34:59 +01:00
import import: texlive: Remove more specific entries with the same prefix. 2022-01-10 12:46:47 +01:00
scripts shell: Cache profiles even when using package specs. 2022-01-11 20:34:59 +01:00
store
tests tests: git: Avoid ambiguous module import. 2021-12-23 18:49:05 -05:00
android-repo-download.scm
avahi.scm
base16.scm
base32.scm
base64.scm
build-system.scm
bzr-download.scm
cache.scm
channels.scm channels: Add 'branch' to 'channel->code' output. 2021-12-25 19:12:37 +01:00
ci.scm ci: Restrict substitute search to guix jobset. 2021-12-19 16:25:51 +01:00
colors.scm
combinators.scm combinators: Add 'define-compile-time-procedure'. 2021-12-20 16:21:40 +01:00
config.scm.in
cpio.scm
cpu.scm Add (guix cpu). 2022-01-01 15:23:24 +01:00
cve.scm
cvs-download.scm
d3.v3.js
deprecation.scm
derivations.scm
describe.scm
diagnostics.scm
discovery.scm
docker.scm
download.scm
elf.scm
extracting-download.scm
ftp-client.scm
gexp.scm
git-authenticate.scm
git-download.scm
git.scm upstream: Support updating and fetching 'git-fetch' origins. 2022-01-06 16:27:30 +01:00
glob.scm
gnu-maintenance.scm
gnupg.scm
grafts.scm
graph.js
graph.scm
hash.scm guix hash: Extract file hashing procedures. 2022-01-06 16:27:30 +01:00
hg-download.scm
http-client.scm
i18n.scm
inferior.scm
ipfs.scm
licenses.scm
lint.scm lint: Adjust patch file length check. 2021-12-17 21:04:25 -08:00
man-db.scm
memoization.scm
modules.scm
monad-repl.scm
monads.scm
nar.scm
narinfo.scm narinfo: Do not repeat slash when building nar URLs. 2021-12-12 00:27:53 +01:00
openpgp.scm
packages.scm packages: Avoid #:re-export-and-replace to allow upgrades from 1.2.0. 2021-12-22 23:23:16 +01:00
pki.scm
profiles.scm
profiling.scm
progress.scm progress: Rate limit drawing in the progress-reporter/bar. 2021-12-12 14:12:15 +00:00
quirks.scm
records.scm
remote.scm
repl.scm
scripts.scm
search-paths.scm
self.scm self: Add guile-lzma as a dependency. 2021-12-23 08:59:44 -05:00
serialization.scm
sets.scm
ssh.scm
status.scm
store.scm
substitutes.scm substitutes: Build correct narinfo URLs for cache URLs without trailing slash. 2021-12-12 00:27:53 +01:00
svn-download.scm
swh.scm
tests.scm
transformations.scm shell: Cache profiles even when using package specs. 2022-01-11 20:34:59 +01:00
ui.scm ui: It's 2022! 2022-01-01 02:02:44 -05:00
upstream.scm upstream: Support updating and fetching 'git-fetch' origins. 2022-01-06 16:27:30 +01:00
utils.scm utils: Fix URL in comment. 2021-12-30 13:41:27 +01:00
workers.scm