mirror of
https://github.com/passepartoutvpn/passepartout-apple.git
synced 2025-02-09 01:12:05 +00:00
Before anything, remove any code related to App Group containers from tvOS target because they are not available. Include the beta receipt override, it's broken for that reason. In short: - Store all Core Data containers locally. Do not use the App Group for Core Data for consistency across platforms. - Store logs in the App Group on iOS/macOS, but locally on tvOS (see `urlForCaches`). Then, rather than one container per model, merge models into: - Local: Providers - Remote: Profiles + Preferences (now in the same CloudKit container) Reuse the remote model for backups too. This change is safe because: - Local profiles are stored via Network Extension in the keychain, not Core Data - Remote profiles are re-imported via CloudKit sync - Providers are re-downloaded on first use - Preferences are lost, but they are "cheap" data - Profile backups are lost, but they were hidden anyway |
||
---|---|---|
.. | ||
AppError.swift | ||
AppPreference.swift | ||
BundleConfiguration+AppGroup.swift | ||
BundleConfiguration+Main.swift | ||
Constants.swift | ||
EditableProfile.swift | ||
MigratableProfile.swift | ||
MigrationStatus.swift | ||
ModuleType.swift | ||
ModuleType+Known.swift | ||
ModuleType+New.swift | ||
PreferenceProtocol.swift | ||
ProfileAttributes.swift | ||
ProfileAttributes+ModulePreferences.swift | ||
ProfilePreview.swift | ||
TunnelInstallation.swift |