mirror of
https://github.com/flightlessmango/MangoHud.git
synced 2024-11-16 00:13:00 +00:00
42 lines
1.5 KiB
Bash
Executable File
42 lines
1.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Usage example: $0 master soldier 0.20210618.0
|
|
set -u
|
|
|
|
if [ $# -eq 2 ]; then
|
|
echo Specify runtime version too
|
|
exit 1
|
|
fi
|
|
|
|
SRCDIR=$PWD
|
|
BRANCH="${1:-master}"
|
|
# soldier 0.20210618.0 or newer
|
|
# scout 0.20210630.0 or newer
|
|
RUNTIME="${2:-soldier}"
|
|
VERSION="${3:-0.20210618.0}"
|
|
IMAGE="steamrt_${RUNTIME}_${VERSION}_amd64:mango-${RUNTIME}"
|
|
BASEURL="https://repo.steampowered.com/steamrt-images-${RUNTIME}/snapshots/${VERSION}"
|
|
CACHEDIR="./cache/steamrt-images-${RUNTIME}/snapshots/${VERSION}"
|
|
|
|
mkdir -p "${CACHEDIR}"
|
|
|
|
echo -e "\e[1mBuilding branch \e[92m${BRANCH}\e[39m using \e[92m${RUNTIME}:${VERSION}\e[39m runtime\e[0m"
|
|
|
|
if ! docker inspect --type=image ${IMAGE} 2>&1 >/dev/null ; then
|
|
rm -fr ./cache/empty
|
|
set -e
|
|
mkdir -p ./cache/empty
|
|
sed "s/%RUNTIME%/${RUNTIME}/g" steamrt.Dockerfile.in > ./cache/steamrt.Dockerfile
|
|
|
|
wget -P "${CACHEDIR}" -c ${BASEURL}/com.valvesoftware.SteamRuntime.Sdk-amd64,i386-${RUNTIME}-sysroot.tar.gz
|
|
cp --reflink=always "${CACHEDIR}/com.valvesoftware.SteamRuntime.Sdk-amd64,i386-${RUNTIME}-sysroot.tar.gz" ./cache/empty/
|
|
docker build -f ./cache/steamrt.Dockerfile -t ${IMAGE} ./cache/empty
|
|
fi
|
|
|
|
docker run --entrypoint=/bin/sh --rm -i -v "${SRCDIR}/srt-output:/output" ${IMAGE} << EOF
|
|
export RUNTIME=${RUNTIME}
|
|
export SRT_VERSION=${VERSION}
|
|
git clone git://github.com/flightlessmango/MangoHud.git . --branch ${BRANCH} --recurse-submodules --progress
|
|
./build-srt.sh clean build package release
|
|
cp -v build-srt/MangoHud*tar.gz /output/
|
|
EOF
|