From 5000b43533672ef8d3232269c30d448d54b28e91 Mon Sep 17 00:00:00 2001 From: Riley Testut Date: Mon, 5 Oct 2020 13:58:13 -0700 Subject: [PATCH] [AltServer] Updates LaunchAtLogin dependency to 3.0.2 --- Cartfile.resolved | 2 +- .../LaunchAtLogin.xcodeproj/project.pbxproj | 10 ++++++---- .../LaunchAtLogin/copy-helper.sh | 3 ++- Carthage/Checkouts/LaunchAtLogin/readme.md | 19 ++++++++++++++++++- 4 files changed, 27 insertions(+), 7 deletions(-) diff --git a/Cartfile.resolved b/Cartfile.resolved index bc0bf778..0f116be7 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -1 +1 @@ -github "sindresorhus/LaunchAtLogin" "v3.0.0" +github "sindresorhus/LaunchAtLogin" "v3.0.2" diff --git a/Carthage/Checkouts/LaunchAtLogin/LaunchAtLogin.xcodeproj/project.pbxproj b/Carthage/Checkouts/LaunchAtLogin/LaunchAtLogin.xcodeproj/project.pbxproj index 851ca848..50ca5613 100644 --- a/Carthage/Checkouts/LaunchAtLogin/LaunchAtLogin.xcodeproj/project.pbxproj +++ b/Carthage/Checkouts/LaunchAtLogin/LaunchAtLogin.xcodeproj/project.pbxproj @@ -12,6 +12,7 @@ E32E9B771EB87EA3000FEEE9 /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = E32E9B761EB87EA3000FEEE9 /* main.swift */; }; E32E9B861EB8845E000FEEE9 /* LaunchAtLoginHelper.app in Resources */ = {isa = PBXBuildFile; fileRef = E32E9B741EB87EA3000FEEE9 /* LaunchAtLoginHelper.app */; }; E32E9B931EB889AE000FEEE9 /* copy-helper.sh in Resources */ = {isa = PBXBuildFile; fileRef = E32E9B921EB889AE000FEEE9 /* copy-helper.sh */; }; + E3A6EB58249009C3004D7101 /* LaunchAtLogin.entitlements in Resources */ = {isa = PBXBuildFile; fileRef = E3A6EB57249009C3004D7101 /* LaunchAtLogin.entitlements */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -33,6 +34,7 @@ E32E9B761EB87EA3000FEEE9 /* main.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = main.swift; sourceTree = ""; usesTabs = 1; }; E32E9B7F1EB87EA3000FEEE9 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; E32E9B921EB889AE000FEEE9 /* copy-helper.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; lineEnding = 0; path = "copy-helper.sh"; sourceTree = ""; usesTabs = 1; }; + E3A6EB57249009C3004D7101 /* LaunchAtLogin.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = LaunchAtLogin.entitlements; path = LaunchAtLogin/LaunchAtLogin.entitlements; sourceTree = ""; }; E3B8C38A20C0003300272EC0 /* LaunchAtLoginHelper.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = LaunchAtLoginHelper.entitlements; sourceTree = ""; }; /* End PBXFileReference section */ @@ -57,6 +59,7 @@ E32E9B591EB87D7B000FEEE9 = { isa = PBXGroup; children = ( + E3A6EB57249009C3004D7101 /* LaunchAtLogin.entitlements */, E32E9B651EB87D7B000FEEE9 /* LaunchAtLogin */, E32E9B751EB87EA3000FEEE9 /* LaunchAtLoginHelper */, E32E9B641EB87D7B000FEEE9 /* Products */, @@ -198,6 +201,7 @@ files = ( E32E9B861EB8845E000FEEE9 /* LaunchAtLoginHelper.app in Resources */, E32E9B931EB889AE000FEEE9 /* copy-helper.sh in Resources */, + E3A6EB58249009C3004D7101 /* LaunchAtLogin.entitlements in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -296,7 +300,6 @@ SWIFT_COMPILATION_MODE = singlefile; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; - VALID_ARCHS = x86_64; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -352,7 +355,6 @@ SWIFT_COMPILATION_MODE = wholemodule; SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 5.0; - VALID_ARCHS = x86_64; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -378,7 +380,7 @@ "@executable_path/../Frameworks", "@loader_path/Frameworks", ); - MARKETING_VERSION = 3.0.0; + MARKETING_VERSION = 3.0.2; PRODUCT_BUNDLE_IDENTIFIER = com.sindresorhus.LaunchAtLogin; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -408,7 +410,7 @@ "@executable_path/../Frameworks", "@loader_path/Frameworks", ); - MARKETING_VERSION = 3.0.0; + MARKETING_VERSION = 3.0.2; PRODUCT_BUNDLE_IDENTIFIER = com.sindresorhus.LaunchAtLogin; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; diff --git a/Carthage/Checkouts/LaunchAtLogin/LaunchAtLogin/copy-helper.sh b/Carthage/Checkouts/LaunchAtLogin/LaunchAtLogin/copy-helper.sh index 52af1017..bd9b03f5 100755 --- a/Carthage/Checkouts/LaunchAtLogin/LaunchAtLogin/copy-helper.sh +++ b/Carthage/Checkouts/LaunchAtLogin/LaunchAtLogin/copy-helper.sh @@ -11,7 +11,7 @@ cp -rf "$origin_helper_path" "$helper_dir/" defaults write "$helper_path/Contents/Info" CFBundleIdentifier -string "$PRODUCT_BUNDLE_IDENTIFIER-LaunchAtLoginHelper" if [[ -n $CODE_SIGN_ENTITLEMENTS ]]; then - codesign --force --entitlements="$CODE_SIGN_ENTITLEMENTS" --options=runtime --sign="$EXPANDED_CODE_SIGN_IDENTITY_NAME" "$helper_path" + codesign --force --entitlements="$(dirname "$origin_helper_path")/LaunchAtLogin.entitlements" --options=runtime --sign="$EXPANDED_CODE_SIGN_IDENTITY_NAME" "$helper_path" else codesign --force --options=runtime --sign="$EXPANDED_CODE_SIGN_IDENTITY_NAME" "$helper_path" fi @@ -19,4 +19,5 @@ fi if [[ $CONFIGURATION == "Release" ]]; then rm -rf "$origin_helper_path" rm "$(dirname "$origin_helper_path")/copy-helper.sh" + rm "$(dirname "$origin_helper_path")/LaunchAtLogin.entitlements" fi diff --git a/Carthage/Checkouts/LaunchAtLogin/readme.md b/Carthage/Checkouts/LaunchAtLogin/readme.md index 6505bdaa..75135d20 100644 --- a/Carthage/Checkouts/LaunchAtLogin/readme.md +++ b/Carthage/Checkouts/LaunchAtLogin/readme.md @@ -22,7 +22,7 @@ github "sindresorhus/LaunchAtLogin" ## Usage -Add a new ["Run Script Phase"](http://stackoverflow.com/a/39633955/64949) below "Embed Frameworks" in "Build Phases" with the following: +Add a new ["Run Script Phase"](http://stackoverflow.com/a/39633955/64949) **below** "Embed Frameworks" in "Build Phases" with the following: ```sh "${PROJECT_DIR}/Carthage/Build/Mac/LaunchAtLogin.framework/Resources/copy-helper.sh" @@ -52,6 +52,22 @@ The framework bundles the helper app needed to launch your app and copies it int ## FAQ +#### I'm getting a “No such file or directory” error when archiving my app + +Please ensure that the LaunchAtLogin run script phase is still below the “Embed Frameworks” phase. The order could have been accidentally changed. + +The build error usually presents itself as: + +``` +cp: […]/Resources/LaunchAtLoginHelper.app: No such file or directory +rm: […]/Resources/copy-helper.sh: No such file or directory +Command PhaseScriptExecution failed with a nonzero exit code +``` + +#### The size of my app increased after adding `LaunchAtLogin` + +The bundled launcher app is written in Swift and hence needs to embed the Swift runtime libraries. If your project targets macOS 10.14.4 or later, you can avoid embedding the Swift runtime libraries. First, open `./Carthage/Checkouts/LaunchAtLogin/LaunchAtLogin.xcodeproj` and set the deployment target to the same as your app, and then run `$ carthage build`. You'll have to do this each time you update `LaunchAtLogin`. + #### My app doesn't show up in “System Preferences › Users & Groups › Login Items” [This is the expected behavior](https://stackoverflow.com/a/15104481/64949), unfortunately. @@ -83,6 +99,7 @@ Apple deprecated that API without providing an alternative. Apple engineers have - [Defaults](https://github.com/sindresorhus/Defaults) - Swifty and modern UserDefaults - [Preferences](https://github.com/sindresorhus/Preferences) - Add a preferences window to your macOS app in minutes +- [KeyboardShortcuts](https://github.com/sindresorhus/KeyboardShortcuts) - Add user-customizable global keyboard shortcuts to your macOS app - [DockProgress](https://github.com/sindresorhus/DockProgress) - Show progress in your app's Dock icon - [create-dmg](https://github.com/sindresorhus/create-dmg) - Create a good-looking DMG for your macOS app in seconds - [More…](https://github.com/search?q=user%3Asindresorhus+language%3Aswift)