Retroactive icon indicating copy to clipboard operation
Retroactive copied to clipboard

iPhoto on 12.3 and 12.3.1

Open jb59 opened this issue 2 years ago • 37 comments

Looks like 12.3 may have killed iPhoto? - instant crash with "iPhoto quit unexpectedly" message

Crash report begins:


Process: iPhoto [677] Path: /Applications/iPhoto.app/Contents/MacOS/iPhoto Identifier: com.apple.iPhoto9 Version: 9.6.1 (910.42) Build Info: iPhotoProject-910042000000000~1 Code Type: X86-64 (Native) Parent Process: launchd [1] User ID: 501

Date/Time: 2022-03-24 16:09:20.9326 +0000 OS Version: macOS 12.3 (21E230) Report Version: 12 Anonymous UUID: 6AE9D0FB-BDCF-1A30-F2B8-88A1D34BECBF

Time Awake Since Boot: 240 seconds

System Integrity Protection: enabled

Crashed Thread: 0

Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY

Termination Reason: Namespace DYLD, Code 1 Library missing Library not loaded: /System/Library/Frameworks/Python.framework/Versions/2.6/Python Referenced from: /Applications/iPhoto.app/Contents/MacOS/iPhoto Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.6/Python' (no such file), '/Library/Frameworks/Python.framework/Versions/2.6/Python' (no such file) (terminated at launch; ignore backtrace)


Weirdly perhaps, Aperture still running as before!

jb59 avatar Mar 24 '22 16:03 jb59

Update on this - just read an article on MacRumors about 12.3 removing Python 2 - suspect this may be the issue.

jb59 avatar Mar 25 '22 10:03 jb59

Update and solution - Disabled SIPS via terminal in Recovery Mode copied Python.framework folder from pre Monterey 12.3 Time Machine backup into /Library/Frameworks folder ( folder contains Python versions 2.3, 2.5, 2.6. 2.7)
Enabled SIPS via terminal in Recovery Mode IPhoto runs as before

jb59 avatar Mar 28 '22 08:03 jb59

Thanks again for Retroactive!

jb59 avatar Mar 28 '22 08:03 jb59

Update - Monterey 12.3.1 update causes the issue to reappear - instant iPhoto crash with Python 2.6 library issue.

Solution: Copy Python.framework folder from pre-Monterey 12.3 Time Machine backup to: /Library/Frameworks

iPhoto runs as before (Python library verification message on first iPhoto start)

Note: no need to enable/disable SIPS

jb59 avatar Apr 03 '22 11:04 jb59

This solution don't work for me. There is no Python.framework at /Library/Framework folder now and back in 2021. Confusion. Any suggestions? Thank for Retroactive which work so well since the Monterey update.

doxxxob avatar Apr 05 '22 10:04 doxxxob

Ok - have checked on my MacBook Air, running BigSur 11.6.5 - location of Python framework is different to the above and is at:

/System/Library/Frameworks

If you have a TM backup it should be there (assuming you were running iPhoto at that time)

jb59 avatar Apr 06 '22 07:04 jb59

Have been messaged about this, so here are a couple of screen grabs showing my (iPhoto functioning) Python Framework

Screenshot 2022-04-07 at 08 08 37 Screenshot 2022-04-07 at 08 09 05

It can be seen that "versions" 2.3, 2.5, 2.6 and Current are all aliases pointing to the 2.7 folder - the original crash report quoted above shows that iPhoto is looking for Python 2.6 , but appears to be happy to be "redirected" to 2.7.

The Python.framework folder on my system (2015 5k iMac) is reported as 208MB - it compresses to 87.8mb so if anyone wants to try it on their system, message me and I'll put it up on a fileshare platform.

jb59 avatar Apr 07 '22 07:04 jb59

Hey there-- have an M1 MacBook Air and have been using Time Machine since last July. I tried looking for the python framework folder in both locations, but TM seems to have chosen not to back that folder up. I'd love to get iPhoto running again (I'm on MacOS 12.3.1). Would you be willing to fileshare the compressed file? Thanks!!

Update/ edit: I found the folder on an older clone of my previous MacBook Air, however the OS won't let me copy anything into my /System folder.

thisplantguy avatar Apr 08 '22 22:04 thisplantguy

can someone share the missing folder please?

Tetonne avatar Apr 09 '22 10:04 Tetonne

@thisplantguy It's supposed to go into /Library/Frameworks not /System/Library/Frameworks. /System is write protected.

RedTartan04 avatar Apr 09 '22 11:04 RedTartan04

