From ac59ad313a60d104b1dfd9d36a3c24d75e70df25 Mon Sep 17 00:00:00 2001 From: badblocks <4161747+badbl0cks@users.noreply.github.com> Date: Mon, 22 Apr 2024 14:48:02 -0700 Subject: [PATCH] Update build_iso.yml --- .github/workflows/build_iso.yml | 45 +++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/.github/workflows/build_iso.yml b/.github/workflows/build_iso.yml index 1dd2c3f..3158b8d 100644 --- a/.github/workflows/build_iso.yml +++ b/.github/workflows/build_iso.yml @@ -56,6 +56,49 @@ jobs: fi echo "extra-boot-params=${EXTRA_BOOT_PARAMS}" >> $GITHUB_OUTPUT + - name: Set Flatpaks Directory Shortname + id: generate-flatpak-dir-shortname + shell: bash + run: | + FLATPAK_DIR_SHORTNAME="scripts/kde_flatpaks" + + if [[ "${{ matrix.image_name }}" =~ "gnome" ]]; then + FLATPAK_DIR_SHORTNAME="scripts/gnome_flatpaks" + fi + + echo "flatpak-dir-shortname=${FLATPAK_DIR_SHORTNAME}" >> $GITHUB_OUTPUT + + - name: Determine Flatpak Dependencies + id: flatpak_dependencies + shell: bash + run: | + set -ex + image="ghcr.io/ublue-os/${{ matrix.image_name }}:${{ steps.generate-tag.outputs.tag }}" + # Make temp space + TEMP_FLATPAK_INSTALL_DIR=$(mktemp -d -p ${{ github.workspace }} flatpak.XXX) + # Get list of refs from directory + FLATPAK_REFS_DIR=${{ github.workspace }}/${{ steps.generate-flatpak-dir-shortname.outputs.flatpak-dir-shortname }} + FLATPAK_REFS_DIR_LIST=$(cat ${FLATPAK_REFS_DIR}/* | tr '\n' ' ' ) + # Generate install script + cat << EOF > ${TEMP_FLATPAK_INSTALL_DIR}/script.sh + cat /temp_flatpak_install_dir/script.sh + mkdir -p /flatpak/flatpak /flatpak/triggers + mkdir /var/tmp || true + chmod -R 1777 /var/tmp + flatpak config --system --set languages "*" + flatpak remote-add --system flathub https://flathub.org/repo/flathub.flatpakrepo + flatpak install --system -y ${FLATPAK_REFS_DIR_LIST} + ostree refs --repo=\${FLATPAK_SYSTEM_DIR}/repo | grep '^deploy/' | grep -v 'org\.freedesktop\.Platform\.openh264' | sed 's/^deploy\///g' > /output/flatpaks_with_deps + EOF + docker run --rm --privileged \ + --entrypoint bash \ + -e FLATPAK_SYSTEM_DIR=/flatpak/flatpak \ + -e FLATPAK_TRIGGERSDIR=/flatpak/triggers \ + --volume ${FLATPAK_REFS_DIR}:/output \ + --volume ${TEMP_FLATPAK_INSTALL_DIR}:/temp_flatpak_install_dir \ + ${image} /temp_flatpak_install_dir/script.sh + docker rmi ${image} + - name: Build ISOs uses: jasonn3/build-container-installer@v1.2.0 id: build @@ -71,6 +114,8 @@ jobs: iso_name: ${{ matrix.image_name }}-${{ steps.generate-tag.outputs.tag }}.iso enable_cache_dnf: "false" enable_cache_skopeo: "false" + flatpak_remote_refs_dir: ${{ steps.generate-flatpak-dir-shortname.outputs.flatpak-dir-shortname }} + enable_flatpak_dependencies: "false" extra_boot_params: ${{ steps.generate-extra-params.outputs.extra-boot-params }} - name: Move ISOs to Upload Directory