Files
Luma/project.yml
T
2026-07-30 20:07:51 +07:00

212 lines
6.9 KiB
YAML

name: Luma
options:
bundleIdPrefix: app.luma
createIntermediateGroups: true
developmentLanguage: ru
indentWidth: 4
tabWidth: 4
xcodeVersion: "16.0"
configs:
Debug: debug
Release: release
settings:
base:
SWIFT_VERSION: 5.9
CURRENT_PROJECT_VERSION: 31
MARKETING_VERSION: 0.10.6
ENABLE_USER_SCRIPT_SANDBOXING: true
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED: true
configs:
Debug:
SWIFT_ACTIVE_COMPILATION_CONDITIONS: DEBUG
Release:
SWIFT_COMPILATION_MODE: wholemodule
packages:
Martin:
url: https://github.com/tigase/Martin.git
exactVersion: 3.2.4
MartinOMEMO:
url: https://github.com/tigase/MartinOMEMO.git
exactVersion: 2.2.3
WebRTC:
url: https://github.com/stasel/WebRTC.git
exactVersion: 150.0.0
targets:
Luma:
type: application
platform: iOS
deploymentTarget: "17.0"
sources:
- path: Sources/App
- path: Sources/Shared
resources:
- path: Resources/Shared.xcassets
- path: Resources/AppAssets.xcassets
dependencies:
- package: Martin
- package: MartinOMEMO
- package: WebRTC
- target: LumaWatch
info:
path: Config/Luma-Info.plist
properties:
CFBundleDisplayName: Luma
CFBundleIconName: AppIcon
CFBundleShortVersionString: $(MARKETING_VERSION)
CFBundleVersion: $(CURRENT_PROJECT_VERSION)
UILaunchScreen: {}
UIBackgroundModes:
- audio
- fetch
- remote-notification
UISupportsDocumentBrowser: false
UIApplicationSupportsIndirectInputEvents: true
NSCameraUsageDescription: Luma использует камеру для фотографий, видеосообщений и видеозвонков.
NSMicrophoneUsageDescription: Luma использует микрофон для голосовых сообщений и звонков.
NSLocalNetworkUsageDescription: Luma использует локальную сеть для прямого соединения аудио- и видеозвонков.
NSLocationWhenInUseUsageDescription: Luma использует геопозицию только когда вы выбираете отправку точки в чате.
entitlements:
path: Config/Luma.entitlements
properties: {}
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: app.luma.chat
PRODUCT_NAME: Luma
TARGETED_DEVICE_FAMILY: "1,2"
SUPPORTS_MACCATALYST: false
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME: AccentColor
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS: true
INFOPLIST_KEY_CFBundleIconName: AppIcon
LumaMac:
type: application
platform: macOS
deploymentTarget: "14.0"
sources:
- path: Sources/App
- path: Sources/Shared
resources:
- path: Resources/Shared.xcassets
- path: Resources/AppAssets.xcassets
dependencies:
- package: Martin
- package: MartinOMEMO
- package: WebRTC
info:
path: Config/LumaMac-Info.plist
properties:
CFBundleDisplayName: Luma
CFBundleIconName: AppIcon
CFBundleShortVersionString: $(MARKETING_VERSION)
CFBundleVersion: $(CURRENT_PROJECT_VERSION)
LSApplicationCategoryType: public.app-category.social-networking
NSHighResolutionCapable: true
NSCameraUsageDescription: Luma использует камеру для фотографий, видеосообщений и видеозвонков.
NSMicrophoneUsageDescription: Luma использует микрофон для голосовых сообщений и звонков.
NSLocationUsageDescription: Luma использует геопозицию только когда вы выбираете отправку точки в чате.
entitlements:
path: Config/LumaMac.entitlements
properties:
com.apple.security.app-sandbox: true
com.apple.security.network.client: true
com.apple.security.network.server: true
com.apple.security.files.user-selected.read-only: true
com.apple.security.device.camera: true
com.apple.security.device.audio-input: true
com.apple.security.personal-information.location: true
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: app.luma.chat.macos
PRODUCT_NAME: Luma
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME: AccentColor
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS: true
INFOPLIST_KEY_CFBundleIconName: AppIcon
LumaWatch:
# Xcode 14+ single-target watchOS app. `application.watchapp2` is the
# legacy container that expects a separate WatchKit extension; compiling
# our SwiftUI @main sources into it makes the linker and WatchKit stub both
# try to produce Luma.app/Luma.
type: application
platform: watchOS
deploymentTarget: "10.0"
sources:
- path: Sources/Watch
resources:
- path: Resources/Shared.xcassets
- path: Resources/AppAssets.xcassets
info:
path: Config/LumaWatch-Info.plist
properties:
CFBundleName: Luma
CFBundleDisplayName: Luma
CFBundleIconName: AppIcon
CFBundleShortVersionString: $(MARKETING_VERSION)
CFBundleVersion: $(CURRENT_PROJECT_VERSION)
NSMicrophoneUsageDescription: Luma использует микрофон Apple Watch для голосовых сообщений.
WKApplication: true
WKCompanionAppBundleIdentifier: app.luma.chat
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: app.luma.chat.watchkitapp
# Keep the bundle filename distinct from the companion Luma.app while
# preserving the user-facing name through CFBundleDisplayName.
PRODUCT_NAME: LumaWatch
GENERATE_INFOPLIST_FILE: NO
TARGETED_DEVICE_FAMILY: "4"
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME: AccentColor
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS: true
INFOPLIST_KEY_CFBundleIconName: AppIcon
LumaTests:
type: bundle.unit-test
platform: iOS
deploymentTarget: "17.0"
sources:
- path: Tests
dependencies:
- target: Luma
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: app.luma.chat.tests
GENERATE_INFOPLIST_FILE: true
schemes:
Luma:
build:
targets:
Luma: all
LumaTests: [test]
run:
config: Debug
test:
config: Debug
targets:
- LumaTests
archive:
config: Release
LumaMac:
build:
targets:
LumaMac: all
run:
config: Debug
archive:
config: Release
LumaWatch:
build:
targets:
LumaWatch: all
run:
config: Debug
archive:
config: Release