@jb59 Thanks a ton. I copied it from a BigSur backup to /Library/Frameworks as per your screenshots. Still crashing with this message '/Library/Frameworks/Python.framework/Versions/2.6/Python' (code signature invalid (errno=1) :-(

RedTartan04 avatar Apr 09 '22 11:04 RedTartan04

Is python realy the problem? I don't belief it. Did anyone had success with this??

doxxxob avatar Apr 09 '22 11:04 doxxxob

Is python realy the problem? I don't belief it. Did anyone had success with this??

Why don't you believe it? OP has posted screenshots. Also if you look into the crash message, it's clearly looking for python and not getting it.

Termination Reason:    Namespace DYLD, Code 1 Library missing
Library not loaded: 
/System/Library/Frameworks/Python.framework/Versions/2.6/Python
Referenced from: /Applications/iPhoto.app/Contents/MacOS/iPhoto
Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.6/Python' (no such file), '/Library/Frameworks/Python.framework/Versions/2.6/Python' (code signature invalid (errno=1) sliceOffset=0x00004000, codeBlobOffset=0x00168390, codeBlobSize=0x000041F0 for '/Library/Frameworks/Python.framework/Versions/2.7/Python')
(terminated at launch; ignore backtrace)

RedTartan04 avatar Apr 09 '22 12:04 RedTartan04

It's working now :-) Did a manual code sign: sudo codesign -f -s - /Library/Frameworks/Python.framework/Versions/2.7

Before that I also did a sudo chown -R root /Library/Frameworks/Python.framework after I copied it over from a BigSur backups /System/Library/Frameworks. Not sure if that's needed though.

RedTartan04 avatar Apr 09 '22 12:04 RedTartan04

Asking someone to share a folder with you might not be the wisest thing.

Anyhow, try this: https://www.python.org/downloads/release/python-2718/

Once it finishes installing you'll have the python folder with 2.7 in there (in /Library/Frameworks, as shown above. We can't write to /System/Library anymore.) Then create the aliases manually for 2.3-2.6 and current. That should fix your problem.

Thank you JB59 for the assistance!!

drrules avatar Apr 09 '22 12:04 drrules

For those who wont believe until seeing ;-) iPhoto_at_Monterey_csw

RedTartan04 avatar Apr 09 '22 12:04 RedTartan04

just install https://www.python.org/ftp/python/2.7.18/python-2.7.18-macosx10.9.pkg on 12.3.1 then sudo codesign -f -s - /Library/Frameworks/Python.framework/Versions/2.7 created alias of 2,7 for 2,3 ; 2,5 ; 2,6 (drag and option+cmd) but iPhoto still doesn't work :-(

Tetonne avatar Apr 09 '22 14:04 Tetonne

Also making it the drrules-way. Does't work

doxxxob avatar Apr 09 '22 14:04 doxxxob

My crash message:

Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: UNKNOWN_0xD at 0x0000000000000000 Exception Codes: 0x000000000000000d, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY

Termination Reason: Namespace SIGNAL, Code 11 Segmentation fault: 11 Terminating Process: exc handler [6330]

doxxxob avatar Apr 09 '22 14:04 doxxxob

Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY

Termination Reason: Namespace DYLD, Code 1 Library missing Library not loaded: /System/Library/Frameworks/Python.framework/Versions/2.6/Python Referenced from: /Applications/iPhoto.app/Contents/MacOS/iPhoto Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.6/Python' (no such file), '/Library/Frameworks/Python.framework/Versions/2.6/Python' (no such file) (terminated at launch; ignore backtrace)

Application Specific Information: Library not loaded: /System/Library/Frameworks/Python.framework/Versions/2.6/Python Referenced from: /Applications/iPhoto.app/Contents/MacOS/iPhoto Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.6/Python' (no such file), '/Library/Frameworks/Python.framework/Versions/2.6/Python' (no such file)

Tetonne avatar Apr 09 '22 15:04 Tetonne

@Tetonne If Finder Alias wont work you may need a symlink in Terminal instead (although I'm still not sure if it's relevant to chown everything to root - anything you do with Finder will have your own user as owner, not root).

cd /Library/Frameworks/Python.framework/Versions
ln -s 2.7 2.6

To check: ls -la should look like

lrwxr-xr-x   1 root  wheel    3  1 Jan  2020 2.3 -> 2.7
lrwxr-xr-x   1 root  wheel    3  1 Jan  2020 2.5 -> 2.7
lrwxr-xr-x   1 root  wheel    3  1 Jan  2020 2.6 -> 2.7
drwxr-xr-x  12 root  wheel  384  9 Apr 14:43 2.7
lrwxr-xr-x   1 root  wheel    3  1 Jan  2020 Current -> 2.7

while a Finder Alias looks like -rwxr-xr-x@ 1 frank wheel 768 9 Apr 20:18 2.7 Alias

RedTartan04 avatar Apr 09 '22 18:04 RedTartan04

My crash message:

Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: UNKNOWN_0xD at 0x0000000000000000 Exception Codes: 0x000000000000000d, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY

Termination Reason: Namespace SIGNAL, Code 11 Segmentation fault: 11 Terminating Process: exc handler [6330]

Different reason... Did you try to rerun Retroactive and force it to enable iPhoto again? Not sure if related, but it's someting I did before fixing Python.

