guix/guix
Ludovic Courtès 8cef92d063
profiles: Move some of the work to the build side.
When running:

  guix environment --ad-hoc gnome --no-grafts --search-paths

this reduces wall-clock time by ~5%.  The number of object cache lookups
goes down from 96K to 89K.  (Note that 'gnome' is an interesting example
because it has many propagated inputs, which themselves have propagated
inputs too, which would lead to a long input list and a long manifest in
the 'profile-derivation' gexp.)

* guix/profiles.scm (profile-derivation)[inputs, search-paths]: Remove.
[extra-inputs]: New variable.
[builder]: Adjust call to 'build-profile'.
* guix/build/profiles.scm (manifest-sexp->inputs+search-paths): New
procedure.
(build-profile): Remove 'inputs' parameter; make 'manifest' the 2nd
positional parameter and add #:extra-inputs.  Call
'manifest-sexp->inputs+search-paths' to obtain 'inputs' and
'search-paths'.
2021-06-12 00:49:32 +02:00
..
build profiles: Move some of the work to the build side. 2021-06-12 00:49:32 +02:00
build-system guix: Update to Bioconductor 3.13. 2021-06-05 09:12:39 +02:00
import guix: Update to Bioconductor 3.13. 2021-06-05 09:12:39 +02:00
scripts scripts: substitute: Cache connection when looking for narinfos. 2021-06-06 18:54:29 +02:00
store database: Validate #:nar-size and #:time when registering store items. 2021-01-31 21:49:58 +01:00
tests tests: do not hard code HTTP ports 2021-03-06 11:41:48 +01:00
android-repo-download.scm android-repo-download: Add guile-json extension. 2021-05-02 18:45:27 +02:00
avahi.scm
base16.scm
base32.scm
base64.scm
build-system.scm
bzr-download.scm
cache.scm
channels.scm channels: Add a #:system argument to channel-instances->manifest. 2021-05-12 08:34:07 +01:00
ci.scm guix: ci: Add spec support to latest-evaluations. 2021-05-26 15:29:32 +02:00
colors.scm
combinators.scm
config.scm.in build: Add '--with-channel-commit' and related configure flags. 2021-02-04 09:23:39 +01:00
cpio.scm
cve.scm cve: Gracefully handle bogus CVE entries. 2021-04-25 14:35:42 +02:00
cvs-download.scm cvs-download: Fix module exports 2021-05-05 16:56:43 +02:00
d3.v3.js
deprecation.scm
derivations.scm
describe.scm describe: Gracefully handle profiles that lack provenance info. 2021-05-09 23:46:46 +02:00
diagnostics.scm diagnostics, ui: Adjust to 'read-error' and 'syntax-error' in Guile 3.0.6. 2021-05-09 23:45:36 +02:00
discovery.scm
docker.scm docker: Pass '--hard-dereference' to 'tar' to ensure reproducible builds. 2021-02-08 23:50:35 +01:00
download.scm lint: archival: Lookup content in Disarchive database. 2021-05-22 23:13:11 +02:00
elf.scm
ftp-client.scm ftp-client: Before 'PASV', try 'EPSV' first for IPv6. 2021-02-15 08:38:00 +08:00
gexp.scm gexp: 'gexp->script' uses #:guile also as the guile-for-build. 2021-03-29 16:47:23 +02:00
git-authenticate.scm channels: Consider the current channel commit as authentic. 2021-02-04 09:23:39 +01:00
git-download.scm git-download: Support submodules in 'git-predicate'. 2021-05-28 11:36:02 +02:00
git.scm git: Update the mtime of the just-updated checkout. 2021-06-12 00:49:32 +02:00
glob.scm
gnu-maintenance.scm gnu-maintenance: 'generic-html' computes the right source URL. 2021-06-03 13:04:20 +02:00
gnupg.scm
grafts.scm grafts: Cache the derivation/graft mapping for the whole session. 2021-06-08 09:25:50 +02:00
graph.js
graph.scm
hg-download.scm hg-download: Add helpers for defining packages. 2021-06-05 23:39:29 +02:00
http-client.scm http-client: Remove exception mishandling in 'http-multiple-get'. 2021-04-25 14:36:45 +02:00
i18n.scm
inferior.scm inferior: Support querying package replacements. 2021-05-15 12:14:47 +01:00
ipfs.scm Add (guix ipfs). 2021-04-12 18:42:22 +02:00
licenses.scm licenses: Add BSD-1-Clause license. 2021-06-03 21:53:05 +02:00
lint.scm lint: Check for trailing whitespace in description. 2021-06-08 23:28:04 +02:00
man-db.scm
memoization.scm
modules.scm
monad-repl.scm
monads.scm
nar.scm
narinfo.scm substitute: Choose compression method based on past CPU usage. 2021-03-21 23:41:01 +01:00
openpgp.scm openpgp: Remove now unnecessary procedure. 2021-03-02 23:12:37 +01:00
packages.scm packages: 'package-with-patches' preserves package location. 2021-04-29 01:22:04 +02:00
pki.scm
profiles.scm profiles: Move some of the work to the build side. 2021-06-12 00:49:32 +02:00
profiling.scm
progress.scm progress: Add a download-size argument to progress-report-port. 2021-06-01 09:10:32 +02:00
quirks.scm
records.scm
remote.scm
repl.scm repl: Fix exception handling for interpreted code. 2021-01-21 00:14:38 +01:00
scripts.scm guix: scripts: Fix corner cases of hint for option typo. 2021-02-24 23:50:13 +01:00
search-paths.scm
self.scm etc: Add "bordeaux.guix.gnu.org.pub" public key file. 2021-06-07 11:31:17 +01:00
serialization.scm serialization: Micro-optimize string literal output in 'write-file-tree'. 2021-03-01 17:45:51 +01:00
sets.scm
ssh.scm ssh: Fix type that broke offloading. 2021-05-11 12:49:53 +02:00
status.scm status: Avoid abbreviation in messages. 2021-05-05 00:57:35 +02:00
store.scm store: 'references/cached' now uses a per-session cache. 2021-06-08 09:25:50 +02:00
substitutes.scm substitutes: Reduce negative TTLs. 2021-05-16 23:28:11 +02:00
svn-download.scm
swh.scm maint: Require Guile 3.0. 2021-06-01 23:26:07 +02:00
tests.scm Revert "tests: Refer to '%derivation-cache' in the right module." 2021-03-06 11:41:48 +01:00
transformations.scm transformations: '--with-latest' correctly handles already-latest case. 2021-06-08 23:28:04 +02:00
ui.scm ui, lint: Simplify exception handling in Guile 3 style. 2021-06-01 23:26:07 +02:00
upstream.scm upstream: 'package-latest-release' tries all the matching updaters. 2021-04-06 23:59:46 +02:00
utils.scm utils: 'tarball-sans-extension' recognizes ".tgz". 2021-04-05 12:03:09 +02:00
workers.scm