Bluesky app fork with some witchin' additions 馃挮 witchsky.app
bluesky fork client
120
fork

Configure Feed

Select the types of activity you want to include in your feed.

at main 90 lines 3.2 kB view raw
1const {withXcodeProject} = require('expo/config-plugins') 2 3const BUILD_PHASE_FILES = ['AppDelegate.swift', 'ViewController.swift'] 4 5const withXcodeTarget = (config, {targetName}) => { 6 return withXcodeProject(config, config => { 7 const pbxProject = config.modResults 8 9 const target = pbxProject.addTarget(targetName, 'application', targetName) 10 target.pbxNativeTarget.productType = `"com.apple.product-type.application.on-demand-install-capable"` 11 pbxProject.addBuildPhase( 12 BUILD_PHASE_FILES.map(f => `${targetName}/${f}`), 13 'PBXSourcesBuildPhase', 14 'Sources', 15 target.uuid, 16 'application', 17 '"AppClips"', 18 ) 19 pbxProject.addBuildPhase( 20 [`${targetName}/Images.xcassets`], 21 'PBXResourcesBuildPhase', 22 'Resources', 23 target.uuid, 24 'application', 25 '"AppClips"', 26 ) 27 28 const pbxGroup = pbxProject.addPbxGroup([ 29 'AppDelegate.swift', 30 'ViewController.swift', 31 'Images.xcassets', 32 `${targetName}.entitlements`, 33 'Info.plist', 34 ]) 35 36 pbxProject.addFile(`${targetName}/Info.plist`, pbxGroup.uuid) 37 const configurations = pbxProject.pbxXCBuildConfigurationSection() 38 for (const key in configurations) { 39 if (typeof configurations[key].buildSettings !== 'undefined') { 40 const buildSettingsObj = configurations[key].buildSettings 41 if ( 42 typeof buildSettingsObj.PRODUCT_NAME !== 'undefined' && 43 buildSettingsObj.PRODUCT_NAME === `"${targetName}"` 44 ) { 45 buildSettingsObj.CLANG_ENABLE_MODULES = 'YES' 46 buildSettingsObj.INFOPLIST_FILE = `"${targetName}/Info.plist"` 47 buildSettingsObj.CODE_SIGN_ENTITLEMENTS = `"${targetName}/${targetName}.entitlements"` 48 buildSettingsObj.CODE_SIGN_STYLE = 'Automatic' 49 buildSettingsObj.CURRENT_PROJECT_VERSION = `"${ 50 process.env.BSKY_IOS_BUILD_NUMBER ?? '1' 51 }"` 52 buildSettingsObj.GENERATE_INFOPLIST_FILE = 'YES' 53 buildSettingsObj.MARKETING_VERSION = `"${config.version}"` 54 buildSettingsObj.PRODUCT_BUNDLE_IDENTIFIER = `"${config.ios?.bundleIdentifier}.AppClip"` 55 buildSettingsObj.SWIFT_EMIT_LOC_STRINGS = 'YES' 56 buildSettingsObj.SWIFT_VERSION = '5.0' 57 buildSettingsObj.TARGETED_DEVICE_FAMILY = `"1"` 58 buildSettingsObj.DEVELOPMENT_TEAM = 'B3LX46C5HS' 59 buildSettingsObj.IPHONEOS_DEPLOYMENT_TARGET = '15.1' 60 buildSettingsObj.ASSETCATALOG_COMPILER_APPICON_NAME = 'AppIcon' 61 } 62 } 63 } 64 65 pbxProject.addTargetAttribute('DevelopmentTeam', 'B3LX46C5HS', targetName) 66 67 if (!pbxProject.hash.project.objects.PBXTargetDependency) { 68 pbxProject.hash.project.objects.PBXTargetDependency = {} 69 } 70 if (!pbxProject.hash.project.objects.PBXContainerItemProxy) { 71 pbxProject.hash.project.objects.PBXContainerItemProxy = {} 72 } 73 pbxProject.addTargetDependency(pbxProject.getFirstTarget().uuid, [ 74 target.uuid, 75 ]) 76 77 pbxProject.addBuildPhase( 78 [`${targetName}.app`], 79 'PBXCopyFilesBuildPhase', 80 'Embed App Clips', 81 pbxProject.getFirstTarget().uuid, 82 'application', 83 '"AppClips"', 84 ) 85 86 return config 87 }) 88} 89 90module.exports = {withXcodeTarget}