Skip to content

Mostro v2.1.2

Latest

Choose a tag to compare

@github-actions github-actions released this 28 Oct 20:14
· 5 commits to main since this release
v2.1.2
48effd8

⚑ Mostro v2.1.2

Non-custodial, peer-to-peer Bitcoin trading over Lightning and Nostr.

πŸ“₯ Downloads

πŸ€– Android

File Architecture For
mostro-v2.1.2-arm64-v8a.apk v8 β€” ARMv8-A, 64-bit (AArch64) Modern phones. Pick this one if unsure.
mostro-v2.1.2-armeabi-v7a.apk v7 β€” ARMv7-A, 32-bit Old or entry-level phones that run a 32-bit Android.

Both need Android 7.0 (API 24) or later and are the same app: an APK holds
native machine code (the Flutter engine and Mostro's Rust core, which does all
the cryptography), and one file per CPU instruction set keeps each download to
a fraction of the size of a universal APK. Every release is signed with the
same key, so it installs over the previous version and keeps your data.

Which APK is mine?
  • arm64-v8a (v8) targets the 64-bit ARMv8-A instruction set. Practically
    every phone released since 2016–2017 runs a 64-bit Android, Google Play has
    required 64-bit builds since August 2019, and recent devices β€” the Pixel 7
    and later, and any phone built on 2023-or-newer Arm cores β€” are
    64-bit only: they cannot run the v7 APK at all. 64-bit code is also
    noticeably faster at the elliptic-curve and encryption work the app does.
  • armeabi-v7a (v7) targets 32-bit ARMv7-A with hardware floating point.
    It is for phones with a 32-bit CPU (Cortex-A7/A9/A15 class, roughly 2015
    and earlier) and for phones whose 64-bit-capable CPU ships with a
    32-bit Android β€” common in budget and Android Go models with 2 GB of RAM
    or less.
  • To be sure: try v8 first. If Android answers "App not installed" or
    "package is not compatible with your phone", install v7. With a computer,
    adb shell getprop ro.product.cpu.abilist prints the supported ABIs β€”
    if arm64-v8a is in the list, use v8.
  • x86 devices (emulators, some Chromebooks) are not covered by these builds.

mostro-v2.1.2.aab is the Android App Bundle for the Google Play Console β€” the store builds the per-device APKs from it. It is not installable on a phone.

πŸ–₯️ Desktop

File Runs on
mostro-v2.1.2-linux-x64.tar.gz x86-64, glibc 2.35 or later (Ubuntu 22.04, Debian 12, Fedora 36…)
mostro-v2.1.2-windows-x64.zip Windows 10 or later, x86-64
mostro-v2.1.2-macos-universal.zip macOS 10.15 or later β€” Apple Silicon and Intel (universal binary)
Linux β€” unpack and run
mkdir mostro && tar -xzf mostro-*-linux-x64.tar.gz -C mostro && ./mostro/mostro

Keep the folder together: the mostro binary loads lib/ and data/ from
next to itself. It needs GTK 3 and libsecret with a running keyring
(GNOME Keyring, KWallet) β€” that is where your keys are stored.

To add Mostro to your application menu, with its icon, run
./mostro/install.sh once (again after moving the folder;
--uninstall removes it). On Wayland the app shows a generic icon until then.

Windows β€” unzip and run mostro.exe

Unzip the whole folder and start mostro.exe from inside it; the DLLs and
data\ next to it are part of the app. The build carries no Authenticode
signature, so SmartScreen shows "Windows protected your PC": choose
More info β†’ Run anyway. Check the file against SHA256SUMS.txt first.

macOS β€” allow an app Apple has not notarized

The app is ad-hoc signed and not notarized, so Gatekeeper refuses it on a
double click ("cannot be opened" or "is damaged"). After checking the zip
against SHA256SUMS.txt, unzip it, move mostro.app to Applications and
clear the quarantine flag once:

xattr -dr com.apple.quarantine /Applications/mostro.app

🍎 iOS

File Runs on
mostro-v2.1.2-ios-unsigned.ipa iPhone, iOS 14 or later (arm64)
iOS β€” for sideloading only

This .ipa is unsigned: iOS will not install it as it is, and it is not a
TestFlight or App Store build. It is meant to sideload with a tool that
re-signs it with your own Apple ID (AltStore, Sideloadly, or Xcode). Apps
signed with a free Apple ID expire after 7 days, and push notifications do
not work
in a re-signed build β€” they need the project's own provisioning
profile.

Verify a download with sha256sum -c SHA256SUMS.txt --ignore-missing.

πŸ“‹ What's changed

✨ Features

  • trades: ask for confirmations on bitcoin networks (#912) by @grunch
  • currency: add BTC, LBTC and RBTC to the catalogue (#911) by @grunch
  • order: show and enter BTC-pegged amounts right (#910) by @grunch
  • stablecoins: phase 3 β€” the trade names the network and the transaction ID (#905) by @grunch
  • stablecoins: phase 2 β€” payment methods name the network (#904) by @grunch
  • stablecoins: phase 1 β€” catalogue, coin mark, default currency and the Market lock (#894) by @grunch

πŸ› Bug Fixes

  • order: convert fiat to sats as mostrod does (#909) by @grunch
  • rates: keep on-chain BTC quoted at the peg (#908) by @grunch
  • zapstore: stop listing NIP-17 (#898) by @grunch

πŸ“š Documentation

  • stablecoins: NoRates also means an expired or unreadable rates event (#903) by @grunch

πŸ‘· Build & CI

  • publish every release on Zapstore (#906) by @grunch
  • cache wasm-pack's downloads in the web build (#899) by @grunch

🧹 Chores

  • zapstore: publish the store images as JPEG (#902) by @grunch

πŸ‘₯ Contributors

Thanks to everyone who made this release possible:

@grunch


Full diff: v2.1.1...v2.1.2 Β·
History: CHANGELOG.md