Compare commits

..

1 Commits

Author SHA1 Message Date
2cd1ebd215 fix(deps): update composebom to v2026.08.00 2026-08-24 05:02:45 +00:00
5 changed files with 24 additions and 24 deletions

View File

@@ -551,11 +551,12 @@ jobs:
env: env:
VERSION: ${{ needs.detect.outputs.version }} VERSION: ${{ needs.detect.outputs.version }}
VERSION_CODE: ${{ needs.detect.outputs.version_code }} VERSION_CODE: ${{ needs.detect.outputs.version_code }}
# Where the bundle lands. `production` — the release itself is already the # Where the bundle lands. `internal` by default so a release reaches
# gate (a bumped versionName only reaches main after on-device review), so # testers rather than the public, and promotion to production stays a
# a second manual promotion in the Play Console bought nothing but delay. # deliberate human action in the Play Console — the same posture as
# Override with the PLAY_TRACK repo variable to stage a release instead. # holding UI releases for on-device review. Override with the PLAY_TRACK
PLAY_TRACK: ${{ vars.PLAY_TRACK || 'production' }} # repo variable once the flow is trusted.
PLAY_TRACK: ${{ vars.PLAY_TRACK || 'internal' }}
PLAY_RELEASE_STATUS: ${{ vars.PLAY_RELEASE_STATUS || 'completed' }} PLAY_RELEASE_STATUS: ${{ vars.PLAY_RELEASE_STATUS || 'completed' }}
# Set PLAY_DRY_RUN=true to validate the edit against the API and discard # Set PLAY_DRY_RUN=true to validate the edit against the API and discard
# it instead of committing — used to rehearse the first upload. # it instead of committing — used to rehearse the first upload.

View File

