Skip to content

Releases: trevornk/ramblr

Ramblr 1.0.32

Choose a tag to compare

@trevornk trevornk released this 21 Sep 19:33

What changed

  • Release builds now use R8 code optimization and resource shrinking, with release-time compatibility checks for native dictation, cleanup, and the GitHub updater.
  • Fixed Ramblr Voice keyboard discovery for keyboards that look for a non-auxiliary voice input method.
  • Storefront builds remain free of the self-updater.

versionCode: 35

Ramblr dev/1.0.32.202609221806.0091ff4 (debug build)

Choose a tag to compare

Automated debug sideload build from 0091ff4 on main.

Unsigned debug build — enable "install unknown apps" for whatever app you use to open the downloaded APK. Not from the Play Store.

Commit: 0091ff4
Compare with previous release

Ramblr 1.0.31

Choose a tag to compare

@trevornk trevornk released this 18 Sep 22:14

Reproducible-build fix. No user-facing behavior change from 1.0.30.

versionCode: 34

What changed

The four libggml-cpu-android_armv8.*.so libraries carried a .note.gnu.build-id whose hash covers absolute build paths, so they differed between build hosts and 1.0.30 failed F-Droid's binary comparison — by exactly 20 bytes per file, at the offsets of that note and nowhere else.

These are CMake MODULE targets (a consequence of GGML_BACKEND_DL, needed for runtime CPU dispatch), so they take CMAKE_MODULE_LINKER_FLAGS rather than CMAKE_SHARED_LINKER_FLAGS — the same inheritance trap that previously affected 16KB page alignment. -Wl,--build-id=none is now applied to all three linker-flag variables. llvm-strip --strip-all could not fix this: the section is SHF_ALLOC, so strip keeps it deliberately.

A release-build gate now fails the build if any linked native library still ships a build-id, so this cannot silently regress. (#268)

CI's debug prereleases are renamed from v<version>-dev.<ts>.<sha> to dev/<version>.<ts>.<sha>. The old names carried the same versionCode as the real release and sorted later, so F-Droid's tag-based update check resolved 1.0.30 to a dev commit instead of the release commit. (#269)

Verification

llvm-readelf -S confirms all ten linked libraries in this APK have no .note.gnu.build-id; the four ggml-cpu files shrink by exactly the 36-byte note. libomp.so and libonnxruntime.so still carry one — they are unmodified third-party prebuilts, identical on every host, and were already present when F-Droid reproduced versionCodes 26/27/28.

Ramblr-1.0.31-storefront-release.apk is the F-Droid reference binary. Ramblr-1.0.31-github-release.apk is the sideload channel with the self-updater.

Ramblr dev/1.0.31.202609182151.481f46a (debug build)

Choose a tag to compare

Automated debug sideload build from 481f46a on main.

Unsigned debug build — enable "install unknown apps" for whatever app you use to open the downloaded APK. Not from the Play Store.

Commit: 481f46a
Compare with previous release

Ramblr 1.0.30

Choose a tag to compare

@trevornk trevornk released this 14 Sep 18:24
18618b0

Status command for automation tools, a notification when Ramblr gets switched
off, and clearer update failures.

  • If something switches Ramblr's accessibility service off while you are in
    another app, Ramblr now tells you instead of staying silently dead until you
    next open it. The notification takes you straight to the switch. If you have
    granted the optional advanced permission, Ramblr turns itself back on and
    says nothing.
  • The quick settings tile now says "Turned off" when the service was switched
    off unexpectedly, rather than looking the same as when you turned it off
    yourself.
  • Settings > Advanced > Behavior gains a status command you can run from
    MacroDroid, Tasker or a shell. It reports whether Ramblr's service is
    actually running. If your automation turns Ramblr on and it does not stick,
    run this about two seconds afterward to see what really happened, and turn it
    on again if the status says it is still off.
  • The same screen documents the raw command for turning the service back on. It
    works only from something that already has authority to change secure
    settings, such as an ADB shell or a rooted device. Your tool's own "enable
    accessibility service" action remains the normal route.
  • Update failures are no longer invisible. If an update downloads but will not
    install, Ramblr says so and explains why, instead of leaving an "Update
    available" notification that does nothing when tapped.

The reported problem where an automation tool re-enables Ramblr and the setting
does not stick is not fixed here, and may not be fixable from inside Ramblr.
The status command exists so you can see it happening and retry.

versionCode: 33

Ramblr v1.0.30-dev.202609142058.8dc3be0 (debug build)

Choose a tag to compare

@github-actions github-actions released this 14 Sep 20:58
8dc3be0

Automated debug sideload build from 8dc3be0 on main.

Unsigned debug build — enable "install unknown apps" for whatever app you use to open the downloaded APK. Not from the Play Store.

Commit: 8dc3be0
Compare with previous release

Ramblr v1.0.30-dev.202609142003.264cfb5 (debug build)

Choose a tag to compare

@github-actions github-actions released this 14 Sep 20:03
264cfb5

Automated debug sideload build from 264cfb5 on main.

Unsigned debug build — enable "install unknown apps" for whatever app you use to open the downloaded APK. Not from the Play Store.

Commit: 264cfb5
Compare with previous release

Ramblr v1.0.30-dev.202609141819.18618b0 (debug build)

Choose a tag to compare

@github-actions github-actions released this 14 Sep 18:19
18618b0

Automated debug sideload build from 18618b0 on main.

Unsigned debug build — enable "install unknown apps" for whatever app you use to open the downloaded APK. Not from the Play Store.

Commit: 18618b0
Compare with previous release

Accessibility restore diagnostic for #254 (v1.0.29 test build)

Choose a tag to compare

@trevornk trevornk released this 08 Sep 22:19

Diagnostic-only test build for investigating #254's intermittent accessibility-service restore failure. This is not a confirmed fix or a recommended general update. Based on released v1.0.29, with only a read-only automation status diagnostic and its tests added. No speculative lifecycle changes or unrelated features are included.

Installation

This APK uses the same signing certificate, package, version name (1.0.29), and version code (32) as the official v1.0.29 GitHub APK. It is a release build, not a debuggable build. It should install over a compatible GitHub installation without clearing data; Android may describe it as reinstalling/updating the same version. Do not uninstall Ramblr or clear its data. If Android refuses the update, stop and report the message. F-Droid or other differently signed installations may be incompatible. Do not downgrade a newer installation to use this build.

Diagnostic and privacy

The existing Advanced → Behavior → Let automation apps turn Ramblr off toggle must be enabled. While enabled, any app can request five booleans: Ramblr's current service-instance status, active/inactive component membership in accessibility settings, whether the automation hook is enabled, and whether Ramblr has WRITE_SECURE_SETTINGS. The diagnostic reads status only; it does not enable/disable the service or write accessibility settings. It returns the booleans to the caller and logs them locally. It does not return dictation, credentials, installed-app lists, or other apps' data. Turning the toggle off suppresses diagnostic status replies and also disables the existing automation off hook.

result=3 with data="..." means a status snapshot was returned—not that the service was repaired. result=0 without data is not a successful snapshot. These are point-in-time observations, not a lifecycle trace or proof of the failure's cause.

SHA-256 (Ramblr-1.0.29-diagnostic-254-github-release.apk):

c14c39b2ef739f56629443e53fd5dacaac275a2a3b1b4b80261486d46a797928

This prerelease is not the latest stable release. Issue #254 remains open.

Ramblr 1.0.29

Choose a tag to compare

@trevornk trevornk released this 06 Sep 18:32

Corrected automation off-hook command, and overlay window hardening.

  • The command shown in Settings > Advanced > Behavior for MacroDroid/Tasker to turn
    Ramblr off now targets your phone's exact user correctly. The previous version could
    fail with a permission error for some callers even though the feature was enabled and
    the phone had only one user. It also no longer says you need ADB or root -- an
    ordinary automation command works.
  • If your automation tool shows a result code for that command, it now reflects what
    actually happened: 0 means the feature is off, 1 means Ramblr's service was live and
    was told to turn off, 2 means the feature is on but nothing was running to turn off.
  • Fixed a crash path where showing the floating overlay icon could partially fail and
    leak a window instead of cleaning up after itself.

Known issue: one user reports crashes when another app hands off to a banking app.
That is not fixed here and is still being investigated.

versionCode: 32