aboutsummaryrefslogtreecommitdiff
path: root/scripts/build_arch.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/build_arch.sh')
-rwxr-xr-xscripts/build_arch.sh33
1 files changed, 33 insertions, 0 deletions
diff --git a/scripts/build_arch.sh b/scripts/build_arch.sh
new file mode 100755
index 0000000..602b31d
--- /dev/null
+++ b/scripts/build_arch.sh
@@ -0,0 +1,33 @@
+#!/usr/bin/env bash
+
+set -euo pipefail
+
+container_image_prefix=$1
+distro=$2
+app_name=$3
+arch=$4
+channel=$5
+
+version=`just version`
+staging="$(mktemp -d)"
+
+just dist
+cp _build/meson-dist/map-${version}.tar.xz "${staging}/"
+
+cp build-aux/arch/PKGBUILD "${staging}/"
+
+podman run --rm -v "${staging}:/build:Z" \
+ ${container_image_prefix}:${distro} \
+ bash -c "
+ mkdir -p /tmp/pkg
+ cp /build/*.tar.xz /tmp/pkg
+ cp /build/PKGBUILD /tmp/pkg
+ chown -R builder:builder /tmp/pkg
+ su builder -c 'cd /tmp/pkg && PKGEXT=.pkg.tar.gz makepkg -f'
+ mkdir -p /build/out
+ cp /tmp/pkg/map-${version}-1-${arch}.pkg.tar.gz /build/out/
+ "
+
+mkdir -p dist
+cp ${staging}/out/*.pkg.tar.gz "dist/${app_name}-${arch}-${channel}-${distro}.pkg.tar.gz"
+rm -rf "${staging}"