77 lines
2.6 KiB
Bash
77 lines
2.6 KiB
Bash
#! /usr/bin/env bash
|
|
# Args: <build args> [<repo>]
|
|
|
|
CONF_PATH="$(dirname "$0")"
|
|
|
|
if [ -z "$BUILD_DIR_64BIT" ]; then
|
|
BUILD_DIR_64BIT=build64
|
|
fi
|
|
|
|
if [ -z "$FLATPKAK_REPO" ]; then
|
|
FLATPKAK_REPO="$(echo ~/.local/share/flatpak/repo)"
|
|
fi
|
|
|
|
local_export_ostree() {
|
|
# Args: <ref> <output>
|
|
(
|
|
while read i
|
|
do
|
|
IFS=':' read i1 i2 <<< "$i"
|
|
if [ "$1" == "$i2" ]
|
|
then
|
|
echo EXPORT: "$i2"
|
|
ostree export --repo "$FLATPKAK_REPO" "$i2" | pigz > "$2" || exit 1
|
|
exit 0
|
|
fi
|
|
done <<< "$(ostree refs --repo "$FLATPKAK_REPO")"
|
|
exit 1
|
|
) || exit 1
|
|
}
|
|
|
|
locals_platform() {
|
|
if [ -z "$NO_REBUILD_LOCALE" ]; then
|
|
local_export_ostree runtime/org.gnome.Platform.Compat.i386/x86_64/$GNOME_VERSION "$CONF_PATH/i386.tar.gz" || exit 1
|
|
local_export_ostree runtime/org.gnome.Platform.Locale/x86_64/$GNOME_VERSION "$CONF_PATH/locale.tar.gz" || exit 1
|
|
fi
|
|
}
|
|
|
|
locals_sdk() {
|
|
if [ -z "$NO_REBUILD_LOCALE" ]; then
|
|
local_export_ostree runtime/org.gnome.Sdk.Compat.i386/x86_64/$GNOME_VERSION "$CONF_PATH/i386.tar.gz" || exit 1
|
|
local_export_ostree runtime/org.gnome.Sdk.Locale/x86_64/$GNOME_VERSION "$CONF_PATH/locale.tar.gz" || exit 1
|
|
local_export_ostree runtime/org.gnome.Sdk.Docs/x86_64/$GNOME_VERSION "$CONF_PATH/docs.tar.gz" || exit 1
|
|
fi
|
|
}
|
|
|
|
source "$(dirname "$0")/versions.sh" &&
|
|
TMP_DIR="$(mktemp -d)/." &&
|
|
cp -ra "$CONF_PATH/." "$TMP_DIR" &&
|
|
CONF_PATH="$TMP_DIR" &&
|
|
(
|
|
if [ -z "$2" ]; then
|
|
if [ -z "$NO_PLATFORM" ]; then
|
|
locals_platform &&
|
|
echo BUILD: Runtime &&
|
|
flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 "$BUILD_DIR_64BIT" "$CONF_PATH/RawPlatform-x86_64.yaml" || exit 3
|
|
fi
|
|
if [ -z "$NO_SDK" ]; then
|
|
locals_sdk &&
|
|
echo BUILD: Sdk &&
|
|
flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 "$BUILD_DIR_64BIT" "$CONF_PATH/RawSdk-x86_64.yaml" || exit 6
|
|
fi
|
|
else
|
|
if [ -z "$NO_PLATFORM" ]; then
|
|
locals_platform &&
|
|
echo BUILD: Runtime &&
|
|
flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 --gpg-sign=winebarrels@marko10-000.de "--repo=$2" "$BUILD_DIR_64BIT" "$CONF_PATH/RawPlatform-x86_64.yaml" || exit 3
|
|
fi
|
|
if [ -z "$NO_SDK" ]; then
|
|
locals_sdk &&
|
|
echo BUILD: Sdk &&
|
|
flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 --gpg-sign=winebarrels@marko10-000.de "--repo=$2" "$BUILD_DIR_64BIT" "$CONF_PATH/RawSdk-x86_64.yaml" || exit 6
|
|
fi
|
|
fi
|
|
)
|
|
RESULT="$!"
|
|
rm -rf "$(realpath "$TMP_DIR")"
|
|
exit "$RESULT" |