guix-play/guix/build
Maxim Cournoyer d5f8b50365
pack: Move common build code to (guix build pack).
The rationale is to reduce the number of derivations built per pack to ideally
one, to minimize storage requirements.  The number of derivations had gone up
with 68380db4 ("pack: Extract populate-profile-root from
self-contained-tarball/builder.") as a side effect to improving code reuse.

* guix/scripts/pack.scm (guix): Add commentary comment.
(populate-profile-root, self-contained-tarball/builder): Extract to...
* guix/build/pack.scm (populate-profile-root): ... this, and...
(build-self-contained-tarball): ... that, adjusting for use on the build side.
(assert-utf8-locale): New procedure.
(self-contained-tarball, debian-archive, rpm-archive): Adjust accordingly.

Reviewed-by: Ludovic Courtès <ludo@gnu.org>
2023-07-18 16:56:06 -04:00
..
maven guix: maven: Fix java parser. 2022-02-05 20:16:32 +01:00
agda-build-system.scm build-system: New agda-build-system. 2023-06-04 10:59:34 +02:00
android-ndk-build-system.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
android-repo.scm
ant-build-system.scm build-system/ant: Avoid usage of (guix build syscalls). 2022-11-11 18:09:58 +01:00
asdf-build-system.scm guix: Leave some of guix/build/* unchanged. 2023-03-13 15:17:24 +01:00
bournish.scm
bzr.scm gnu: bazaar: Obsolete with breezy. 2022-05-31 14:54:02 -04:00
cargo-build-system.scm gnu: rust: Update to 1.67. 2023-05-07 19:28:57 +03:00
cargo-utils.scm
chicken-build-system.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
clojure-build-system.scm build-system/clojure: Avoid usage of (guix build sycalls). 2022-11-11 18:09:58 +01:00
clojure-utils.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
cmake-build-system.scm
compile.scm compile: Really disable cross-module inlining and related features. 2022-01-23 23:03:33 +01:00
copy-build-system.scm build-system/copy: Avoid use of 'set!'. 2021-05-04 18:33:20 +03:00
cvs.scm
debug-link.scm debug-link: Protect against dangling symlinks. 2023-01-17 16:05:20 +01:00
download-nar.scm guix: Improve download-nar. 2023-03-16 18:37:01 +00:00
download.scm download: Do not wrap TLS port on GnuTLS >= 3.7.7. 2022-08-03 17:43:29 +02:00
dub-build-system.scm build-system/dub: Avoid usage of (guix build syscalls). 2022-11-11 18:09:58 +01:00
dune-build-system.scm guix: dune-build-system: Do not use `test-target' argument. 2023-01-15 15:57:49 +01:00
elm-build-system.scm guix: Leave some of guix/build/* unchanged. 2023-03-13 15:17:24 +01:00
emacs-build-system.scm build-system: emacs: Use native compilation. 2022-09-11 15:46:32 +02:00
emacs-utils.scm guix: emacs-utils: Support disabling native-compilation. 2022-10-14 20:41:33 +02:00
font-build-system.scm build: font-build-system: Do not return #t from phases. 2022-05-16 14:17:01 +05:30
git.scm guix: git: Set initial branch name for git-fetch. 2023-07-05 18:57:29 +03:00
glib-or-gtk-build-system.scm build/glib-or-gtk: Avoid duplicate entries in gdk-pixbuf loaders cache. 2023-04-14 15:35:36 -04:00
gnu-bootstrap.scm gnu-bootstrap: Allow multiple module directories. 2022-03-19 13:33:06 -06:00
gnu-build-system.scm build: gnu-build-system: Remove source from native inputs. 2022-12-07 09:47:08 -05:00
gnu-dist.scm build-system/gnu: Remove 'install-license-files' from '%dist-phases'. 2023-03-10 14:49:56 +01:00
go-build-system.scm build-system/go: Initialize build cache from input packages. 2021-12-24 16:32:25 -05:00
graft.scm guix: build: Avoid using magic literals in the code for hash length. 2022-09-02 17:04:46 +02:00
gremlin.scm
guile-build-system.scm guix: Leave some of guix/build/* unchanged. 2023-03-13 15:17:24 +01:00
haskell-build-system.scm build: haskell-build-system: Build static executables by default. 2023-02-26 10:26:16 +01:00
hg.scm
java-utils.scm build-system/ant: Avoid usage of (guix build syscalls). 2022-11-11 18:09:58 +01:00
json.scm
julia-build-system.scm build: julia-build-system: Fix corner-case for parallel tests. 2022-02-24 12:20:32 +02:00
kconfig.scm kconfig: Streamline comment in 'modify-defconfig'. 2022-12-20 21:19:33 -05:00
linux-module-build-system.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
lisp-utils.scm guix: Leave some of guix/build/* unchanged. 2023-03-13 15:17:24 +01:00
make-bootstrap.scm guix: Leave some of guix/build/* unchanged. 2023-03-13 15:17:24 +01:00
maven-build-system.scm guix: maven: Support fixing modules. 2021-06-22 13:10:28 +02:00
meson-build-system.scm build: meson: Explicitly invoke "meson setup" instead of just "meson". 2023-04-09 12:55:46 -04:00
meson-configuration.scm build-system/meson: Support cross-compilation. 2021-07-14 15:57:40 +02:00
minetest-build-system.scm Merge branch 'master' into core-updates 2021-12-19 15:15:11 +02:00
minify-build-system.scm Merge branch 'master' into core-updates-frozen 2021-07-29 22:34:57 +02:00
node-build-system.scm guix: node-build-system: Delete from peerDependencies too. 2023-06-22 12:54:19 +02:00
ocaml-build-system.scm
pack.scm pack: Move common build code to (guix build pack). 2023-07-18 16:56:06 -04:00
perl-build-system.scm
po.scm po: Do not auto-translate cross-references to other manuals. 2023-04-12 08:29:18 -04:00
profiles.scm profiles: Implicitly set GUIX_EXTENSIONS_PATH. 2022-09-07 11:30:31 +03:00
pyproject-build-system.scm build-system/pyproject: Always run tests verbosely for supported backends. 2022-10-27 21:30:03 +02:00
python-build-system.scm python-build-system: Fix typo in module-level comment paragraph. 2022-06-22 13:53:55 -04:00
qt-build-system.scm Merge branch 'master' into core-updates 2021-07-18 19:50:01 +02:00
qt-utils.scm Merge branch 'master' into core-updates. 2023-04-14 17:15:08 -04:00
r-build-system.scm
rakudo-build-system.scm rakudo-build-system: Look up the interpreter in 'inputs'. 2021-06-04 22:34:32 +02:00
rebar-build-system.scm build-system: Add 'rebar-build-system'. 2022-06-15 10:17:25 +02:00
renpy-build-system.scm guix: Modernize renpy-build-system. 2022-06-17 18:49:06 +02:00
ruby-build-system.scm
scons-build-system.scm
store-copy.scm build: Fix typo in file-size docstring. 2022-02-07 16:22:37 -05:00
svn.scm svn-download: Do not expand keywords. 2023-06-11 18:13:44 +02:00
syscalls.scm syscalls: 'getxattr' throws upon error. 2023-03-27 18:48:52 +02:00
texlive-build-system.scm guix: texlive-build-system: Add #:link-scripts argument. 2023-07-18 18:15:05 +02:00
tree-sitter-build-system.scm build-system: Add tree-sitter-build-system. 2023-02-12 11:32:20 +04:00
union.scm guix: build: Factor out default collision-resolver. 2022-09-02 17:04:46 +02:00
utils.scm guix: build: Avoid using magic literals in the code for hash length. 2022-09-02 17:04:46 +02:00
waf-build-system.scm guix: Leave some of guix/build/* unchanged. 2023-03-13 15:17:24 +01:00