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 avahi: Remove poll timeout when possible. 2020-12-20 10:40:57 +01:00
base16.scm
base32.scm
base64.scm
build-system.scm packages: Add 'package-with-c-toolchain'. 2020-10-12 18:23:47 +02:00
bzr-download.scm
cache.scm git: Periodically delete least-recently-used cached checkouts. 2021-01-13 16:26:58 +01:00
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 combinators: Fix typo. 2020-07-05 03:15:08 +05:30
config.scm.in build: Add '--with-channel-commit' and related configure flags. 2021-02-04 09:23:39 +01:00
cpio.scm linux-initrd: Add special-file->cpio-header*. 2020-11-22 11:03:31 +01:00
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 graph: Install JavaScript files. 2021-01-04 23:54:16 +01:00
deprecation.scm
derivations.scm derivations: Avoid uses of 'write' in 'write-derivation'. 2020-08-28 23:29:07 +02:00
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 discovery: Fix typo. 2020-07-05 16:07:59 +05:30
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 guix: Add globstar support. 2020-12-09 22:25:17 +01:00
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: Install JavaScript files. 2021-01-04 23:54:16 +01:00
graph.scm graph: Install JavaScript files. 2021-01-04 23:54:16 +01:00
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 Use "guile-zlib" and "guile-lzlib" instead of (guix config). 2020-08-24 13:35:24 +02:00
memoization.scm
modules.scm modules: Recognize #:re-export-and-replace. 2021-01-19 17:45:38 +01:00
monad-repl.scm
monads.scm maint: Require Guile >= 2.2.6. 2020-12-19 23:25:01 +01:00
nar.scm database: Remove #:deduplicate? from 'register-items'. 2020-12-15 17:32:11 +01:00
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 quirks: Adjust patch to allow traveling back to Dec. 2018. 2020-07-24 18:56:25 +02:00
records.scm
remote.scm Use 'formatted-message' instead of '&message' where appropriate. 2020-07-25 19:11:37 +02:00
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 guix: Fix download-svn-to-store. 2020-09-14 14:24:29 +01:00
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