guix/guix
Christopher Baines 0daa72e34d
git-download: Reduce builder duplication.
Rather than creating a different builder in the store for every different
download (by hash), remove the hash from the builder and pass it in via an
environment variable.  This means that when git-fetch is used by two different
package sources, the derivations will still differ but the builder will be
shared.

It used to be this way, but changed with
264fdbcaff.  I noticed this through looking at
the same problem with svn-multi-fetch.

To try and make the effects of introducing variance in to the builder script
more obvious, separate it out in to it's own procedure, so that it's clearer
when there's new data going in that could cause variance.

* guix/git-download.scm (git-fetch/in-band*): Extract out builder script,
include hash in the derivation as an environment variable and update the
comment to be more directive.
(git-fetch-builder): New procedure.

Change-Id: I59c9fc445667c0e7dc44bcb706818300c394a1e5
2024-06-11 11:33:43 +01:00
..
build build: qt-utils: Use QML_IMPORT_PATH2 for Qt 5 (fixup). 2024-04-06 11:42:56 -04:00
build-system guix: Update Bioconductor version to 3.19. 2024-05-08 12:53:14 +02:00
import import: utils: End package descriptions with period. 2024-06-03 22:58:53 +02:00
platforms guix: Add xtensa-ath9k-elf platform. 2024-04-17 12:13:02 +02:00
scripts file-systems: Add support for mounting CIFS file systems 2024-06-04 12:08:34 +02:00
store deduplication: Detect holes and create sparse files. 2024-05-25 16:44:42 +02:00
tests
android-repo-download.scm
avahi.scm
base16.scm
base32.scm
base64.scm
build-system.scm
bzr-download.scm download: Honor ‘GUIX_DOWNLOAD_METHODS’ environment variable. 2024-03-09 18:55:50 +01:00
cache.scm
channels.scm guix: channels: Handle single case with authenticating message. 2024-05-13 09:11:05 +01:00
ci.scm
colors.scm
combinators.scm
config.scm.in
cpio.scm
cpu.scm cpu: Enable tuning for i686-linux. 2024-03-07 13:04:27 +02:00
cve.scm
cvs-download.scm download: Honor ‘GUIX_DOWNLOAD_METHODS’ environment variable. 2024-03-09 18:55:50 +01:00
d3.v3.js
deprecation.scm deprecation: Fix docstring typo. 2023-12-22 17:47:15 +01:00
derivations.scm Autoload (gcrypt hash). 2024-04-15 22:36:42 +02:00
describe.scm describe: Try harder to find the ‘guix pull’ profile. 2024-03-19 17:02:14 +01:00
diagnostics.scm
discovery.scm Autoload (guix build syscalls). 2024-04-15 22:36:42 +02:00
docker.scm guix: docker: Build layered images. 2024-01-08 21:04:44 +03:00
download.scm guix: Delay loading of (gnutls). 2024-04-15 22:36:42 +02:00
elf.scm
ftp-client.scm
gexp.scm gexp: Add #:guile parameter to ‘gexp->file’ and ‘scheme-file’. 2024-04-08 00:05:48 +02:00
git-authenticate.scm
git-download.scm git-download: Reduce builder duplication. 2024-06-11 11:33:43 +01:00
git.scm Autoload (gcrypt hash). 2024-04-15 22:36:42 +02:00
glob.scm
gnu-maintenance.scm
gnupg.scm
grafts.scm grafts: Use the right locale package. 2023-12-03 23:55:08 +01:00
graph.js
graph.scm
hash.scm
hg-download.scm hg-download: Reduce builder duplication. 2024-06-11 11:33:31 +01:00
http-client.scm
i18n.scm
inferior.scm
ipfs.scm
least-authority.scm least-authority: Add support for changing UIDs/GIDs before exec. 2023-12-22 00:31:41 +01:00
licenses.scm
lint.scm lint: archival: Trigger “Save Code Now” for VCSes other than Git. 2024-03-09 18:55:49 +01:00
man-db.scm
memoization.scm
modules.scm
monad-repl.scm monad-repl: Add REPL commands to inspect package arguments. 2023-12-04 22:26:38 +01:00
monads.scm
nar.scm Autoload (guix build syscalls). 2024-04-15 22:36:42 +02:00
narinfo.scm
openpgp.scm
packages.scm packages: ‘sanitize-inputs’ does not add labels when unnecessary. 2024-05-05 12:06:23 +02:00
pki.scm
platform.scm guix: platform: Add platform-rust-target. 2023-12-11 13:50:48 +02:00
profiles.scm gnu: linux-libre: Enable Zstd compression of kernel modules. 2024-05-29 22:01:23 -04:00
profiling.scm
progress.scm
quirks.scm
read-print.scm guix: import: Optionally import necessary yanked crates. 2024-01-09 09:38:38 +02:00
records.scm records: Do not inline the constructor. 2024-05-04 19:14:24 +02:00
remote.scm
repl.scm
rpm.scm
scripts.scm Autoload (guix build syscalls). 2024-04-15 22:36:42 +02:00
search-paths.scm
self.scm self: Use po4a instead of po4a-translate. 2024-06-03 00:27:11 +02:00
serialization.scm
sets.scm
ssh.scm ssh: ‘open-ssh-session’ displays the port number upon error. 2024-04-04 15:48:47 +02:00
status.scm
store.scm store: Add with-store/non-blocking. 2024-05-13 19:31:17 +01:00
substitutes.scm
svn-download.scm svn-download: Reduce svn-fetch builder duplication. 2024-06-11 11:33:22 +01:00
swh.scm swh: ‘lookup-origin-revision’ handles branches pointing to directories. 2024-03-09 18:55:49 +01:00
tests.scm
transformations.scm transformations: Fix powerpc64le support. 2024-06-11 12:39:44 +03:00
ui.scm ui: Delay use of (guix build syscalls). 2024-04-15 22:36:42 +02:00
upstream.scm upstream: update-package-inputs: Sort extra inputs. 2024-02-19 11:44:47 +01:00
utils.scm utils: Don’t re-export ‘call-with-temporary-output-file’. 2024-04-15 22:36:42 +02:00
workers.scm