import java.util.Base64 plugins { alias(libs.plugins.android.application) alias(libs.plugins.jetbrains.kotlin.android) alias(libs.plugins.compose.compiler) kotlin("plugin.serialization") version "2.0.20" } android { namespace = "de.timklge.karooheadwind" compileSdk = 35 defaultConfig { applicationId = "de.timklge.karooheadwind" minSdk = 26 targetSdk = 35 versionCode = 2 versionName = "1.0.0-beta2" } signingConfigs { create("release") { val env: MutableMap = System.getenv() keyAlias = env["KEY_ALIAS"] keyPassword = env["KEY_PASSWORD"] val base64keystore: String = env["KEYSTORE_BASE64"] ?: "" val keystoreFile: File = File.createTempFile("keystore", ".jks") keystoreFile.writeBytes(Base64.getDecoder().decode(base64keystore)) storeFile = keystoreFile storePassword = env["KEYSTORE_PASSWORD"] } } buildTypes { debug { isMinifyEnabled = false } release { signingConfig = signingConfigs.getByName("release") // isMinifyEnabled = false proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") } } compileOptions { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = "1.8" } buildFeatures { compose = true } } dependencies { implementation(libs.hammerhead.karoo.ext) implementation(libs.androidx.core.ktx) implementation(libs.bundles.androidx.lifeycle) implementation(libs.androidx.activity.compose) implementation(libs.bundles.compose.ui) implementation(libs.kotlinx.serialization.json) implementation(libs.androidx.datastore.preferences) implementation(libs.androidx.glance.appwidget) implementation(libs.androidx.glance.appwidget.preview) implementation(libs.androidx.glance.preview) }