diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 15f1ee1..b4b29db 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -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 diff --git a/CHANGELOG.md b/CHANGELOG.md index e9363b7..db1e143 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -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 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 859a602..5a9b04e 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -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/` diff --git a/build/Dockerfile b/build/Dockerfile index c349eed..ab24aa4 100644 --- a/build/Dockerfile +++ b/build/Dockerfile @@ -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 && \ diff --git a/scripts/winesapos-build.sh b/scripts/winesapos-build.sh index e5b57b2..c94235f 100755 --- a/scripts/winesapos-build.sh +++ b/scripts/winesapos-build.sh @@ -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 diff --git a/scripts/winesapos-install.sh b/scripts/winesapos-install.sh index 7521945..d72dbd1 100755 --- a/scripts/winesapos-install.sh +++ b/scripts/winesapos-install.sh @@ -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