fix: strip deprecated taps from Brewfile; restore Control Centre + menu bar

lib/brew.sh:
  Define _SSR_DEPRECATED_TAPS list (homebrew/core, /cask, /services,
  /test-bot, /bundle, /cask-fonts, /cask-drivers, /cask-versions).
  _ssr_brew_strip_deprecated_taps removes matching 'tap "…"' lines after
  dump so they never cause "Tapping X has failed!" errors on restore.

lib/macos-prefs.sh:
  Add com.apple.controlcenter, com.apple.systemuiserver and
  com.apple.notificationcenterui to SSR_MACOS_PREF_DOMAINS_DEFAULT so
  Control Centre module toggles, menu-bar extras order and Notification
  Centre widgets are included in the pref snapshot on every sync.
  Also add ControlCenter to the post-import service restart list.

lib/macos.sh:
  Add ControlCenter to ssr::macos::restart_ui so the menu bar and
  Control Centre panel pick up restored prefs immediately after mackup.
  Kill cfprefsd first in all restart sequences to flush the pref cache.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-12 09:55:29 +02:00
parent c330f96f9c
commit 87aaf25235
3 changed files with 44 additions and 6 deletions
+5 -4
View File
@@ -36,14 +36,15 @@ ssr::macos::disable_gatekeeper() {
# Restart macOS UI services that read preference files restored by Mackup.
# Called after mackup restore so Dock/Finder/menubar pick up the new plists.
ssr::macos::restart_ui() {
ssr::log "Restarting UI services (Dock, Finder, SystemUIServer, cfprefsd)"
ssr::log "Restarting UI services (Dock, Finder, SystemUIServer, ControlCenter, cfprefsd)"
local svc
for svc in cfprefsd Dock Finder SystemUIServer; do
# cfprefsd first: flushes pref cache so subsequent restarts read fresh plists.
for svc in cfprefsd Dock Finder SystemUIServer ControlCenter; do
killall "$svc" 2>/dev/null || true
done
# Brief pause so cfprefsd flushes its cache before Dock re-reads prefs.
# Brief pause so cfprefsd flushes its cache before processes re-read prefs.
sleep 2
ssr::ok "UI services restarted — Dock and Finder will refresh."
ssr::ok "UI services restarted — Dock, Finder, Control Centre and menu bar will refresh."
}
ssr::macos::open_installed_casks() {