Skip to content

Compatibility and Limitations ​

System Requirements ​

RequirementDetails
Minimum systemmacOS 12.0 (Monterey)
ArchitectureIntel x86_64 / Apple Silicon (arm64)
PermissionFull Disk Access
External storageAt least one external storage device

Feature Compatibility ​

By macOS Version ​

FeaturemacOS 12.0 - 15.0macOS 15.1+
App migration (Stub Portal)✓✓
Data directory migration (symbolic links)✓✓
Container data mount migration✓ (administrator password required to mount)✓ (no password needed in tests on 27; versions 13 through 26 not individually verified)
Directory migration (custom folders)✓✓
Code signature management✓✓
App Store apps on external storage✗✓
In-place App Store updates on external storage✗✓
iOS app migration✓✓

App Store apps before macOS 15.1

Systems before macOS 15.1 (Sequoia) do not support native App Store installation to external storage. If you need to migrate these apps, manually enable App Store app migration in AppPorts Settings. After an app update, migrate it again to replace the external copy.

By App Type ​

App TypeMigrateRestoreAutomatic UpdatesDetails
Native macOS apps✓✓✓Best compatibility
Sparkle apps✓✓Lock requiredLocking prevents in-app updates; move back locally before updating
Electron apps✓✓Lock requiredSame as Sparkle
Chrome / Edge (custom updaters)✓✓✓Updates install locally without damaging the external copy
App Store apps on macOS 15.1+✓✓✓Native external installation; App Store updates directly
App Store apps on macOS <15.1✓✓ManualMigrate again after updates
iOS apps for Mac✓✓✓Use iOS Stub Portal
System apps✗——Protected by SIP; cannot be migrated

Migrating protected apps

macOS permissions may prevent AppPorts from deleting or replacing local copies of App Store or root-owned apps automatically. When warned about a protected app, move it to external storage in Finder first, then create its local link in AppPorts.

Finder shortcut arrows

Older AppPorts entries may use whole-app symbolic links, which show shortcut arrows in Finder. The current version uses Stub Portal for ordinary .app bundles, generally without arrows. If an arrow remains, move the app back locally and migrate it again.

Pending Move Out

"Pending Move Out" requires comparable versions and a reliable match between the local and external apps. AppPorts matches by Bundle ID first, then normalized name when necessary. Missing or incomparable versions, or different Bundle IDs for same-name apps, prevent this status from appearing.

By Data Directory Type ​

Data DirectoryMigration MethodRisk
~/Library/Application Support/Symbolic linkMedium — apps may use file locks or SQLite WAL logs
~/Library/Preferences/Symbolic linkLow–medium — cfprefsd caching may return stale preferences
~/Library/Containers/MountMedium — requires an unencrypted APFS drive, permission on first launch, and connecting the drive before opening the app
~/Library/Group Containers/MountMedium — same requirements; shared data affects other apps in the same Team
~/Library/Caches/Symbolic linkLow — caches can be rebuilt
~/Library/Logs/Symbolic linkLow — log files only
~/Library/WebKit/Symbolic linkMedium — WebKit local storage
~/Library/HTTPStorages/Symbolic linkLow — network session storage
~/Library/Application Scripts/Symbolic linkLow — extension scripts
~/Library/Saved Application State/Symbolic linkLow — window state restoration
Dot-folders such as ~/.npm, ~/.m2Symbolic linkLow — development tool caches
Custom folders under your home directorySymbolic linkDepends on content — quit apps and tools writing there first

Valuable data directories

WeChat chat history, virtual machine images, game libraries, databases, and model caches are often large, frequently written, and sensitive to paths and file locks. Make an independent backup first. If an app reports data problems after migration, restore locally before investigating further.

Container data requires mount migration

Sandboxed apps cannot read data moved out of ~/Library/Containers/ or ~/Library/Group Containers/ through symbolic links. Older versions bypassed this by re-signing, which may prevent the apps from opening on macOS 27. Starting with 1.9.0, these directories use mount migration, and sandboxed apps are refused re-signing. See Container Data, Sandboxing, and Signing Identity.

Scope of custom directories

Directory Migration accepts real folders under your home directory. You cannot select files, symbolic links, paths inside an external destination, system directories, or paths that contain or are contained by an existing managed item.

Destination conflicts

Similar directory sizes do not let AppPorts take over or resume a migration automatically. It resumes only when the external directory's AppPorts metadata fully matches the current operation. Otherwise it stops with a real-directory conflict.

Content That Cannot Be Migrated ​

Protected by SIP ​

PathReason
macOS system apps such as Safari and FinderSystem Integrity Protection
Top-level directories under ~/Library/Containers/macOS system protection

Contains Path References ​

PathReason
~/.localContains executable path references; migration may break command-line tools
~/.configContains absolute path settings; migration may break tool configurations

External Storage Requirements ​

RequirementDetails
File systemApps and ordinary data directories: APFS, HFS+, or exFAT. Container data: APFS only
Minimum spaceDepends on the size of the apps to migrate
InterfaceUSB, Thunderbolt, and NVMe supported
ConnectionKeep external storage connected after migration; otherwise the relevant apps cannot start

File system recommendations

  • APFS: recommended; the only format supporting container mount migration, with the best performance.
  • HFS+: compatible with older Macs, but cannot migrate container data.
  • exFAT: cross-platform, but cannot migrate container data. Use a separate APFS partition if sharing the drive with Windows. Built-in tools cannot shrink an exFAT partition that fills the disk; back up and repartition first. If unallocated space already exists, create APFS there when the partition requirements are met.

For why container data needs APFS and the alternatives we tested, see Why External Drives Must Use APFS.

Network Mounts ​

NAS, SMB, rclone, and SFTP mounts are not primary AppPorts validation targets. They may work, but you must verify mount stability, consistent paths, permissions, extended attributes, and symbolic-link behavior. They are not the preferred option for continuously written data directories.

最近更新