RedTartan04 avatar Apr 09 '22 18:04 RedTartan04

I want to use iPhoto as much as the next person in this thread, but playing around with root permissions and making system aliases seem to be a bit of a stretch, security-wise, to do this. I do hope that the dev can come up with a more elegant solution for this, but as it stands now, I'm not comfortable playing around with signing packages.

thisplantguy avatar Apr 09 '22 21:04 thisplantguy

How to I did and it works thanks to jb59 ; RedTartan04 ; drrules

  1. install https://www.python.org/ftp/python/2.7.18/python-2.7.18-macosx10.9.pkg

  2. 
In Terminal : sudo codesign -f -s - /Library/Frameworks/Python.framework/Versions/2.7

  3. Create the needed alias : cd /Library/Frameworks/Python.framework/Versions sudo ln -s 2.7 2.6 sudo ln -s 2.7 2.5 sudo ln -s 2.7 2.3

huge thanks

Tetonne avatar Apr 10 '22 07:04 Tetonne

I want to use iPhoto as much as the next person in this thread, but playing around with root permissions and making system aliases seem to be a bit of a stretch, security-wise, to do this. I do hope that the dev can come up with a more elegant solution for this, but as it stands now, I'm not comfortable playing around with signing packages.

Relax ;-) There's nothing spooky about this installation process. It doesn't work around SIP for example. Every step is pretty normal stuff, if you're a developer or admin.

In my case I took the package from a backup of my own mac, so signing it myself is perfectly ok. Also with the official package I don't see a problem to use and sign that.

We're not 'playing with root permissions'. I did a chown, but that doesn't seem to be required. Even if it was, it just restores things to what they were originally before 12.3.

Also there are no 'system' aliases. Same as above: restoring things to what they were. Again, just very basic unix stuff.

A 'more elegant' solution would also have to install Python one way or another. Not sure if iPhoto could be patched to look at a different location, e.g. in a user's directory or if Python could be put into the app bundle. Either way it would involve the install package, code signing and probably a symlink or two ;-) It's just how things work.

RedTartan04 avatar Apr 10 '22 08:04 RedTartan04

@RedTartan04

My crash message:

Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: UNKNOWN_0xD at 0x0000000000000000 Exception Codes: 0x000000000000000d, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY

Termination Reason: Namespace SIGNAL, Code 11 Segmentation fault: 11 Terminating Process: exc handler [6330]

Different reason... Did you try to rerun Retroactive and force it to enable iPhoto again? Not sure if related, but it's someting I did before fixing Python.

After rerun Retroactive: same crash.

doxxxob avatar Apr 10 '22 09:04 doxxxob

Just worked for me (see Tetonne, above). Monterey 12.3.1, on M1 Mac mini. Still some crashes, but certainly better than crashing on open, as before.

pdq2 avatar May 14 '22 22:05 pdq2

Hey everyone, just wanted to confirm it's working on Monterey 12.5 too. Just upgraded and iPhoto broke. Popped open terminal and reran the codesign from @Tetonne:

sudo codesign -f -s - /Library/Frameworks/Python.framework/Versions/2.7

All the aliases remained so that wasn't an issue.

If it fails for you again, just re-install python from my link above again.

Gotta love this community!

drrules avatar Jul 30 '22 11:07 drrules

Don’t work for me. iPhoto didn’t start at all. I am depressed.

Am 30.Juli.2022 um 13:49 schrieb drrules @.***>:

Hey everyone, just wanted to confirm it's working on Monterey 12.5 too. Just upgraded and iPhoto broke. Popped open terminal and reran the codesign from @Tetonne:

sudo codesign -f -s - /Library/Frameworks/Python.framework/Versions/2.7

All the aliases remained so that wasn't an issue.

If it fails for you again, just re-install python from my link above again.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.

doxxxob avatar Jul 30 '22 14:07 doxxxob

Don’t work for me. iPhoto didn’t start at all. I am depressed. Am 30.Juli.2022 um 13:49 schrieb drrules @.***>: Hey everyone, just wanted to confirm it's working on Monterey 12.5 too. Just upgraded and iPhoto broke. Popped open terminal and reran the codesign from @Tetonne: sudo codesign -f -s - /Library/Frameworks/Python.framework/Versions/2.7 All the aliases remained so that wasn't an issue. If it fails for you again, just re-install python from my link above again. — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.

Have you followed all the instructions above?

First install python from my source link or @Tetonne 's which is a direct link to the download. Then make the symlinks thanks to the suggestion from @RedTartan04 and following the instructions for 2.7 down to 2.3 that @Tetonne mentions. Run the Retroactive app. Then codesign python like in my previous post.

Also, maybe delete iPhoto and all of its related files and grab the installer from archive.org (just search for iphoto 9.6.1 archive on google).

drrules avatar Jul 30 '22 14:07 drrules