From 035a114e582bb78051af903096ad1dcc3ec3328d Mon Sep 17 00:00:00 2001 From: Marcus Rehbock Date: Fri, 7 Aug 2026 19:31:46 -0700 Subject: [PATCH] GTD quadrant launcher icon; build speedups: arm64-only, 8G gradle heap, cached SDK step Co-Authored-By: Claude Fable 5 --- .gitea/workflows/release.yml | 19 +++--- .../res/drawable/ic_launcher_background.xml | 24 +++++-- .../res/drawable/ic_launcher_foreground.xml | 63 +++++++++++++++++++ .../res/drawable/ic_launcher_monochrome.xml | 27 ++++++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 8 +-- .../mipmap-anydpi-v26/ic_launcher_round.xml | 8 +-- app/android/gradle.properties | 6 +- 7 files changed, 132 insertions(+), 23 deletions(-) create mode 100644 app/android/app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100644 app/android/app/src/main/res/drawable/ic_launcher_monochrome.xml diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 06834dc..b52333d 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -28,14 +28,19 @@ jobs: node --version - name: Install Android SDK + # $HOME/android-sdk is a persistent runner volume — skip when warm. run: | - mkdir -p "$HOME/android-sdk/cmdline-tools" - curl -sLo /tmp/ct.zip https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip - unzip -q /tmp/ct.zip -d /tmp - mv /tmp/cmdline-tools "$HOME/android-sdk/cmdline-tools/latest" - yes | "$HOME/android-sdk/cmdline-tools/latest/bin/sdkmanager" --sdk_root="$HOME/android-sdk" --licenses >/dev/null 2>&1 || true - "$HOME/android-sdk/cmdline-tools/latest/bin/sdkmanager" --sdk_root="$HOME/android-sdk" \ - "platform-tools" "platforms;android-36" "build-tools;36.0.0" >/dev/null + if [ ! -d "$HOME/android-sdk/platforms/android-36" ]; then + mkdir -p "$HOME/android-sdk/cmdline-tools" + curl -sLo /tmp/ct.zip https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip + unzip -q /tmp/ct.zip -d /tmp + mv /tmp/cmdline-tools "$HOME/android-sdk/cmdline-tools/latest" + yes | "$HOME/android-sdk/cmdline-tools/latest/bin/sdkmanager" --sdk_root="$HOME/android-sdk" --licenses >/dev/null 2>&1 || true + "$HOME/android-sdk/cmdline-tools/latest/bin/sdkmanager" --sdk_root="$HOME/android-sdk" \ + "platform-tools" "platforms;android-36" "build-tools;36.0.0" >/dev/null + else + echo "SDK cache warm — skipping install" + fi - name: Install app dependencies run: cd app && npm ci --no-audit --no-fund diff --git a/app/android/app/src/main/res/drawable/ic_launcher_background.xml b/app/android/app/src/main/res/drawable/ic_launcher_background.xml index 883b2a0..35c52df 100644 --- a/app/android/app/src/main/res/drawable/ic_launcher_background.xml +++ b/app/android/app/src/main/res/drawable/ic_launcher_background.xml @@ -1,6 +1,18 @@ - - - - - - \ No newline at end of file + + + + + + + + diff --git a/app/android/app/src/main/res/drawable/ic_launcher_foreground.xml b/app/android/app/src/main/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 0000000..8ea7c54 --- /dev/null +++ b/app/android/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/android/app/src/main/res/drawable/ic_launcher_monochrome.xml b/app/android/app/src/main/res/drawable/ic_launcher_monochrome.xml new file mode 100644 index 0000000..f44ad24 --- /dev/null +++ b/app/android/app/src/main/res/drawable/ic_launcher_monochrome.xml @@ -0,0 +1,27 @@ + + + + + + + diff --git a/app/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/app/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml index 9764d2a..80faec8 100644 --- a/app/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ b/app/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -1,6 +1,6 @@ - - - - \ No newline at end of file + + + + diff --git a/app/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml index 9764d2a..80faec8 100644 --- a/app/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +++ b/app/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -1,6 +1,6 @@ - - - - \ No newline at end of file + + + + diff --git a/app/android/gradle.properties b/app/android/gradle.properties index a16c21f..dbe4c11 100644 --- a/app/android/gradle.properties +++ b/app/android/gradle.properties @@ -10,7 +10,7 @@ # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. # Default value: -Xmx512m -XX:MaxMetaspaceSize=256m -org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m +org.gradle.jvmargs=-Xmx8192m -XX:MaxMetaspaceSize=1024m # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit @@ -28,7 +28,9 @@ android.enablePngCrunchInReleaseBuilds=true # Use this property to specify which architecture you want to build. # You can also override it from the CLI using # ./gradlew -PreactNativeArchitectures=x86_64 -reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64 +# arm64 only: Pixel is arm64-v8a; x86/v7a builds are wasted time + APK bloat. +# Add back x86_64 temporarily if an emulator build is ever needed. +reactNativeArchitectures=arm64-v8a # Use this property to enable support to the new architecture. # This will allow you to use TurboModules and the Fabric render in