I had a problem recently where Pixelmator crashed while I was editing text. This is bad enough, but then the application kept crashing on startup while trying to automatically reload my unsaved files. I ended up having to do a little delving into macOS internals to figure out what was going on.

My hunch was that Pixelmator made some kind of lockfile, so I went to my ~/Library directory and did a find . -name \*pixelmator\* 2>/dev/null. Eventually, it turned up something that looked promising:

./Containers/com.pixelmatorteam.pixelmator/Data/Library/Autosave Information/com.pixelmatorteam.pixelmator.plist
./Containers/com.pixelmatorteam.pixelmator/Data/Library/Saved Application State/com.pixelmatorteam.pixelmator.savedState

savedState sounded like a good candidate, so I deleted that first. But it didn’t fix the problem, so I ended up trying to delete the entire container, which lost all my preferences but fixed the problem:

% rm -rf ~/Library/Containers/com.pixelmatorteam.pixelmator

Now I can use Pixelmator again!

What’s Container?

~/Library/Containers comes from the macOS sandboxing system, which seems to isolate the rest of the system from a running program by creating a shadow copy of the filesystem as it’s touched. This is not dissimilar to the Windows VirtualStore feature that invisibly confounds users with “disappearing” files all the time.

It seems that Pixelmator Classic doesn’t operate in a non-sandboxed mode, which doesn’t seem to be a particular problem as it reads and writes my actual documents just fine. It’s a great editor, and I hope they keep improving the new “Pro” version.