I've found a solution to the upstream-source-compiler/git-fetch problem: returning the result of git-fetch like upstream-source-compiler/url-fetch returns the result of url-fetch. The following now works: $ ./pre-inst-env guix build --source minetest-unified-inventory --with-latest=minetest-unified-inventory Unrelated change: I let (guix git) be autoloaded, to avoid loading guile-git when not necessary. I think this patch series is ready now? Sarah Morgensen (4): guix hash: Extract file hashing procedures. import: Factorize file hashing. refresh: Support non-tarball sources. upstream: Support updating and fetching 'git-fetch' origins. Makefile.am | 1 + guix/git.scm | 14 +++++++- guix/hash.scm | 68 +++++++++++++++++++++++++++++++++++++ guix/import/cran.scm | 32 ++---------------- guix/import/elpa.scm | 29 +++------------- guix/import/git.scm | 22 +++++++----- guix/import/go.scm | 25 ++------------ guix/import/minetest.scm | 25 ++++++-------- guix/scripts/hash.scm | 22 +++--------- guix/scripts/refresh.scm | 10 +++--- guix/upstream.scm | 73 ++++++++++++++++++++++++++++++++++++---- tests/minetest.scm | 7 ++-- 12 files changed, 195 insertions(+), 133 deletions(-) create mode 100644 guix/hash.scm base-commit: 9708681f1a9f221ae6cad64625ba8309b6742653 -- 2.30.2