Skip to content

Instantly share code, notes, and snippets.

@zorgiepoo
Last active June 19, 2026 21:31
Show Gist options
  • Select an option

  • Save zorgiepoo/57ddb7c3f7544fa0fb450bfcd4320968 to your computer and use it in GitHub Desktop.

Select an option

Save zorgiepoo/57ddb7c3f7544fa0fb450bfcd4320968 to your computer and use it in GitHub Desktop.
Re: Providing new updates are available in inlined UI (or window titlebar)
To my knowledge some apps do use Sparkle to provide new update reminders in
an inlined view way (e.g Nova, ChatGPT, Ghostty). Sparkle provides ways for
developers to to implement lightweight reminders[1] (like a window title badge
to redirect to the standard UI) or custom UIs[2]. But it's not automatically
built in nor the default.
For some apps I use, I prefer Sparkle to automatically download & install
updates silently on quit and reduce prompts/badges altogether, and this is one
of the opt-in options it provides to both developers and users. Some apps can
be very long running though and some developers want to notify those users of
updates more often, so Sparkle will notify them after a long time interval
(1 weekish by default). You may even be using apps that silently update, and not
notice. Other users may not like silent updates because they *really do* want
to install updates manually and read the release notes.
I have also used some apps that frequently post a window title badge reminder,
and it sounds nice, but in practice at least for short running apps I have
found this to be tiring/intrusive, with an "unread" app badge prodding me to click an
additional button to update/dismiss (potentially multiplied if it's a document
based app). Often these apps also don't show me any release notes (why not try
to update silently and defer reminding me for as long as possible?). If the
app doesn't also try to install updates automatically when feasible (worse if
the app also removes exposing the option to), some users may not take action.
Sometimes lightweight reminders are more appropriate though.
Other cases to consider are apps that don't really have primary windows or are
mostly menu bar apps. Or for when updates cannot be silently installed due to
requiring authorization and thereby needing to bring an update directly to the
user's attention (else some users may not give enough notice). Sparkle doesn't have
the affordances of a built-in privileged system updater or installing a permanent
daemon per-app, and its current standard UI "fits all".
In the last few years I have made small improvements to reduce some of the
unexpected interruptions & focus stealing, improve multitasking, and making
the relaunch instantaneous in the common case. Its design has mostly stayed
the same (since when self-updating of macOS apps itself was rare) and there
are still problems, although Sparkle is still liked comparatively. (As I am
typing this gist, I have a non-Sparkle app that is repeatably bouncing in the
Dock asking for me to switch to it and install an update from a modal dialog
without letting me use other parts of the app)
I'm not totally against an easier/universal built in UI for gentler update
alerts but it needs a proper discussion (on Sparkle's GitHub), enough buy-in,
and consider all real-world constraints. For now Sparkle provides ways for
developers to customize the UX. Maybe this is even the right level of support.
Given that this is discussing about Sparkle inserting UI directly in one of
the app's own UI controls (not necessarily a titlebar), many apps may
want/need to do this in a specifically tailored way and across multiple UI toolkits.
There are also other things on my priority list that indirectly impact this UX, like
potentially improving how Sparkle "refreshes" updates if a new update hasn't been installed
by the time another even newer update is available.
[1]: https://sparkle-project.org/documentation/gentle-reminders/
[2]: https://sparkle-project.org/documentation/custom-user-interfaces/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment