Обновляйте приложения на Mac так,
как этого ждёт каждое из них.
Большинство программ обновления выбирают один механизм и пропускают через него все приложения. DuoUpdater читает собственный канал выпусков каждого приложения — его appcast Sparkle, его страницу в App Store, его cask в Homebrew, ленту релизов его поставщика — и пользуется именно им.
Apple Silicon, macOS 15 или новее. Бесплатно и с открытым исходным кодом. Все релизы

Каждая строка показывает, с какой версии на какую будет переход, а кнопка — что на самом деле произойдёт: Обновить запускает установку; Перезапустить означает, что на диске приложение уже обновлено и устарела только запущенная копия. Зелёная точка отмечает запущенное приложение, так что ещё до нажатия вы знаете, будет ли что-то закрыто и открыто заново.
Метка рядом с названием показывает, на чём сделано приложение — Electron, Qt, Chromium, встроенная JVM, Flutter, Tauri, Catalyst или приложение для iPhone, запущенное на Apple Silicon, — а при наведении на неё называются среда выполнения и её версия. Каждый такой вывод делается по тому, что упаковщик действительно положил в пакет, и никогда — по названию приложения или его поставщику, поэтому пакет, который об этом ничего не сообщает, остаётся без метки, а не помечается наугад.
Чем он отличается
Уступает, а не спорит
Если у приложения есть собственный механизм обновления, работу выполняет именно он. Если что-то нельзя сделать безопасно, строка прямо об этом сообщает, вместо того чтобы гадать.
Никогда не завершает принудительно
Закрытие — это обычная команда завершения: ваше приложение показывает свои запросы на сохранение и может отказаться закрываться. У отказавшегося приложения остаётся кнопка «Перезапустить».
Проверяет, кто подписал загрузку
EdDSA там, где приложение публикует ключ, затем подпись Developer ID, Team ID, bundle id и архитектура — всё это должно совпадать с заменяемым приложением, — плюс резервная копия, к которой можно откатиться.
Говорит на вашем языке
English, 简体中文, 繁體中文, 日本語, Deutsch, Español, Français, Italiano, Português (Brasil), Русский и Türkçe. Отдельной настройки языка нет — приложение следует тому языку, который уже выбран в macOS.
У него нет сервера
Ни телеметрии, ни SDK для аналитики. Каждый запрос идёт напрямую к поставщику проверяемого приложения и не содержит никаких сведений о вас.


