Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1131,7 +1131,10 @@ jobs:
distribution: temurin
- uses: gradle/actions/setup-gradle@v4
with:
gradle-version: "8.14.3"
# Kotlin 2.4's Gradle plugin deprecates Gradle < 8.14.4; the app uses the Kotlin
# Android plugin, so bump this job to 8.14.4 (also carries two security fixes). The
# AAR/lib jobs stay on the more-compatible 8.14.3 — they use no Kotlin Gradle plugin.
gradle-version: "8.14.4"
- name: Enable KVM group permissions (GitHub-hosted runner)
run: |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
Expand Down
11 changes: 9 additions & 2 deletions android-llmservice/app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
//
// SPDX-License-Identifier: MIT

import org.jetbrains.kotlin.gradle.dsl.JvmTarget

plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
Expand Down Expand Up @@ -82,8 +84,13 @@ android {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = "17"
}

kotlin {
// Kotlin 2.x: the old `android { kotlinOptions { jvmTarget = "17" } }` string DSL is now a
// hard error — configure the JVM target through the compilerOptions DSL instead.
compilerOptions {
jvmTarget.set(JvmTarget.JVM_17)
}
}

Expand Down
8 changes: 7 additions & 1 deletion android-llmservice/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,14 @@ SPDX-License-Identifier: MIT
no permission prompt and is fully Google-Play compliant (no MANAGE_EXTERNAL_STORAGE).
No INTERNET permission either — LLM Service is fully offline; nothing leaves the device.
-->
<!--
allowBackup=false: this is a privacy app whose whole promise is that data stays on the
device. The saved session (chat content) and the copied model live in private filesDir;
disabling backup keeps them out of adb backup and cloud auto-backup so nothing leaves the
device that way. Also resolves the CodeQL "Application backup allowed" alert.
-->
<application
android:allowBackup="true"
android:allowBackup="false"
android:label="@string/app_name"
android:localeConfig="@xml/locales_config"
android:supportsRtl="true"
Expand Down
Loading