From 3605f4e081283b2f32451c7075fe07648e76e99d Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Thu, 22 Oct 2026 11:08:09 +0200 Subject: Add Android project skeleton and Docker build Co-Authored-By: Claude Opus 5.5 --- build.sh | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100755 build.sh (limited to 'build.sh') diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..154e32d --- /dev/null +++ b/build.sh @@ -0,0 +1,33 @@ +#!/bin/bash +# build.sh: build the debug APK in a throwaway Docker container, or run the +# JVM unit tests with "./build.sh test". Nothing is installed on the host. +# Output: app/build/outputs/apk/debug/mygram-droid-debug.apk +# +# Copyright (C) 2026 Danilo M. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License version 2 as published +# by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. + +set -euo pipefail +cd "$(dirname "$0")" + +task=assembleDebug +[ "${1:-}" = test ] && task=testDebugUnitTest + +docker image inspect mygram-droid-build >/dev/null 2>&1 || + docker build -t mygram-droid-build app + +# Gradle and Android caches live in app/.home so files stay user-owned. +mkdir -p app/.home +docker run --rm --user "$(id -u):$(id -g)" -e HOME=/src/.home -e JAVA_TOOL_OPTIONS=-Duser.home=/src/.home \ + -v "$PWD/app:/src" -w /src mygram-droid-build \ + gradle --no-daemon -q "$task" +if [ "$task" = assembleDebug ]; then + ls -l app/build/outputs/apk/debug/*.apk +fi -- cgit v1.2.3