Разрешения
Что macOS запрашивает, что даёт каждое разрешение и что вы теряете, отказавшись
macOS запрашивает некоторые разрешения при первой необходимости, а одно из них не запрашивает вообще никогда. Ничего из перечисленного здесь не требуется, чтобы видеть свои приложения — список, проверка версий и заметки о выпуске работают, даже если отказано во всём. Дальше рассказано, что даёт каждое разрешение, для каких из ваших приложений это важно и чего вы лишитесь без него. Сведения в разделах о полном доступе к диску и «Автоматизации» проверены на macOS 27 с приложением, которому не было предоставлено ни одного разрешения.
Полный доступ к диску — только для бета-версий TestFlight и CotEditor
macOS никогда не запрашивает это разрешение сама: вы добавляете DuoUpdater вручную в Системные настройки → Конфиденциальность и безопасность → Доступ к диску. Поскольку приложение подписано стабильной идентификацией, разрешение сохраняется при каждом будущем обновлении. Оно важно, только если у вас есть что-то из следующего:
- Бета-версия, установленная из TestFlight. DuoUpdater читает сборки, которые TestFlight вам предлагает, из собственных записей TestFlight. Без этого разрешения бета-версия всё равно распознаётся, но в её строке вместо последней сборки показан вопросительный знак.
- CotEditor. Он хранит свой канал обновлений внутри своего контейнера песочницы. Без разрешения CotEditor проверяется по его стабильным релизам, даже если вы запросили для него предварительные версии; уже установленная предварительная версия всё равно распознаётся по своему номеру.
Больше ничего из того, что смотрит DuoUpdater, этого разрешения не требует. Канал обновлений Fork, TablePlus, OrbStack, IINA, Tailscale, CleanShot и других знакомых приложению приложений, ваша витрина App Store и файлы в Application Support читаются без него.
Без полного доступа к диску DuoUpdater вообще не пытается выполнить эти два чтения — каждая попытка была бы отклонена, а на macOS 27 отклонённое чтение TestFlight сопровождается системным уведомлением Data Access Blocked («Доступ к данным заблокирован»). Если у вас есть бета-версия из TestFlight или CotEditor, открытие меню объясняет, для чего нужно это разрешение и где его предоставить: один раз, и ещё раз — только если появится ещё одно такое приложение. Окно приветствия и «Настройки → Диагностика» всегда показывают, предоставлено ли разрешение, и содержат кнопку, которая открывает нужный раздел в «Системных настройках». Нажатие на вопросительный знак в строке TestFlight объясняет, почему он там, и предлагает ту же кнопку, если причина — отсутствующее разрешение. У стабильной версии CotEditor рядом с названием — небольшой значок замка́, который делает то же самое.
Управление приложениями — необходимо для любой установки
Замена приложения в /Applications, которое туда поместил другой
установщик, требует этого разрешения, а API для запроса его заранее у macOS
нет, поэтому системный запрос появляется при первой установке. Откажите — и
распознавание продолжит работать; установки перестанут работать, а
DuoUpdater откроет для вас нужный раздел настроек.
Уведомления — полностью необязательны
Запрашиваются при запуске, только для того, чтобы сообщать о найденных обновлениях и показывать счётчик на значке в Dock. Обратите внимание: для счётчика нужен именно переключатель «Наклейка на значке», а не просто разрешённые уведомления как таковые — при выключенной «Наклейке на значке» счётчик молча пропадает, даже если сами уведомления показываются.
Фоновый помощник — для обновлений App Store
Обновления App Store выполняются через фоновый элемент, который macOS просит вас одобрить один раз, в разделе «Объекты входа и расширения». Без него обновления App Store не работают, и DuoUpdater подскажет, где это включить.
Универсальный доступ — по умолчанию не требуется
Используется, если вы переключите установку обновлений App Store на путь через интерфейс в «Настройках», а также чтобы закрыть окно Установщика после обновления пакета; без этого разрешения окно остаётся открытым, и его нужно закрыть самостоятельно. Обычный путь обновления App Store использует полную загрузку и не требует ничего дополнительного.
Автоматизация — не запрашивается
Закрытие и повторное открытие приложения после его обновления не требует этого разрешения.