mirror of
https://github.com/JasonN3/build-container-installer.git
synced 2025-12-25 02:47:56 +01:00
add flatpaks to iso
This commit is contained in:
parent
13d4cbfd04
commit
e99ecbb068
4 changed files with 31 additions and 6 deletions
13
Makefile
13
Makefile
|
|
@ -17,6 +17,7 @@ FLATPAK_REMOTE_NAME = flathub
|
|||
FLATPAK_REMOTE_URL = https://flathub.org/repo/flathub.flatpakrepo
|
||||
FLATPAK_REMOTE_REFS =
|
||||
FLATPAK_REMOTE_REFS_DIR =
|
||||
FLATPAK_DIR =
|
||||
# Secure boot
|
||||
ENROLLMENT_PASSWORD =
|
||||
SECURE_BOOT_KEY_URL =
|
||||
|
|
@ -133,9 +134,17 @@ _LORAX_ARGS += -i flatpak-libs
|
|||
_LORAX_TEMPLATES += $(call get_templates,flatpak) \
|
||||
external/fedora-lorax-templates/ostree-based-installer/lorax-embed-flatpaks.tmpl
|
||||
_TEMPLATE_VARS += FLATPAK_REMOTE_NAME FLATPAK_REMOTE_REFS FLATPAK_REMOTE_URL _FLATPAK_REPO_GPG _FLATPAK_REPO_URL
|
||||
|
||||
endif
|
||||
|
||||
ifneq ($(FLATPAK_DIR),)
|
||||
_FLATPAK_REPO_GPG = $(shell curl -L $(FLATPAK_REMOTE_URL) | grep -i '^GPGKey=' | cut -d= -f2)
|
||||
_FLATPAK_REPO_URL = $(shell curl -L $(FLATPAK_REMOTE_URL) | grep -i '^URL=' | cut -d= -f2)
|
||||
_LORAX_ARGS += -i flatpak-libs
|
||||
_LORAX_TEMPLATES += $(call get_templates,flatpak)
|
||||
_TEMPLATE_VARS += FLATPAK_REMOTE_NAME FLATPAK_REMOTE_REFS FLATPAK_REMOTE_URL _FLATPAK_REPO_GPG _FLATPAK_REPO_URL
|
||||
endif
|
||||
|
||||
|
||||
ifneq ($(SECURE_BOOT_KEY_URL),)
|
||||
_LORAX_TEMPLATES += $(call get_templates,secureboot)
|
||||
_TEMPLATE_VARS += ENROLLMENT_PASSWORD
|
||||
|
|
@ -200,7 +209,7 @@ container/$(IMAGE_NAME)-$(IMAGE_TAG):
|
|||
xorriso/%.sh: xorriso/%.sh.in
|
||||
sed -i 's/quiet/quiet $(EXTRA_BOOT_PARAMS)/g' results/boot/grub2/grub.cfg
|
||||
sed -i 's/quiet/quiet $(EXTRA_BOOT_PARAMS)/g' results/EFI/BOOT/grub.cfg
|
||||
$(eval _VARS = IMAGE_NAME IMAGE_TAG ARCH VERSION)
|
||||
$(eval _VARS = FLATPAK_DIR IMAGE_NAME IMAGE_TAG ARCH VERSION)
|
||||
$(foreach var,$(_VARS),$(var)=$($(var))) envsubst '$(foreach var,$(_VARS),$$$(var))' < $(_BASE_DIR)/xorriso/$*.sh.in > $(_BASE_DIR)/xorriso/$*.sh
|
||||
|
||||
# Step 6: Generate xorriso input
|
||||
|
|
|
|||
|
|
@ -141,13 +141,13 @@ runs:
|
|||
run: |
|
||||
image="${{ inputs.image_repo }}/${{ inputs.image_name }}:${{ inputs.image_tag }}"
|
||||
# Make temp space
|
||||
FLATPAK_DIR=$(mktemp -d -p ${{ github.workspace }} flatpak.XXX)
|
||||
FLATPAK_DIR=$(basename $(mktemp -d -p ${{ github.workspace }} flatpak.XXX))
|
||||
# Get list of refs from directory
|
||||
sudo mkdir /github || true
|
||||
sudo ln -s ${{ github.workspace }} /github/workspace
|
||||
DIR_REFS=$(cat ${{ inputs.flatpak_remote_refs_dir }}/* | tr '\n' ' ' )
|
||||
# Generate install script
|
||||
cat << EOF > ${FLATPAK_DIR}/script.sh
|
||||
cat << EOF > ${{ github.workspace }}/${FLATPAK_DIR}/script.sh
|
||||
mkdir -p /flatpak/flatpak /flatpak/triggers
|
||||
mkdir /var/tmp || true
|
||||
chmod -R 1777 /var/tmp
|
||||
|
|
@ -159,7 +159,7 @@ runs:
|
|||
cp -R /flatpak/flatpak /flatpak_dir/
|
||||
ostree refs --repo=/flatpak_dir/flatpak/repo
|
||||
EOF
|
||||
docker run --rm --privileged --entrypoint bash -e FLATPAK_SYSTEM_DIR=/flatpak/flatpak -e FLATPAK_TRIGGERSDIR=/flatpak/triggers --volume ${FLATPAK_DIR}:/flatpak_dir ${image} /flatpak_dir/script.sh
|
||||
docker run --rm --privileged --entrypoint bash -e FLATPAK_SYSTEM_DIR=/flatpak/flatpak -e FLATPAK_TRIGGERSDIR=/flatpak/triggers --volume ${{ github.workspace }}/${FLATPAK_DIR}:/flatpak_dir ${image} /flatpak_dir/script.sh
|
||||
echo "flatpak_dir=${FLATPAK_DIR}" >> $GITHUB_OUTPUT
|
||||
docker rmi ${image}
|
||||
|
||||
|
|
@ -216,7 +216,7 @@ runs:
|
|||
FLATPAK_REMOTE_NAME="${{ inputs.flatpak_remote_name }}" \
|
||||
${vars} \
|
||||
FLATPAK_REMOTE_URL="${{ inputs.flatpak_remote_url }}" \
|
||||
FLATPAK_DIR="${{ steps.flatpak_dependencies.outputs.flatpak_dir }}" \
|
||||
FLATPAK_DIR="${{ steps.flatpak_dependencies.outputs.flatpak_dir && format('/github/workspace/{0}', steps.flatpak_dependencies.outputs.flatpak_dir) || '' }}" \
|
||||
IMAGE_NAME="${{ inputs.image_name }}" \
|
||||
IMAGE_REPO="${{ inputs.image_repo }}" \
|
||||
IMAGE_TAG="${{ inputs.image_tag || inputs.version }}" \
|
||||
|
|
|
|||
5
lorax_templates/flatpak_link.tmpl
Normal file
5
lorax_templates/flatpak_link.tmpl
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
<%page args="flatpak_dir"/>
|
||||
|
||||
%if flatpak_dir != ""
|
||||
symlink /run/install/repo/flatpak /flatpak
|
||||
%endif
|
||||
|
|
@ -10,6 +10,17 @@ echo "-chmod 0444 boot/grub2/grub.cfg"
|
|||
echo "-map $(pwd)/results/EFI/BOOT/grub.cfg EFI/BOOT/grub.cfg"
|
||||
echo "-chmod 0444 EFI/BOOT/grub.cfg"
|
||||
|
||||
if [[ -n "${FLATPAK_DIR}" ]]
|
||||
then
|
||||
pushd ${FLATPAK_DIR} > /dev/null
|
||||
for file in $(find)
|
||||
do
|
||||
echo "-map $(pwd)/${file} flatpak/${file}"
|
||||
echo "-chmod 0444 flatpak/${file}"
|
||||
done
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
if [ -f $(pwd)/sb_pubkey.der ]
|
||||
then
|
||||
echo "-map $(pwd)/sb_pubkey.der sb_pubkey.der"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue