Columba 2.0.0-beta
Installation
Pick a backend, then download the APK matching your device's CPU architecture.
- Python backend, RECOMMENDED — ships Mark Qvist's official python reference implementations of Reticulum and LXMF via Chaquopy.
- Kotlin backend — ships Torlando's EXPERIMENTAL, AI-GENERATED native reticulum-kt / lxmf-kt / lxst-kt stack.
The python version is highly recommended. The kotlin version is a work in progress, and is not yet verified to be completely safe.
The kotlin version may yield better battery life depending on your device, and comes in a smaller apk due to not requiring a python runtime.
Python backend (official-rns-py)
| APK | Architecture | Devices |
|---|---|---|
columba-2.0.0-beta-official-rns-py-armeabi-v7a.apk
| armeabi-v7a | Older 32-bit ARM phones & tablets |
columba-2.0.0-beta-official-rns-py-arm64-v8a.apk
| arm64-v8a | Most modern Android phones & tablets |
columba-2.0.0-beta-official-rns-py-x86_64.apk
| x86_64 | Chromebooks, emulators, some tablets |
columba-2.0.0-beta-official-rns-py-universal.apk
| All | Universal fallback (larger download) |
Kotlin backend (EXPERIMENTAL-reticulum-kt)
| APK | Architecture | Devices |
|---|---|---|
columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-armeabi-v7a.apk
| armeabi-v7a | Older 32-bit ARM phones & tablets |
columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-arm64-v8a.apk
| arm64-v8a | Most modern Android phones & tablets |
columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-x86_64.apk
| x86_64 | Chromebooks, emulators, some tablets |
columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-universal.apk
| All | Universal fallback (larger download) |
Telemetry variants:
Each APK above also has a -no-sentry variant without crash reporting for maximum privacy — append -no-sentry to any download link above (e.g. the most common builds: Python arm64-v8a no-sentry · Kotlin arm64-v8a no-sentry). Sentry collects stack traces when Columba encounters errors
and provides helpful information to the developer to improve Columba, but is hosted at sentry.io, and is thus not the maximum privacy option.
Not sure which to pick? Most Android phones use arm64-v8a. If unsure, use the universal APK.
Verification
See SECURITY.md for verification instructions.
Signing Certificate Fingerprints:
SHA-256: 02:2B:12:20:48:63:A3:1F:BF:07:5B:C9:F9:34:1E:33:52:78:80:2E:80:C9:27:A4:75:46:E4:7E:2F:4A:0C:5F
SHA-1: 0A:6B:AE:58:4E:D7:B5:D0:35:8B:3C:7B:65:11:D6:3A:81:21:0D:CE
SHA256 Checksums:
546eeb820d7fe547498f9d73e53324391e58533f80469e38f301156bccf7bbf5 columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-arm64-v8a-no-sentry.apk
d5ca76764475844aaeddcba43239fa592c168ef43c7678dc25554cd37d9d2f7c columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-arm64-v8a.apk
87bbe1aced1ca88e1c4c017449d8400d43c8b80aa819d5b50a28a91097d55d6f columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-armeabi-v7a-no-sentry.apk
b6240ee6b45b6c0c9c7fc9e583d65e0579a32dca7e51afbadc62e5b6bab4e564 columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-armeabi-v7a.apk
8109618590dc4ce600785c082f3f349213759285670585b84481e451950b87bb columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-universal-no-sentry.apk
185428c91bf7b1209047495b9a6360c686574cb9179eecc003ea32ae01666550 columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-universal.apk
63e022d803c04c1e00bcd8057ae9a1660367c400ac0ab79fb2747a24455345b5 columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-x86_64-no-sentry.apk
0999c317d9c058537460d33e5566c2be0a2fa157eee7bb4f54b5b0fc514281a2 columba-2.0.0-beta-EXPERIMENTAL-reticulum-kt-x86_64.apk
213e6da4ae40b4c1fe4b76f63f5b844aaa6569d1b55a7cbf56e61863425cbe4d columba-2.0.0-beta-official-rns-py-arm64-v8a-no-sentry.apk
2aa0bf5c4e37c6fd07550db021733a0e51dd722c7b63967bcc2f76bd6ff7ad2b columba-2.0.0-beta-official-rns-py-arm64-v8a.apk
139b3ee78e9641d04fb3d978f9dc9c26306cf4a3cb899c80fa27b15e527638e6 columba-2.0.0-beta-official-rns-py-armeabi-v7a-no-sentry.apk
bc866bdead89131d8c40466de05f41388c0e5fa392d738f56365515e0e86b805 columba-2.0.0-beta-official-rns-py-armeabi-v7a.apk
983d873adfd1f339c4dc107e0fd5cdfc228ded5c64540b371bcf6a9d6cf98ca8 columba-2.0.0-beta-official-rns-py-universal-no-sentry.apk
70488891f68b7e082eabfee112cef8f21d4ce73be55ceb399bd105b2f44fa77a columba-2.0.0-beta-official-rns-py-universal.apk
6fc8ba0d82aaaa1b54f861a2beda880c4fc3636cfa3b54dd955c955488918708 columba-2.0.0-beta-official-rns-py-x86_64-no-sentry.apk
5c39f095a3c3ac460c9a628e7bf5158cb0343670db8fd7d8bea0a30712da9777 columba-2.0.0-beta-official-rns-py-x86_64.apk
Announcing Columba 2.0.0:
- BREAKING CHANGE: Changed Columba's wire format for replies and reactions to match MeshChatX. Replies and reactions exchanged with older versions of Columba will not be visible across the pre/post 2.0 boundary.
- Huge refactor of the backend architecture in Columba to allow for builds including either Mark Qvist's official reference implementation of Reticulum in Python, or Torlando's experimental, AI-generated reticulum-kt. Torlando's testing focus was exclusively on Python for this release.
- This refactor allows the UI to gracefully degrade when a feature (like interface hot swapping) is only available in one backend or the other. This also allows for the more recent UI improvements to come to the Python backend.
- The Kotlin version will install as a separate app on your phone, so you can run both side by side.
- Added the ability for Columba to share its reticulum instance (only tested on Python backend)
- Added LXST voice call privacy gates, to block those pesky spam callers. You can only allow from contacts, or disable entirely.
- Crash reporting is now opt in, even on the standard apks, and sentry is now fully removed from the -no-sentry variants at build time
What's Changed
- fix(nomadnet): submit field defaults and pad form for IME (#917) by @torlando-tech in #918
- feat(rns): dual-backend architecture (kotlin + python flavors) by @torlando-tech in #932
- feat: LXST call privacy gates + telemetry responder (dual-build) by @torlando-tech in #933
- feat: punch-list items 3-7 + 10 + identity flow + RNode (dual-build) by @torlando-tech in #934
- fix(python-backend): map shows no discovered-interface markers by @torlando-tech in #935
- chore(license): AGPLv3 -> MPL 2.0 for Reticulum compatibility by @torlando-tech in #936
- Dual-backend release: Python-first APKs, co-installable Kotlin flavor, R8 bridge gate by @torlando-tech in #938
- feat(rns,ui): user-toggleable Share Instance hosting (Python backend) by @torlando-tech in #939
- fix(release): keep minified pythonBackend Python startup working (duplicate org.json) by @torlando-tech in #940
- feat(ble): surface live BLE peer connections to the Network Status card by @torlando-tech in #941
- feat(settings): add BLE Connections button to the Network card by @torlando-tech in #942
- ci(release): bump release build timeout 20m → 40m by @torlando-tech in #943
- fix(rns): TCP/interface type shows as obfuscated "wy2" in release builds by @torlando-tech in #946
- feat(telemetry): consent-based crash reporting + build-time Sentry removal by @torlando-tech in #947
- ci(release): link APKs directly from the release body tables by @torlando-tech in #948
- fix(rns): inbound LXST voice R8 regression + enforce @ReflectivelyKept keep contract by @torlando-tech in #949
- fix(ci): raise Gradle heap to 6GB to stop release APK packaging OOM by @torlando-tech in #950
Full Changelog: v1.0.3-beta...v2.0.0-beta