Blip 2.3.0 — the contributors' release
Six people who had never touched this repo sent 8 pull requests in 24 hours. This release is mostly theirs.
From contributors
- @adamgamble — iPhone photos land upright, and stay upright in your image viewer because the orientation is baked in at fetch rather than only honoured by Blip (#9). The bubble tail is a per-corner radius instead of a translucent rectangle stacked on itself (#10). Family Sharing child address books stop outvoting your own contacts on every name — with two kids, two cards saying "Mom" beat one saying "Monica" (#19).
- @Fileri — Messages' own announcement rows (someone joined, a rename, location sharing) stop counting as unread forever. There were 811 of them on the maintainer's Mac, the oldest from 2021 (#14). Bubble times, receipts, day dividers and the list now follow Qt format strings on the widget's
shell.jsonentry, the way Omarchy's clock does (#15). - @johanthoren — the app window honours
n,/and Esc like the popout, both fields search as you type, conversations rank above messages (#12). A bare1–9jumps to that conversation (#13). The window fills like every other Omarchy window (#7). - @ezachrisen — pinned conversations mirrored from Messages, in Messages' order, read-only (#11).
- @tolewis — one chat row per group, so a group that moved between iMessage and RCS stops failing to send with
-1728(#8). - @dreinecke (#16) and @znayer (#17) reported two bugs with the cause already located, and both fixes are here.
Also in this release
- Reads reach the Mac, and your phone. Blip's "mark all read" cleared the badge on Linux and nothing else. This was listed as impossible, on the strength of one experiment that tested something else:
open imessage://…genuinely does not flipis_read, but Messages has carried a Conversation ▸ Mark All as Read menu item since Ventura, and a menu item is scriptable. Needs Accessibility forsshd-keygen-wrapper;push_read=inbridge.confcontrols it. - Every link gets a preview card. Apple decorates some links and leaves most bare — 7 of 27 on a real Mac. Blip now fetches the page and builds the card from its Open Graph tags, with an http(s)-only, redirect-checked, private-address-refusing fetcher.
- A share sheet on any link — open, copy, a QR code your phone can scan, or send it to another device via LocalSend. It opens itself for a link you send or receive.
- Group photos, instead of a group wearing whichever member spoke last.
- A re-keyed group is one conversation again. Messages writes a new chat row when a group is re-keyed; Blip listed it twice.
- Short-code SMS threads (banks, utilities, 2FA) open instead of coming up empty.
- Multi-photo messages arrive. The auto-fetch gate measured the source bytes while the ceiling judged the converted ones, and a 5 MB HEIC becomes a 7.8 MB JPEG, so full-size photos were rejected at both ends.
- README screenshots of invented people, rendered by pointing the shipping code at a fake bridge (
scripts/demo/blip-shots).
Upgrading
omarchy plugin update nixfred.blipMac side: re-run the install one-liner. imsg, contacts and blip-check all changed, and there is a new tool, imsg-read.
282 tests. Full detail in CHANGELOG.md.