diff --git a/app/build.gradle.kts b/app/build.gradle.kts index fedc952..d8de9cb 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -16,7 +16,7 @@ val keystoreProperties = Properties().apply { // A delivered file should say what it is without being opened. base { - archivesName = "ganjoor-0.2.1" + archivesName = "ganjoor-0.2.2" } android { @@ -32,8 +32,8 @@ android { // Pre-1.0 while the app is still being shaped. versionCode only ever climbs: F-Droid // refuses an update that does not, and one changelog file per code lives in // fastlane/metadata/android/*/changelogs/. - versionCode = 3 - versionName = "0.2.1" + versionCode = 4 + versionName = "0.2.2" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/java/com/ganjoor/android/ui/AboutScreen.kt b/app/src/main/java/com/ganjoor/android/ui/AboutScreen.kt index ca12c06..609a1ad 100644 --- a/app/src/main/java/com/ganjoor/android/ui/AboutScreen.kt +++ b/app/src/main/java/com/ganjoor/android/ui/AboutScreen.kt @@ -137,6 +137,14 @@ private val CREDITS = listOf( "apache-2.0.txt", "https://google.github.io/accompanist/", ), + Credit( + "Material Symbols", + "The Android Open Source Project — the share, lookup and assistant glyphs, drawn from " + + "their path data rather than pulled in as a library", + "Apache License 2.0", + "apache-2.0.txt", + "https://fonts.google.com/icons", + ), Credit( "Ganjoor for Android", "This app", diff --git a/fastlane/metadata/android/en-US/changelogs/4.txt b/fastlane/metadata/android/en-US/changelogs/4.txt new file mode 100644 index 0000000..11f4c64 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/4.txt @@ -0,0 +1,2 @@ +Credits the Material Symbols glyphs the app draws its share, lookup and +assistant icons from, and states the terms around the optional AI assistant. diff --git a/fastlane/metadata/android/fa/changelogs/4.txt b/fastlane/metadata/android/fa/changelogs/4.txt new file mode 100644 index 0000000..f96274a --- /dev/null +++ b/fastlane/metadata/android/fa/changelogs/4.txt @@ -0,0 +1,2 @@ +سپاس‌گزاری از Material Symbols که نشانه‌های هم‌رسانی، جست‌وجو و دستیار از روی +آن کشیده شده‌اند، و روشن‌کردن شرایط مربوط به دستیار هوش مصنوعیِ اختیاری. diff --git a/fastlane/metadata/android/ur/changelogs/4.txt b/fastlane/metadata/android/ur/changelogs/4.txt new file mode 100644 index 0000000..be125ca --- /dev/null +++ b/fastlane/metadata/android/ur/changelogs/4.txt @@ -0,0 +1,2 @@ +Material Symbols کا اعتراف، جن سے شیئر، لغت اور معاون کے نشان لیے گئے ہیں، اور +اختیاری مصنوعی ذہانت کے معاون سے متعلق شرائط کی وضاحت۔ diff --git a/licenses/README.md b/licenses/README.md index ab5758a..53497f2 100644 --- a/licenses/README.md +++ b/licenses/README.md @@ -19,6 +19,22 @@ bundled rather than merely linked. Nothing in Ganjoor's repositories restricts AI-assisted use. +## The AI assistant + +Optional, off by default, and the app ships no vendor SDK, no API key and no default endpoint. +Nothing is sent anywhere until a reader configures a server themselves. + +| What | Terms | +| --- | --- | +| The client | Ours, MIT. It speaks the OpenAI chat-completions shape, which is a request format, not anyone's code, plus Anthropic's `/v1/messages` shape for Claude | +| A self-hosted server (Ollama, LM Studio, llama.cpp, LocalAI) | Each is separately installed free software; this app only makes HTTP requests to it | +| A hosted service (OpenAI, DeepSeek, Gemini, Claude) | Whatever the reader agreed with that service. Their terms and privacy policy govern what they do with the text sent | +| What a model writes back | Generated text, not Ganjoor's and not ours. Shown as an aid, never stored next to the poem | + +For F-Droid: nothing here is a non-free dependency, since no such code ships. A reader *may* +point it at a non-free network service, which is why the setting is off by default and the +privacy note sits on its own settings page. + ## Dictionary Five sources, each row in the database tagged with the one it came from so the app can name it @@ -67,6 +83,15 @@ Every dependency is Apache-2.0. The full text is in No Google Play Services, Firebase, analytics or tracking of any kind. The only Android permission requested is `INTERNET`. +## Icons + +The share, lookup and assistant glyphs in `app/src/main/res/drawable/` are drawn from +[Material Symbols](https://fonts.google.com/icons) path data, copied into our own vector files +rather than pulled in as a dependency. Apache 2.0, the same terms as the Material icons listed +under Libraries. The assistant glyph is Material's `auto_awesome`; the sparkle that has come to +mean "ask a model" is used by Gemini and others, but their marks are trademarks and none is used +here. + ## Artwork The launcher icon — an eight-point *shamsa* — is original work for this project, MIT like the diff --git a/releases/README.md b/releases/README.md index 5faae77..e4b9dde 100644 --- a/releases/README.md +++ b/releases/README.md @@ -11,6 +11,7 @@ from source and signs with its own key, so these are for direct installation onl | 0.1.0 | 1 | `9445f44` | The base app: browsing, bookmarks, offline, themes, the bundled dictionary with pronunciation, and Ganjoor's chapter order. | | 0.2.0 | 2 | `d92445f` | Share a poem, couplet or selection; look a word up from any app's selection menu; the optional AI assistant. | | 0.2.1 | 3 | `ec05989` | Assistant answers in the page rather than over it, a visible chevron for each couplet's actions, and answers remembered so scrolling doesn't re-ask. | +| 0.2.2 | 4 | `HEAD` | Credits Material Symbols for the glyphs, and states the terms around the optional assistant. | ## Checksums @@ -18,6 +19,7 @@ from source and signs with its own key, so these are for direct installation onl 76121689da069d6ea2e2c6587d4b371ceb51d21bfe069a583d346d3da970337a ganjoor-0.1.0.apk 43d78b773efca2b1aa2bf790c689b3086389d66c4ea0ffb72c9dba8bddb50770 ganjoor-0.2.0.apk 5163554eb01845c131c31a9da7bdd748170bb9b5f82edaece754b4cf40b02b0c ganjoor-0.2.1.apk +e473269044710813d2cf4119de663fe180f887239df7bdb1ccee0239ef84fd3e ganjoor-0.2.2.apk ``` Installing: `adb install -r releases/ganjoor-.apk`. A phone holding a *debug* build has diff --git a/releases/ganjoor-0.2.2.apk b/releases/ganjoor-0.2.2.apk new file mode 100644 index 0000000..6703030 Binary files /dev/null and b/releases/ganjoor-0.2.2.apk differ