[Distutils] bundling packages with setuptools?
Ian Bicking
ianb at colorstudy.com
Mon Jan 16 18:47:44 CET 2006
Kevin Dangoor wrote:
> (readding distutils-sig which I accidentally dropped)
>
> On 1/16/06, Christopher Fonnesbeck <chris at trichech.us> wrote:
>
>>On Jan 16, 2006, at 11:54 AM, Kevin Dangoor wrote:
>>
>>
>>>Yes. This is something setuptools does quite admirably. This is in the
>>>setup.py for TurboGears:
>>>
>>> install_requires = ["TurboKid >= 0.9.0",
>>> "CherryPy > 2.1.1",
>>> "SQLObject >= 0.7.1dev_r1457", "simplejson >= 1.1",
>>> "elementtree >= 1.2.6", "PasteScript >= 0.4.1",
>>> "cElementTree >= 1.0.2", "FormEncode >= 0.4",
>>> "setuptools >= 0.6a8",
>>> "RuleDispatch"],
>>>
>>>Running easy_install on the TurboGears package will go and fetch all
>>>of those pre-requisites.
>>>
>>>So, easy_install is the installer, and your egg includes the metadata
>>>about which packages it needs.
>>
>>This is what I was hoping. What about URLs? The packages dont have to
>>be in the cheese shop, do they?
>
>
> Nope. TurboGears uses some packages that aren't in the Cheeseshop. You
> can use the -f/--find-links option to tell easy_install where to look.
> You can see the TurboGears installation instructions to see the full
> process:
>
> http://www.turbogears.org/download/index.html
>
> Generally, pretty easy. If you have all of the eggs available on your
> local machine, you can also have setuptools run with those eggs.
You can also put the links on your Cheese Shop page (in the
long_description). If you do that, you should also add the links to
setup.cfg, like:
[easy_install]
find_links = ...
The combination of these two I think is sufficient to get the package
and dependencies installed both with easy_install and python setup.py
install/develop.
--
Ian Bicking / ianb at colorstudy.com / http://blog.ianbicking.org
More information about the Distutils-SIG
mailing list