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() } // 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") // ── 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. These stay // commented out only because their build.gradle.kts are still empty SCAFFOLD STUBS // — 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 = 35; // defaultConfig { minSdk = 29 } }. // include(":app") // AW4 — uses libs.plugins.android.application // include(":terminal-view") // AW3 // include(":host-registry") // AW1/AW2 storage half // include(":client-tls-android") // AW1 framework half