mirror of
https://github.com/JasonN3/build-container-installer.git
synced 2025-12-25 10:57:55 +01:00
Co-authored-by: codacy-production[bot] <61871480+codacy-production[bot]@users.noreply.github.com>
42 lines
No EOL
1.7 KiB
Makefile
42 lines
No EOL
1.7 KiB
Makefile
IMAGE := $(IMAGE_REPO)/$(IMAGE_NAME):$(IMAGE_TAG)
|
|
FLATPAK_DIR := $(if $(GITHUB_WORKSPACE),$(shell mktemp -d -p $(GITHUB_WORKSPACE) flatpak.XXX),$(PWD)/flatpaks)
|
|
|
|
.PHONY: full_list
|
|
full_list: repo
|
|
cat $(FLATPAK_DIR)/list.txt >&2
|
|
|
|
|
|
repo: script.sh
|
|
$(if $(GITHUB_WORKSPACE),cp script.sh $(FLATPAK_DIR)/)
|
|
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
|
|
$(if $(GITHUB_OUTPUT),echo "flatpak_dir=$(subst $(GITHUB_WORKSPACE)/,,$(FLATPAK_DIR))" >> $(GITHUB_OUTPUT))
|
|
docker rmi $(IMAGE)
|
|
|
|
script.sh:
|
|
cat << EOF > 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 $(FLATPAK_REMOTE_NAME) $(FLATPAK_REMOTE_URL)
|
|
flatpak install --system -y $(FLATPAK_REMOTE_REFS)
|
|
ostree init --repo=/flatpak_dir/repo --mode=archive-z2
|
|
for i in \$$(ostree refs --repo=\$${FLATPAK_SYSTEM_DIR}/repo | grep '^deploy/' | sed 's/^deploy\///g')
|
|
do
|
|
echo "Copying \$${i}..."
|
|
ostree --repo=/flatpak_dir/repo pull-local \$${FLATPAK_SYSTEM_DIR}/repo \$$(ostree --repo=\$${FLATPAK_SYSTEM_DIR}/repo rev-parse $(FLATPAK_REMOTE_NAME)/\$${i})
|
|
mkdir -p \$$(dirname /flatpak_dir/repo/refs/heads/\$${i})
|
|
ostree --repo=\$${FLATPAK_SYSTEM_DIR}/repo rev-parse $(FLATPAK_REMOTE_NAME)/\$${i} > /flatpak_dir/repo/refs/heads/\$${i}
|
|
done
|
|
flatpak build-update-repo /flatpak_dir/repo
|
|
ostree refs --repo=/flatpak_dir/repo | tee /flatpak_dir/list.txt
|
|
EOF
|
|
|
|
install-deps:
|
|
|
|
clean:
|
|
$(if $(wildcard script.sh),rm script.sh)
|
|
$(if $(wildcard repo),rm -Rf repo)
|
|
$(if $(wildcard list.txt),rm list.txt)
|
|
|
|
.ONESHELL: |