Files
linkding-ios/project.yml
2026-07-02 01:11:03 -05:00

130 lines
3.1 KiB
YAML

name: Marks
options:
bundleIdPrefix: com.magicive
deploymentTarget:
iOS: "26.0"
xcodeVersion: "16.3"
createIntermediateGroups: true
settings:
base:
SWIFT_VERSION: "6.0"
DEVELOPMENT_TEAM: AE5DZKJHGN
CODE_SIGN_STYLE: Automatic
IPHONEOS_DEPLOYMENT_TARGET: "26.0"
ENABLE_PREVIEWS: YES
schemes:
Marks:
build:
targets:
Marks: all
ShareExtension: all
MarksWidget: all
run:
config: Debug
test:
config: Debug
targets:
- MarksTests
profile:
config: Release
analyze:
config: Debug
archive:
config: Release
MarksWidget:
build:
targets:
Marks: all
MarksWidget: all
run:
config: Debug
analyze:
config: Debug
archive:
config: Release
ShareExtension:
build:
targets:
Marks: all
ShareExtension: all
run:
config: Debug
analyze:
config: Debug
archive:
config: Release
targets:
Marks:
type: application
platform: iOS
sources:
- path: Marks
- path: MarksWidget/WidgetDataStore.swift
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: com.magicive.marks
INFOPLIST_FILE: Marks/Info.plist
CODE_SIGN_ENTITLEMENTS: Marks/Marks.entitlements
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
dependencies:
- target: ShareExtension
- target: MarksWidget
- sdk: WidgetKit.framework
- sdk: AppIntents.framework
ShareExtension:
type: app-extension
platform: iOS
sources:
- path: ShareExtension
# Shared with the main app so the extension can talk to linkding + the AI
# backend (the save card checks for duplicates and suggests tags).
- path: Marks/Models/Bookmark.swift
- path: Marks/Models/IngestPayload.swift
- path: Marks/Models/ServerConfig.swift
- path: Marks/Services/LinkdingAPI.swift
- path: Marks/Services/MarksAuth.swift
- path: Marks/Services/Log.swift
# Cross-process podcast request queue: the extension enqueues, the app runs it.
- path: Marks/Services/PodcastRequests.swift
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: com.magicive.marks.ShareExtension
INFOPLIST_FILE: ShareExtension/Info.plist
CODE_SIGN_ENTITLEMENTS: ShareExtension/ShareExtension.entitlements
SKIP_INSTALL: YES
APPLICATION_EXTENSION_API_ONLY: YES
MarksTests:
type: bundle.unit-test
platform: iOS
sources:
- path: MarksTests
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: com.magicive.marks.MarksTests
GENERATE_INFOPLIST_FILE: YES
dependencies:
- target: Marks
MarksWidget:
type: app-extension
platform: iOS
sources:
- path: MarksWidget
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: com.magicive.marks.MarksWidget
INFOPLIST_FILE: MarksWidget/Info.plist
CODE_SIGN_ENTITLEMENTS: MarksWidget/MarksWidget.entitlements
SKIP_INSTALL: YES
dependencies:
- sdk: WidgetKit.framework
- sdk: SwiftUI.framework