Search code examples
pythonpy2exeeasy-installegg

How to unzip python eggs?


I'm trying to bundle some egg dependencies when using py2exe and as stated on the py2exe site, it doesn't work with those and I need to unzip them first. I've tried to first run easy_install -m lxml and then easy_install --always-unzip lxml==2.2.2, but it didn't work. Then I tried to set the unzipping behaviour to default by putting it to distutils.cfg. I didn't find the latter file, so I've made the HOME environment variable and created a pydistutils.cfg file there with this content:

[easy_install]
zip_ok = 0

but easy_install still doesn't unpack the eggs. What is the easiest way to get things done?


Solution

  • Quick hack/workaround: egg files are just zip files, so you can use the python zipfile module to unzip them. Maybe you could rename the easy_install file to "easy_install_pre.exe", and create a new .bat file named "easy_install.bat":

    easy_install_pre.exe %1
    unzip_eggs.py %1