Skip to content

Heavy-Use Reliability dnd.2 (v2.0.0+85 + upstream 2026-06-25)

Choose a tag to compare

@blue-archon blue-archon released this 10 Jul 13:42

An unofficial community fork of BlueBubbles. dnd.2 is a heavy-use reliability pass on top of dnd.1 (same upstream development baseline, merged through 2026-06-25, 8bcf15cf). Not affiliated with or endorsed by the BlueBubbles project.

New in dnd.2 (over dnd.1)

Fixes found while soaking dnd.1 on desktop and Android:

  • Background isolate no longer wedges around app pause/resume. Platform-channel calls were removed from background isolates (they could hang around the pause that arms the isolate drain), plus a DB write-lock and a drain watchdog. Fixes intermittent stalls and stuck sends under active use.
  • The open conversation no longer gets gutted by a same-chat re-entry. A MessagesService ownership race could blank the thread or fill it with error tiles when the same chat was reopened quickly; ownership is now epoch-guarded.
  • A crash-poisoned image self-heals. A truncated file left by a mid-download crash used to show "Failed to display image" forever; a decode failure now triggers a one-time re-download.
  • Native tapbacks work again on Android. Notification reactions (Like, etc.) failed with "No server URL configured" because native code read the legacy prefs store the Dart app had stopped writing; the ten native-read keys are now mirrored back to it.
  • A message from an unknown number appears in the list immediately with its correct preview — no missing tile, and no blank subtitle line that only filled in after opening the chat.
  • Hardened socket / method-channel payload parsing so a single null field can no longer abort a Chat/Attachment parse and drop the event.

Everything from dnd.1 (messaging-reliability + desktop-hardening tracks, the DND/ntfy feature tracks, and assorted bugfixes) is included — see the dnd.1 notes and the README for full detail.

Installing

  • Android (bluebubbles-v2.0.0.85-dnd.2-android.apk): signed with this fork's key — cannot install over the official app; uninstall it first (messages re-sync from your server). Package id is the standard com.bluebubbles.messaging. Upgrades in place over dnd.1.
  • Linux (bluebubbles-desktop-2.0.0-8-x86_64.pkg.tar.zst): Arch/pacman package — sudo pacman -U <file>. Installs to /opt/bluebubbles, menu entry included; per-user data in ~/.local/share/app.bluebubbles.BlueBubbles/. Other distros: use bluebubbles-linux-x64-v2.0.0.85-dnd.2.tar.gz (extract and run bundle/bluebubbles).
  • Windows / macOS: build from source; the desktop changes compile for all three platforms but were runtime-validated on Linux only.