I'm a setuptools user and I appreciate it a lot, particularly for the automatic dependency installation and eggs. I found over the web that one of egg features is that files shouldn't be strewn all over the disk. However is there a way to put files outside the egg install directory (e.g. /usr/share/doc) ?
The data_file list given as an argument to the setup method allows to specify where data files should be installed. But when I try to install a distribution using easy_install with an .egg file, all data files are copied in the egg install directory. This means that the prefix for relative path specified in the data_file list is the egg install directory instead of <sys.prefix>. Is there a way to force easy_install to use <sys.prefix> as the prefix for relative data file paths ?
Best regards
At 03:47 PM 3/18/2010 +0100, Alain Leufroy wrote:
Is there a way to force easy_install to use <sys.prefix> as the prefix for relative data file paths ?
You can use easy_install -e to download and unpack the source for the thing you want to install, then use "setup.py install --single-version-externally-managed". This will not use the .egg installation format, and thus allows things to be installed to places other than a single lib dir and bin dir.
Alternatively, you could perhaps use pip, which automates a process very similar to that. (I'm not sure if it really supports this or not, but you could read the docs or try it out.)
Is there a way to force easy_install to use <sys.prefix> as the prefix for relative data file paths ?
You can use easy_install -e to download and unpack the source for the thing you want to install, then use "setup.py install --single-version-externally-managed". This will not use the .egg installation format, and thus allows things to be installed to places other than a single lib dir and bin dir.
Unfortunately this process is not convenient with dependancy which have data files too. I'm trying to build eggs in order to simplify the user install process, so this process is not convenient with dependancy which have data files too.
Alternatively, you could perhaps use pip, which automates a process very similar to that. (I'm not sure if it really supports this or not, but you could read the docs or try it out.)
It's exactly what I've been looking for (and much more) !
Thanks.