Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/.gitlab/ci/build-inside-vm.sh
diff options
context:
space:
mode:
authorDavid Runge <dvzrv@archlinux.org>2021-05-02 18:58:47 +0200
committerDavid Runge <dvzrv@archlinux.org>2021-05-09 15:50:08 +0200
commit2cac53967b99a497914c001ddeeb9b72d090b5d4 (patch)
tree1bc3a99b5e2a5b4d32cde699e854c15a89ba680f /.gitlab/ci/build-inside-vm.sh
parent535bc3c0daa761728bd4578ab3bc3726c0a60fda (diff)
mkarchiso: Implement buildmodes that allow building bootstrap images
archiso/mkarchiso: Introduce a buildmodes array, that can be used to build towards more than one output artifact type. Add a buildmode for building a bootstrap image (a compressed file containing a very minimal Arch installation). The buildmodes can be set either using a `buildmodes` array in a `profiledef.sh` or by using the `-m` option flag to mkarchiso and providing a space delimited, quoted list. The 'iso' buildmode is always the default if no buildmodes are setup. Implement building a bootstrap image, when using the 'bootstrap' `buildmode`, which uses a profile's 'bootstrap_packages.$arch' file to install packages using pacstrap and compressing it to a bootstrap image. The name of the output file is currently constructed from the `iso_name` value by appending `-bootstrap`. Replace the uses of `airootfs_dir` with the more generic `pacstrap_dir`, as the location denotes where pacstrap is being used. Replace uses of `img_name` with `image_name` and removing it from the global scope, so that it can be overridden per each buildmode. Rename `_cleanup_airootfs_dir()` to `_cleanup_pacstrap_dir()`. Make `_run_once()` more generic by prepending the state files with a string defined by `run_once_mode`. Add `_validate_requirements_buildmode_all()`, `_validate_requirements_buildmode_bootstrap()` and `_validate_requirements_buildmode_iso()` to validate the general requirements of the different buildmodes. Add `_build_bootstrap_image()` to generate the bootstrap image using bsdtar. Rename `_build_iso()` to `_build_iso_image()` to fit the naming of the respective bootstrap function. Extend `_read_profile()` to include the reading of bootstrap image specific packages from a file. Extend `_validate_options()` to include testing of the bootstrap packages and running of validation functions for all buildmodes. Change `_set_overrides()` to override the buildmodes if they are specified via the `-m` option flag. Change `_make_version()` to be used generically in all buildmodes. Change `_make_pkglist()` to be used generically in all buildmodes. Rename `_build_profile()` to `_build_buildmode_iso()` and set local variables that are specific to the buildmode, such as `image_name`, `pacstrap_dir`, `run_once_mode` , `buildmode_packages` and `buildmode_pkg_list`. Add `_build_buildmode_bootstrap()` and set local variables that are specific to the buildmode, such as `image_name`, `pacstrap_dir`, `run_once_mode` , `buildmode_packages` and `buildmode_pkg_list`. Add the `-m` option flag to the list of flags. Closes #127
Diffstat (limited to '.gitlab/ci/build-inside-vm.sh')
0 files changed, 0 insertions, 0 deletions