List the open-source projects Calendula ships (#284)
Adds a Settings entry listing the open-source projects Calendula ships, with copyright holder, SPDX licence id and a tap-through to each project's source. Apache-2.0 §4(a)/§4(d) are discharged by what the recipient of the APK is shown, not by a notice in the repository. New `ui/licences/` package mirroring Agendula's: - `OpenSourceLicences.kt` — `Attribution(name, copyright, licence, sourceUrl)` list plus a `Licence` enum (SPDX id + licence URL). Hand-maintained; the KDoc says why, and that adding a dependency means adding it here. - `LicencesScreen.kt` — `CollapsingScaffold` + one `GroupedRow` per entry, summary `<copyright> · <SPDX id>`, tapping a row opens that project's source. Reached from a new row in the **About** group in `SettingsScreen.kt`, before the privacy row so the group still ends on privacy. It uses `Icons.Default.Code`, since Gavel already belongs to the app's own License row. Entries cover everything with `implementation` scope: AndroidX/Compose/Glance/WorkManager/DataStore/DocumentFile, Kotlin and kotlinx, Dagger and Hilt, Material Design icons, and floret-kit (MIT). Test-only dependencies are not shipped and stay off the list. Strings live in `values/strings.xml`. Deviation from the issue: the footer text differs from Agendula's. Agendula's says every change to vendored code is listed in the linked repository — Calendula modifies nothing it ships, so the footer states that instead. Closes #281 Co-authored-by: Jean-Luc Makiola <business@jeanlucmakiola.de> Reviewed-on: https://codeberg.org/jlmakiola/calendula/pulls/284
This commit is contained in:
@@ -620,6 +620,8 @@
|
||||
<string name="settings_license_value">MIT</string>
|
||||
<string name="settings_about_author">by Jean-Luc Makiola</string>
|
||||
<string name="settings_about_source">Source</string>
|
||||
<string name="settings_licences">Open source licenses</string>
|
||||
<string name="settings_licences_subtitle">The projects Calendula is built on</string>
|
||||
<string name="settings_about_privacy">Privacy policy</string>
|
||||
<string name="settings_about_support">Support development</string>
|
||||
<string name="settings_about_version">Version %1$s</string>
|
||||
@@ -627,6 +629,11 @@
|
||||
<string name="settings_report_problem">Report a problem</string>
|
||||
<string name="settings_report_problem_hint">Send a crash report or open the issue tracker</string>
|
||||
|
||||
<!-- Open source licences -->
|
||||
<string name="licences_title">Open source licenses</string>
|
||||
<string name="licences_intro">Calendula includes the work below. Tap any entry to get its source code.</string>
|
||||
<string name="licences_footer">Every project here is included unmodified, under the license shown.</string>
|
||||
|
||||
<!-- Calendar manager -->
|
||||
<string name="calendars_title">Calendars</string>
|
||||
<string name="calendars_local_header">Your calendars</string>
|
||||
|
||||
Reference in New Issue
Block a user