| KIWI 10.2.33 |
| ENV FLUTTER_HOME=/opt/flutter |
| ENV PATH="${PATH}:/opt/flutter/bin" |
| /bin/sh -c dnf -y install git curl unzip xz python3 which nodejs && dnf clean all |
| /bin/sh -c set -eux; VER=$(curl -fsSL "https://storage.googleapis.com/flutter_infra_release/releases/releases_linux.json" | python3 -c "import json,sys; r=[x for x in json.load(sys.stdin)['releases'] if x['channel']=='stable'][0]; print(r['version'])"); curl -fsSL "https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${VER}-stable.tar.xz" | tar -xJ -C /opt; git config --global --add safe.directory '*'; flutter config --no-analytics |
| /bin/sh -c dnf -y install java-21-openjdk-devel && dnf clean all |
| ENV JAVA_HOME=/usr/lib/jvm/java-21-openjdk |
| ENV ANDROID_SDK_ROOT=/opt/android-sdk |
| ENV PATH="${JAVA_HOME}/bin:${PATH}:/opt/android-sdk/cmdline-tools/latest/bin:/opt/android-sdk/platform-tools" |
| /bin/sh -c curl -fsSL "https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip" -o /tmp/cmdline-tools.zip && mkdir -p /opt/android-sdk/cmdline-tools && unzip -q /tmp/cmdline-tools.zip -d /tmp && mv /tmp/cmdline-tools /opt/android-sdk/cmdline-tools/latest && rm /tmp/cmdline-tools.zip && yes | sdkmanager --licenses > /dev/null 2>&1 || true && sdkmanager "platform-tools" "platforms;android-35" "platforms;android-36" "build-tools;35.0.0" "build-tools;36.0.0" && ln -sf /opt/android-sdk/cmdline-tools/latest/bin/sdkmanager /usr/local/bin/sdkmanager && ln -sf /opt/android-sdk/platform-tools/adb /usr/local/bin/adb |
| /bin/sh -c set -eux; NDK_VER=$(grep -rh 'ndkVersion' /opt/flutter/packages/flutter_tools/gradle/src/main/kotlin/ --include='*.kt' 2>/dev/null | grep -v '//' | grep -oP '\d{2}\.\d+\.\d+' | sort -V | tail -1); [ -n "${NDK_VER}" ] || { echo "ERROR: could not detect NDK version from Flutter sources"; exit 1; }; echo "Installing NDK ${NDK_VER}"; sdkmanager "ndk;${NDK_VER}" "cmake;3.22.1" |
| /bin/sh -c flutter config --enable-android && flutter precache --android |