InvokeAI
InvokeAI copied to clipboard
adds installation instructions for pypatchmatch on Linux
This PR adds installation instructions for pypatchmatch on Ubuntu Linux. We need instructions for Macintosh and non-debian Linux as well.
I'm confused here...
I have compiled libpatchmatch.so against macOS arm-64 and it appears that this is sufficient to use patchmatch. @mauwii copied it to their system and it worked. Did we decide not to just ship the compiled libraries? The actual installation instruction (to set up the environment and compile it) were pretty tedious.
I'm confused here...
I have compiled
libpatchmatch.soagainst macOS arm-64 and it appears that this is sufficient to use patchmatch. @mauwii copied it to their system and it worked. Did we decide not to just ship the compiled libraries? The actual installation instruction (to set up the environment and compile it) were pretty tedious.
Perfect! Let's ship it and then we won't need the installation instructions. Can you confirm that libpatchmatch.so has no dependencies on external libraries that need to be installed on the Mac? On my Ubuntu system, the same file needs various opencv .so files.
Do you know how to add libpatchmatch.so to the pypatchmatch package so that it is correctly identified and downloaded?
FWIW, I added patchmatch to the Docker image in https://github.com/invoke-ai/InvokeAI/pull/1544/files using the Linux installation instructions, and it seems to have worked as expected. But that does add ~900MB of largely unnecessary opencv dependencies, so having a compiled library would be beneficial.
FWIW, I added
patchmatchto the Docker image in https://github.com/invoke-ai/InvokeAI/pull/1544/files using the Linux installation instructions, and it seems to have worked as expected. But that does add ~900MB of largely unnecessaryopencvdependencies, so having a compiled library would be beneficial.
Wouldn't it work to create the library in a separate stage and just copy over the compiled version of it?
Wouldn't it work to create the library in a separate stage and just copy over the compiled version of it?
See my response in the other PR - I tried a few ways to attempt that approach, but couldn't quite nail it down. I'll come back to optimize it another time, unless we build and distribute the compiled library as discussed above.
superseded