Files
hyungi_document_server/clients/ds-app/project.yml

77 lines
2.5 KiB
YAML

# A-6 — real macOS .app target for the DS app shell.
#
# Why this exists: opening Package.swift directly in Xcode produced an *executable* SwiftPM target
# with no .app bundle / Info.plist, so macOS treated it as an accessory and Cmd+R never opened a
# window (see ds-native-app-program memory). This generates a proper application target whose @main
# lives in App/DSApp.swift and which links the AppFeature library product from the local SwiftPM
# package. project.yml is the source of truth; DSApp.xcodeproj + Support/*.plist|.entitlements are
# generated artifacts (gitignored). Regenerate with: xcodegen generate
name: DSApp
options:
bundleIdPrefix: net.hyungi
deploymentTarget:
macOS: "26.0"
createIntermediateGroups: true
minimumXcodeGenVersion: "2.40.0"
settings:
base:
SWIFT_VERSION: "6.0" # Swift 6 language mode (matches package .swiftLanguageMode(.v6))
SWIFT_STRICT_CONCURRENCY: complete
MACOSX_DEPLOYMENT_TARGET: "26.0"
CODE_SIGN_STYLE: Automatic
# Local dev: no signing identity needed to build/run on this Mac.
CODE_SIGNING_ALLOWED: "NO"
CODE_SIGNING_REQUIRED: "NO"
packages:
# Local SwiftPM package = this repo (Package.swift): AIFabric + DSKit + AppFeature libraries.
DSPackage:
path: .
targets:
DSApp:
type: application
platform: macOS
deploymentTarget: "26.0"
sources:
- path: App # App/DSApp.swift only — @main window + DI shell
dependencies:
- package: DSPackage
product: AppFeature
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: net.hyungi.dsapp
PRODUCT_NAME: DS
GENERATE_INFOPLIST_FILE: "NO"
MARKETING_VERSION: "0.1"
CURRENT_PROJECT_VERSION: "1"
ENABLE_HARDENED_RUNTIME: "YES"
info:
path: Support/Info.plist
properties:
CFBundleName: DS
CFBundleDisplayName: DS
CFBundleShortVersionString: "0.1"
CFBundleVersion: "1"
CFBundlePackageType: APPL
LSMinimumSystemVersion: "26.0"
LSApplicationCategoryType: public.app-category.productivity
NSHumanReadableCopyright: ""
entitlements:
path: Support/DSApp.entitlements
properties:
com.apple.security.app-sandbox: true
com.apple.security.network.client: true # LiveDSClient HTTP → DS / mac mini :8890
com.apple.security.files.user-selected.read-write: true # FU-C upload / FU-D download save
schemes:
DSApp:
build:
targets:
DSApp: all
run:
config: Debug
test:
config: Debug