feat: download and install extra DMG/PKG/ZIP installers during restore
Adds a simple config file (~/.config/ssr/extra-installers.txt) where users can list installer URLs for apps not available on Homebrew or MAS (e.g. EasyMCP Desktop, internal tools). lib/installers.sh: - Supports .dmg (mount → cp .app or run .pkg), .pkg, .zip - Skips entries already present in /Applications - Non-fatal: logs warnings and continues on failure ssr sync: copies extra-installers.txt to <backup_dir> alongside Brewfile ssr restore: new `extra_installers` resumable step runs after shell_deps Format: optional-name <url> (# comments and blank lines ignored) Example entry: EasyMCP https://github.com/Adobe-AIFoundations/easymcp/.../EasyMCP-Desktop-3.0.3-arm64.dmg Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -17,6 +17,8 @@ source "$SSR_ROOT/lib/apps.sh"
|
||||
source "$SSR_ROOT/lib/macos-prefs.sh"
|
||||
# shellcheck source=../lib/icloud.sh
|
||||
source "$SSR_ROOT/lib/icloud.sh"
|
||||
# shellcheck source=../lib/installers.sh
|
||||
source "$SSR_ROOT/lib/installers.sh"
|
||||
|
||||
ssr::require_macos
|
||||
ssr::load_config
|
||||
@@ -56,6 +58,9 @@ ssr::mackup::backup
|
||||
ssr::brew::dump "$backup_dir"
|
||||
ssr::brew::cleanup
|
||||
|
||||
# Back up the extra-installers list alongside the Brewfile.
|
||||
ssr::installers::sync_list "$backup_dir"
|
||||
|
||||
# Surface .app bundles that aren't covered by brew cask or the App Store —
|
||||
# they would otherwise be missed on `ssr restore` and need manual reinstall.
|
||||
if [[ "${SSR_SCAN_UNMANAGED_APPS:-true}" == "true" ]]; then
|
||||
|
||||
Reference in New Issue
Block a user