[Python-de] setuptools to the rescue?

Diez B. Roggisch deets at web.de
Fre Jan 13 14:01:29 CET 2006


> Ein .deb zu bauen bedeutet nicht unbedingt Debians Policy zu
> akzeptieren.

> > - siehe die leidige distutils-im-dev-Geschichte.
>
> Hae? Meinst du jetzt die distutils gehoeren in python<version>-dev? Denn
> zumindestens im aktuellen python2.3.5 Paket sind sie drin (und nicht im
> -dev).

Bei mir sind die distutils (bis dato) in python*-dev gewesen. Wenn das bei dir 
anders ist, dann haben sie das vielleicht kuerzlich geaendert.

Aber ich meinen natuerlich _nicht_, das das so gehoert :) Sondern halte das 
fuer nervtoetend...

> > Eine debian Paket-Unterstuetzung wuerde auch nur Snn machen, wenn
> > Abhaengigkeiten - wie zb von numeric oder so - formulierbar waeren.
>
> Und wozu ist dann die RPM Unterstuetzung gedacht?

Kann ich nicht sagen - mag sein das RPM einfacher ist, da as (AFAIK) weniger 
komplex ist was die dependecies angeht - womit es sich denke ich auch 
einfacher erzeugen laesst bzw. ein RPM "nutzbarer" ist wenn die dependencies 
mal nicht so stimmen - mit allen Konsequenzen.

> Dasselbe gilt doch wohl fuer die RPM Unterstuetzung oder?

Siehe oben, denke nicht in dem Aussmass.


> Auch wenn sich das vllt. so anhoert: Ich will weder distutils/setuptools
> schlecht machen, ich untersuche nur grad ihre Eignung fuer mein erstes
> Python-Projekt und ich will definitiv ein .deb draus bauen...

Dararn wird dich keiner hindern - und dann kannst du natuerlich auch machen 
was du willst (im Sinne davon, das die rules in debs ja letztlich ein 
shell-skript sind - was auch immer du darin dann tuen magst)

> In dem Zug: Am besten lernt man IMHO "by example", kennst du ein paar
> Python-Projekte die distutils/setuptools nutzen und in Debian (unstable)
> verfuegbar sind? Damit ich mal schauen kann ob und wie man sowas
> umsetzen kann.

Jedes python Paket - zB lxml, mittels apt-get source lxml geholt. 

Das hat btw. nen Makefile, das etwa so aussieht:

--------------------
PYTHON=python2.3
TESTFLAGS=-p -v
TESTOPTS=
SETUPFLAGS=

all: inplace

# Build in-place
inplace:
        $(PYTHON) setup.py $(SETUPFLAGS) build_ext -i

build:
        $(PYTHON) setup.py $(SETUPFLAGS) build
<snip>
----------------------------

also doch distutils :)

MfG Diez