pluginManagement { repositories { google() gradlePluginPortal() mavenCentral() // google() (above) serves AGP for the Android-framework modules. // It requires the Android Gradle Plugin / SDK, absent in this env. } } @Suppress("UnstableApiUsage") dependencyResolutionManagement { // Modules must not declare their own repositories. repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() // JitPack — builds the Apache-2.0 Termux terminal-emulator + terminal-view // submodules on demand for :terminal-view (A16, plan §9 R2). Scoped to those // two libs only; never termux-shared/app (GPLv3). maven { url = uri("https://jitpack.io") } } // The version catalog at gradle/libs.versions.toml is auto-registered as `libs`. } rootProject.name = "webterm-android" // ── Pure Kotlin/JVM modules (JVM-unit-testable; the 80% Kover targets) ────────── // These build with the JVM toolchain only — NO Android SDK required. include(":wire-protocol") include(":session-core") include(":api-client") include(":client-tls") include(":test-support") // :transport-okhttp (A7) — OkHttp is a plain JVM lib, so this pure-JVM module // builds and tests here (MockWebServer) with NO Android SDK. include(":transport-okhttp") // ── Android-framework modules ─────────────────────────────────────────────────── // The Android SDK IS now installed (see android/README.md → "Android SDK setup"), // and AGP 9.2.1 is proven to build against SDK 35 with Gradle 9.6.1. Enable each as // its real module is implemented (plan AW2+). // Recipe: apply `alias(libs.plugins.android.library)` ONLY (AGP 9 has built-in // Kotlin — do NOT add kotlin.android); android { namespace; compileSdk = 36; // defaultConfig { minSdk = 29 } }. // // :app (A13) — the Android application: Compose Material 3 (+ Adaptive) design // system, Hilt DI skeleton, launcher MainActivity. This module establishes the // Android UI-stack version matrix for every later Android task. include(":app") // A13 — libs.plugins.android.application + compose + ksp + hilt include(":terminal-view") // A16 — android-library + Termux terminal-emulator/-view (JitPack, Apache-2.0) include(":host-registry") // A12 — android-library + DataStore (Host list / last-session) include(":client-tls-android") // A11 — android-library + AndroidKeyStore import + Tink AEAD