guix/doc
Ludovic Courtès 9730692d9f
shell: Maintain a profile cache.
shell: Maintain a profile cache.

With this change, running "guix shell" (no arguments) is equivalent to:

  guix environment -r ~/.cache/guix/profiles/some-root -l guix.scm

This is the cache miss.  On cache hit, it's equivalent to:

  guix environment -p ~/.cache/guix/profiles/some-root

... which can run in 0.1s.

* guix/scripts/shell.scm (options-with-caching): New procedure.
(parse-args): Use it.
(%profile-cache-directory): New variable.
(profile-cache-key, profile-cached-gc-root): New procedures.
(show-help, %options): Add '--rebuild-cache'.
(guix-shell)[cache-entries, entry-expiration]: New procedures.
Add call to 'maybe-remove-expired-cache-entries'.
* doc/guix.texi (Invoking guix shell): Document '--rebuild-cache'.
2021-10-25 19:02:33 +02:00
..
images
build.scm doc: Build manual translations with 'guile-3.0-latest'. 2021-07-09 17:33:46 +02:00
contributing.texi Add 'guix shell'. 2021-10-25 18:58:18 +02:00
environment-gdb.scm
fdl-1.3.texi
guix-cookbook.texi doc: cookbook: Mention translations of the cookbook. 2021-10-04 16:36:58 +02:00
guix.texi shell: Maintain a profile cache. 2021-10-25 19:02:33 +02:00
he-config-bare-bones.scm Move (gnu home-services) to (gnu home services). 2021-10-09 19:24:18 +03:00
htmlxref.cnf doc: Update htmlxref.cnf. 2021-10-04 16:36:58 +02:00
local.mk doc: Set LC_ALL when translating xref commands. 2021-10-22 02:32:06 +02:00
package-hello.json
package-hello.scm