[install][build] Allow building all image types

when using the container build method.
This commit is contained in:
Luke Short 2024-05-17 18:12:48 -06:00
commit 01f7ed88a8
6 changed files with 11 additions and 8 deletions

View file

@ -37,4 +37,4 @@ jobs:
run: docker build --pull --no-cache -t winesapos-img-builder build/.
- name: Build system image
id: build_image
run: docker run --rm -v $(pwd):/workdir -v /dev:/dev --env WINESAPOS_ENABLE_TESTING_REPO=true --privileged=true winesapos-img-builder:latest /bin/bash -x /workdir/scripts/winesapos-build.sh
run: docker run --rm -v $(pwd):/workdir -v /dev:/dev --env WINESAPOS_ENABLE_TESTING_REPO=true --env WINESAPOS_DEBUG_INSTALL=true --env WINESAPOS_DEBUG_TESTS=true --env WINESAPOS_ENABLE_PORTABLE_STORAGE=false --privileged=true winesapos-img-builder:latest /bin/bash -x /workdir/scripts/winesapos-build.sh

View file

@ -46,6 +46,7 @@
- Add support for the SSHFS file system.
- Add support for the UDF file system.
- Add Polychromatic GUI for managing Razer accessories.
- Change the container build to support all image types.
## 4.0.0 - The Conversion Update

View file

@ -285,6 +285,7 @@ $ export <KEY>=<VALUE>
| WINESAPOS_GITHUB_ACTIONS_TESTS | true or false | false | false | false | Used to control if certain tests with known issues should run in GitHub Actions (true) or not (false). |
| WINESAPOS_SINGLE_MIRROR | true or false | false | false | false | If a single mirror or a list of mirrors will be used. |
| WINESAPOS_SINGLE_MIRROR_URL | ``http://ohioix.mm.fcix.net`` | ``http://ohioix.mm.fcix.net`` | ``http://ohioix.mm.fcix.net`` | ``http://ohioix.mm.fcix.net`` | If a single mirror or a list of mirrors will be used. It is assumed that ``${WINESAPOS_SINGLE_MIRROR_URL}/[archlinux|manjaro]`` paths are available. |
| WINESAPOS_ENV_FILE | | (None) | (None) | (None) | The `scripts/env/${WINESAPOS_ENV_FILE}` to load during a container build. |
### Install winesapOS
@ -399,6 +400,8 @@ sudo docker build --pull --no-cache -t winesapos-img-builder:manjaro build/.
sudo docker run --rm -v $(pwd):/workdir -v /dev:/dev --env WINESAPOS_DISTRO=manjaro --privileged=true winesapos-img-builder:manjaro /bin/bash -x /workdir/scripts/winesapos-build.sh
```
By default, the performance image is built. Use `--env WINESAPOS_ENV_FILE=winesapos-env-minimal.sh` or `--env WINESAPOS_ENV_FILE=winesapos-env-secure.sh` to build a different image type.
After the build, these files will be created:
- `output/`

View file

@ -1,8 +1,6 @@
FROM archlinux:latest
ENV OUTPUT_DIR /output
ENV WINESAPOS_ENABLE_PORTABLE_STORAGE false
ENV WINESAPOS_GITHUB_ACTIONS_TESTS true
RUN \
pacman --noconfirm -Syy && \

View file

@ -3,11 +3,13 @@
set -ex
export \
WINESAPOS_DEBUG_INSTALL=true \
WINESAPOS_DEBUG_TESTS=true \
WINESAPOS_CREATE_DEVICE=true \
WINESAPOS_ENABLE_PORTABLE_STORAGE=false \
WINESAPOS_BUILD_IN_VM_ONLY=false
WINESAPOS_BUILD_IN_VM_ONLY=false \
WINESAPOS_GITHUB_ACTIONS_TESTS=true
if [[ ! -z "${WINESAPOS_ENV_FILE}" ]]; then
source "/workdir/scripts/env/${WINESAPOS_ENV_FILE}"
fi
/bin/bash /workdir/scripts/winesapos-install.sh

View file

@ -1236,7 +1236,6 @@ echo "Done."
echo "End time: $(date)"
if [[ "${WINESAPOS_CREATE_DEVICE}" == "true" ]]; then
cp ${WINESAPOS_INSTALL_DIR}/etc/winesapos/winesapos-install.log ../output/
chroot ${WINESAPOS_INSTALL_DIR} pacman -Q > ../output/winesapos-packages.txt
echo ${winesapos_tests_rc} > ../output/winesapos-install-rc.txt
fi