e026e3bc9f
This rebuilds the automaticaly whenever the image tag changes. Whenever something in the image needs to change, alter the installation script and change the tag to the current date. This removes the -s (strict) argument from js68, as it doesn't exist in js78. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1492>
35 lines
526 B
Bash
Executable File
35 lines
526 B
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
if [[ $# -lt 4 ]]; then
|
|
echo Usage: $0 [options] [repo-url] [commit] [subdir]
|
|
echo Options:
|
|
echo -Dkey=val
|
|
exit 1
|
|
fi
|
|
|
|
MESON_OPTIONS=()
|
|
|
|
while [[ $1 =~ ^-D ]]; do
|
|
MESON_OPTIONS+=( "$1" )
|
|
shift
|
|
done
|
|
|
|
REPO_URL="$1"
|
|
COMMIT="$2"
|
|
SUBDIR="$3"
|
|
PREPARE="$4"
|
|
|
|
REPO_DIR="$(basename ${REPO_URL%.git})"
|
|
|
|
git clone --depth 1 "$REPO_URL" -b "$COMMIT"
|
|
pushd "$REPO_DIR"
|
|
pushd "$SUBDIR"
|
|
sh -c "$PREPARE"
|
|
meson --prefix=/usr _build "${MESON_OPTIONS[@]}"
|
|
ninja -C _build install
|
|
popd
|
|
popd
|
|
rm -rf "$REPO_DIR"
|