-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathproject.yml
More file actions
118 lines (111 loc) · 3.53 KB
/
Copy pathproject.yml
File metadata and controls
118 lines (111 loc) · 3.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
name: Verse
options:
bundleIdPrefix: com.sol # change to yours
deploymentTarget:
iOS: "26.0"
createIntermediateGroups: true
settings:
base:
SWIFT_VERSION: "6.0"
DEVELOPMENT_TEAM: J7C26745B5
CODE_SIGN_STYLE: Automatic
packages:
YouTubeKit:
url: https://github.com/alexeichhorn/YouTubeKit
from: 0.2.0
# Community SPM repackage of VLCKit 3.6.0 — the official CocoaPods binary lives on
# download.videolan.org, which this network's upstream filter blocks outright. Binary is
# checksum-pinned in the package manifest and fetched from GitHub releases.
VLCKitSPM:
url: https://github.com/tylerjonesio/vlckit-spm
exactVersion: 3.6.0
schemes:
Verse:
build:
targets:
Verse: all
test:
targets: [VerseTests, VerseUITests]
targets:
Verse:
type: application
platform: iOS
settings:
base:
# Alternate app icons (Settings > Appearance > App Icon).
ASSETCATALOG_COMPILER_ALTERNATE_APPICON_NAMES: AppIcon-Yandhi AppIcon-Yeezus
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS: YES
sources:
- Sources/App
- Sources/Core
- Assets
dependencies:
- package: YouTubeKit
- package: VLCKitSPM
product: VLCKitSPM
- target: VerseWidget
embed: true
entitlements:
path: Verse.entitlements
properties:
com.apple.security.application-groups: [group.com.sol.verse]
info:
path: Info.plist
properties:
CFBundleDisplayName: Verse
UILaunchScreen: {}
# Per-line lyrics Live Activity (SPEC §6).
NSSupportsLiveActivities: true
# Background audio. Without this there is no lock screen and no CarPlay.
UIBackgroundModes: [audio]
# Let Files.app and a Mac drop media straight into the app.
UIFileSharingEnabled: true
LSSupportsOpeningDocumentsInPlace: true
CFBundleDocumentTypes:
- CFBundleTypeName: Media
LSHandlerRank: Alternate
LSItemContentTypes: [public.audio, public.movie, public.data]
NSAppTransportSecurity:
# YouTube/LRCLIB/SponsorBlock are all https; VLC may hit http media in the wild.
NSAllowsArbitraryLoads: true
VerseWidget:
type: app-extension
platform: iOS
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: com.sol.Verse.Widget # appex ids must nest under the app's
sources:
- Sources/Widget
- Sources/Core/Snapshot.swift # shared across the process boundary
- Sources/Core/Intents.swift # intents visible to both targets, run in app process
- Sources/Core/LyricActivity.swift # activity attributes, rendered here, driven by app
entitlements:
path: VerseWidget.entitlements
properties:
com.apple.security.application-groups: [group.com.sol.verse]
info:
path: WidgetInfo.plist
properties:
CFBundleDisplayName: Verse
NSExtension:
NSExtensionPointIdentifier: com.apple.widgetkit-extension
VerseTests:
type: bundle.unit-test
platform: iOS
settings:
base:
GENERATE_INFOPLIST_FILE: YES
sources: [Tests]
dependencies:
- target: Verse
# Only for gestures no unit test can observe — the interactive pop (issue #5). Everything
# testable without a touch stays in VerseTests, which is far faster.
VerseUITests:
type: bundle.ui-testing
platform: iOS
settings:
base:
GENERATE_INFOPLIST_FILE: YES
sources: [UITests]
dependencies:
- target: Verse