MacOS 10.15.7 PlistBuddy Missing?

Hello guys,

any idea what happened with PlistBuddy ? it seems that after the last 2 updated it is not accessible or available anymore , how do we alter the info.plist from now on xojo ? I used to have a script on build time that will add the needed info but it seems that it does not work anymore , or at least not on XOJO 2019 R 3.2, it used to 2 months ago.

any ideas ?

Thanks.

It’s probably no longer in the default path. Try this in a terminal:

which Plistbuddy

Hi Greg , well in this case it gives nothing , so I assume that it was removed or something . is there a way to find it and put it back ? so far if I change the shell back to bash I can find it via the path /usr/libexec/PlistBuddy but with the new zsh it cannot be found , but still when running that on xojo it fails to write the data on the file .

Oh, forgot that it had a capital B

which PlistBuddy

Still nothing on the result

So “which” doesn’t find it, but it’s actually in the file system???

Can you use bash as the backend in your shell then?

https://docs.xojo.com/Shell.Backend

apparently yes, if I run the command like /usr/libexec/PlistBuddy i get a result in terminal but if I search it with which PlistBuddyi get nothing and in the script I have several lines that are like Call DoShellCommand("/usr/libexec/PlistBuddy -c ""add :CFBundleURLTypes array"" " + App + "/Contents/Info.plist" ) but it seems that they never do anything anymore .

Can I set that in the xojo scripts ? as this is a xojo script that runs on the Build settings.

Let’s say that trying to do this Custom App URI does not work anymore in 2019 R3.2 on Mojave since the last night update at least . updating the plist.

No. You cannot set the backend in an IDEScript.

I am still really surprised by this though. PlistBuddy is still installed and work in IDEScripts on my Big Sur and my Mojave systems here, so it’s hard for me to think that Apple would have removed access to it just on 10.15.7.

Well I just noticed that as well today when I wanted to build the app and last night I did the last Apple update and surprise , it does not work anymore from XOJO but I can run it properly from the terminal if I put the complete path so weird here as well.

I guess the next step would be to use defaults and a shell but I’ll have to see how I can properly wrap the string to match to my needs.

ok, Correction, It works perfectly in Xojo 2021 R1 but not anymore in Xojo 2019R3.2 any idea what could break there so it does not work ?

And from a simple test apparently Call DoShellCommand("open " + PlistFile) never gets called anymore so what was changed and what can be done in this case ?

Instead of just using Call, have you tried Print and see if there’s a specific error returned?

that is a good point, so far I used print to see if the command was correct and still was ok for me. I ended up using defaults way to write on the plist and now is ok, still no idea what is the issue but as long as it works for me I’m ok with any option.

If I’ll have time to dig more into this and find something useful I’ll post here maybe somebody else will need that as well.

Thanks.

I’m seeing complaints that OpenCL is broken in 10.15.7.

If which doesn’t see it, that just means it’s not in your path.

If you’re saying /usr/libexec/PlistBuddy in a script or at the command line, then it should run.

Forum for Xojo Programming Language and IDE. Copyright © 2021 Xojo, Inc.