Post

Replies

Boosts

Views

Activity

Multi-language installer package
Hi, I am building an installer package for macOS using pkgbuild and productbuild. I would ideally like to make a multi-language installer that does the following: Allows the user to select the language, but defaults to the OS language. Displays the installer Welcome, Readme, and License based on that language. Installs a different .app and some specific support files based on the selected language. Runs a language specific postinstall script. I have localized text files (license, readme, welcome) in the resources directory in subfolders named en.lproj, de.lproj, fr.lproj etc. When I build and test this installer on my English mac, it displays only the English readme, though it does allow me to select the License language which is a start. To what extent is the above possible? Thanks, Andrew
2
0
692
Jun ’23
PrivilegedHelper has no access to Downloads folder unless the user manually enables Full Disk Access
Hi, I realize that there was a similar question asked about a year ago, but I wasn't sure if it was appropriate to "piggy back" onto that thread, and it didn't seem to have a definitive solution. The thread I'm referring to is: https://developer.apple.com/forums/thread/131568?answerId=415860022 My problem is similar but perhaps not quite the same as I just have one app that 'owns' the helper tool. I am currently on xcode 13 and Monterey. I implemented an app and privileged helper according to the EvenBetterAuthorizationSample, using SMJobBless and everything. The Privileged helper is a console tool, with the sole purpose of running the installer command to install a downloaded installer package. The app and tool are codesigned, and the app has 'Privacy - Downloads Folder Usage Description' in the plist. When I launch the app it should install a specified package via the helper tool. And... it works great, which I was pleasantly surprised with given the complexity of this thing. There is just one problem: The helper tool cannot access the Downloads folder. If the package is located in /users/me, no problem, but if it's /users/me/Downloads then installer can't access the file. This is not unique to '/usr/sbin/installer' command- I tested other commands like '/bin/ls' If I look in Security & Privacy --> Privacy --> Full Disk Access, I can see the helper listed there as com.myCompany.myApp.helper but it is not checked. If I check it manually, then.. it works - Great! Only problem is, for this to work for a user it would have to fail once, and then I would have to explain to the user how to fix it and try again, which is very awkward. While I'm doing testing, between tests I'm using launchctl to unload the helper, and removing it from LaunchDaemons and PrivilegedHelperTools. I'm also using 'tccutil reset SystemPolicyAllFiles com.myCompany.myApp' Another observation: The app itself can somehow write files to the Downloads folder. And it doesn't show a dialog to ask for permission when I launch the app. Obviously one solution is to not even use the Downloads folder these downloads. I could create a folder like /users/me/myDownloads, and download the packages there. That seems a bit silly... or maybe not? Thanks for any help with this.
8
0
2.0k
Mar ’22
Latest version of Xcode for 10.12.6 and notarization question
Hi, I am trying to notarize an installer package on 10.12.6 and I get the message "unable to find utility altool, not a developer tool or in PATH". I currently have Xcode 8 on this system. I have seen conflicting information about which is the earliest OS I can use to notarize, and which version of Xcode I need. Can somebody confirm the correct requirements? I did try downloading XCode 10 but it won't run "This version of Xcode does not run on this mas OS"
12
0
2k
Sep ’20
Cannot launch 32bit application on 10.14.6 - MobileDevice.framework is x86_64 only
I have customers who cannot launch my 32-bit applications on 10.14. This is music software that uses CoreAudio. This started happening recently after installing iMovie and perhaps some other Apple software. The error is:-----dyld: Library not loaded: /System/Library/PrivateFrameworks/MobileDevice.framework/Versions/A/MobileDevice Referenced from: /System/Library/Frameworks/CoreAudioKit.framework/Versions/A/CoreAudioKit Reason: no suitable image found. Did find: /System/Library/PrivateFrameworks/MobileDevice.framework/Versions/A/MobileDevice: mach-o, but wrong architecture-----Indeed when I open the terminal on the customer's computer and enter "file MobileDevice" I see that it only has 64bit architecture.On my 10.14.6 system, MobileDevice has 32bit architecure as well. I am guessing that some recent software installed this library. How can I fix this problem? I am not sure if I can simply copy the MobileDevice.framework from one computer to another.Thanks,Andrew
25
0
11k
Apr ’20