@@ -18,8 +18,6 @@ Reads, writes, and reminds — on top of the system calendar, with zero network
<p> <p>
<a href="https://f-droid.org/packages/de.jeanlucmakiola.calendula/"><img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png" alt="Get it on F-Droid" height="56"></a> <a href="https://f-droid.org/packages/de.jeanlucmakiola.calendula/"><img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png" alt="Get it on F-Droid" height="56"></a>
&nbsp; &nbsp;
<a href="https://play.google.com/store/apps/details?id=de.jeanlucmakiola.calendula"><img src="https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png" alt="Get it on Google Play" height="68"></a>
&nbsp;
<a href="https://apps.obtainium.imranr.dev/redirect?r=obtainium://add/https://codeberg.org/jlmakiola/calendula"><img src="https://github.com/ImranR98/Obtainium/blob/main/assets/graphics/badge_obtainium.png?raw=true" alt="Get it on Obtainium" height="56"></a> <a href="https://apps.obtainium.imranr.dev/redirect?r=obtainium://add/https://codeberg.org/jlmakiola/calendula"><img src="https://github.com/ImranR98/Obtainium/blob/main/assets/graphics/badge_obtainium.png?raw=true" alt="Get it on Obtainium" height="56"></a>
&nbsp; &nbsp;
<a href="https://ko-fi.com/jeanlucmakiola"><img src="https://storage.ko-fi.com/cdn/brandasset/v2/support_me_on_kofi_badge_beige.png" alt="Support me on Ko-fi" height="56"></a> <a href="https://ko-fi.com/jeanlucmakiola"><img src="https://storage.ko-fi.com/cdn/brandasset/v2/support_me_on_kofi_badge_beige.png" alt="Support me on Ko-fi" height="56"></a>
@@ -88,7 +86,7 @@ Pick whichever channel you already use — they all install the same app:
| [Official F-Droid](#f-droid-recommended) | On F-Droid's build schedule | Recommended; no extra setup | | [Official F-Droid](#f-droid-recommended) | On F-Droid's build schedule | Recommended; no extra setup |
| [Self-hosted F-Droid repo](#self-hosted-f-droid-repo-fastest-updates) | Minutes after a release | Fastest; needs the repo added once | | [Self-hosted F-Droid repo](#self-hosted-f-droid-repo-fastest-updates) | Minutes after a release | Fastest; needs the repo added once |
| [Codeberg release / Obtainium](#codeberg-release--obtainium) | Per release | Plain APK download, or automated by Obtainium | | [Codeberg release / Obtainium](#codeberg-release--obtainium) | Per release | Plain APK download, or automated by Obtainium |
| [Google Play](#google-play) | Per release | Signed with Google's key — see below | | [Google Play](#google-play-coming-soon) | — | Coming soon |
| [Build from source](#build-from-source) | Whenever you build | Full control | | [Build from source](#build-from-source) | Whenever you build | Full control |
### F-Droid (recommended) ### F-Droid (recommended)
@@ -133,14 +131,18 @@ or do it by hand: *Add App* → paste `https://codeberg.org/jlmakiola/calendula`
→ *Add*. Either way, Obtainium tracks the releases and prompts you when a new → *Add*. Either way, Obtainium tracks the releases and prompts you when a new
one appears. one appears.
### Google Play ### Google Play (coming soon)
Calendula is live on Google Play: Calendula is on its way to Google Play as an additional channel. It isn't live
**[play.google.com/store/apps/details?id=de.jeanlucmakiola.calendula](https://play.google.com/store/apps/details?id=de.jeanlucmakiola.calendula)**. yet — this section gets a link once it is. Play builds will be signed with
Google's key rather than mine, so switching between Play and any other channel
will require an uninstall.
Play builds are signed with Google's key rather than mine, so switching between > **Testers wanted.** Play requires a round of closed testing before the app can
Play and any other channel requires an uninstall (and with it, a fresh start for > go public, and I'm still looking for testers. If you'd like to help, email
app settings — your events live in the system calendar and are unaffected). > **[business@jeanlucmakiola.de](mailto:business@jeanlucmakiola.de)** with the
> Google account address you want to use — that address is what I need to add you
> to the closed test.
### Build from source ### Build from source
@@ -149,7 +151,7 @@ The build is a plain Gradle build with no proprietary dependencies — see
<sub>Official F-Droid, the self-hosted repo, and the Codeberg releases all share <sub>Official F-Droid, the self-hosted repo, and the Codeberg releases all share
the same signing key, so you can switch freely between them without the same signing key, so you can switch freely between them without
reinstalling. Google Play is the exception — see above.</sub> reinstalling.</sub>
## 📚 Documentation ## 📚 Documentation

View File

@@ -172,12 +172,9 @@ F-Droid but not Play:
Until those are fixed, Play's graphics are managed by hand in the console. Then Until those are fixed, Play's graphics are managed by hand in the console. Then
pass `images:true` to the `listing` lane. pass `images:true` to the `listing` lane.
**Track.** Uploads go straight to `production` at a full rollout **Track.** Uploads go to `internal` by default; promotion to production stays a
(`PLAY_RELEASE_STATUS=completed`). The merge to `main` is already the human manual action in the Play Console, matching the rule that UI releases wait for
gate — a release only gets there after on-device review — so a second manual on-device review. Override with the `PLAY_TRACK` repo variable.
promotion in the Play Console added delay without adding a decision. Set the
`PLAY_TRACK` repo variable (e.g. `internal`) to stage a release instead, or
`PLAY_RELEASE_STATUS=draft` to hold it unpublished.
### Manual re-sign / recovery ### Manual re-sign / recovery
@@ -236,7 +233,7 @@ Two consequences worth remembering:
| Variable | Default | Purpose | | Variable | Default | Purpose |
| --- | --- | --- | | --- | --- | --- |
| `PLAY_TRACK` | `production` | Play track the bundle is uploaded to. Set to `internal`/`alpha`/`beta` to stage instead. | | `PLAY_TRACK` | `internal` | Play track the bundle is uploaded to. |
| `PLAY_RELEASE_STATUS` | `completed` | `completed`, `draft`, `inProgress` or `halted`. | | `PLAY_RELEASE_STATUS` | `completed` | `completed`, `draft`, `inProgress` or `halted`. |
| `PLAY_DRY_RUN` | `false` | `true` validates the Play edit against the API and discards it — use to rehearse. | | `PLAY_DRY_RUN` | `false` | `true` validates the Play edit against the API and discards it — use to rehearse. |

View File

@@ -29,7 +29,7 @@ platform :android do
supply( supply(
aab: aab, aab: aab,
track: options[:track] || "production", track: options[:track] || "internal",
release_status: options[:release_status] || "completed", release_status: options[:release_status] || "completed",
# The APK belongs to F-Droid and the Codeberg download; Play only ever # The APK belongs to F-Droid and the Codeberg download; Play only ever

View File

@@ -7,7 +7,7 @@ coreKtx = "1.19.0"
appcompat = "1.7.1" appcompat = "1.7.1"
lifecycleRuntime = "2.10.0" lifecycleRuntime = "2.10.0"
activityCompose = "1.13.0" activityCompose = "1.13.0"
composeBom = "2026.06.01" composeBom = "2026.08.00"
# Material 3 Expressive APIs currently live only in the 1.5 alpha line. # Material 3 Expressive APIs currently live only in the 1.5 alpha line.
# Pin explicitly to override the BOM (which ships stable 1.4.0). # Pin explicitly to override the BOM (which ships stable 1.4.0).
# Re-evaluate when 1.5.0 stable lands. # Re-evaluate when 1.5.0 stable lands.