That's exactly the piece of information I needed! :-)
The control file created by setdeb (stdeb_run_setup, to be precise)
looks like this (some lines will get wrapped):
Source: <my package name>
Maintainer: <my name> <my email address>
Section: python
Priority: optional
Build-Depends: python-setuptools (>= 0.6b3-1), python-all-dev (>=
2.3.5-11), debhelper (>= 5.0.38), python-central (>= 0.5.6)
Standards-Version: 3.7.2
XS-Python-Version: all
Package: python-<my package name>
Architecture: all
Depends: ${python:Depends}
Recommends:
Suggests:
XB-Python-Version: ${python:Versions}
Provides: ${python:Provides}
Description: <my description>
So apparently, stdeb adds setuptools by itself already, but it does not
add the dependency packages I specified in setup.py.
When I now append python-psycopg2 (>= 2.0.6-3) to the Depends: copy the
.deb file to the virtual machine and run sudo dpkg -i python-<my package
name>-all.deb, I get the following output:
Selecting previously deselected package python-<my package name>.
(Reading database ... 17508 files and directories currently installed.)
Unpacking python-<my package name> (from python-<my package
name>_0.0.1-4927-1_all.deb) ...
dpkg: dependency problems prevent configuration of python-inro-marvin-setup:
python-<my package name> depends on python-psycopg2 (>= 2.0.6-3); however:
Package python-psycopg2 is not installed.
dpkg: error processing python-<my package name> (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
python-<my package name>
My conclusions:
1. I must use a 'higher-level' tool than dpkg to install the package
which automatically resolves and installs dependency packages. There has
got to be a way to use apt-get for .deb files which do not reside
(yet) in a repository.
2. stdeb does not seem to 'transform' dependencies specified in setup.py
into dependencies in its output files. There seems to be a mailing list
for stedb at http://mail.python.org/mailman/listinfo/distutils-sig. I'll
try there.
Thanks for your help!
Cheers,
Steve
Stephane Bulot schrieb:
I'm not familiar with stdeb, but dpkg-buildpackage needs a file called
"control". This is this file that will be used to generate deb archive
with the good dependancies. Into this file, there are two fields,
Build-Depends and Depends, that give to dpkg-buildpackage what are the
package dependancies.
Check this "control" file content, you should have psycopg2 and
setuptools (if it is really a dependancy) in the Depends field. If it
not the case, do it manually. Do not forget to check and notify the
version of this dependancies.
Regards.
Stephane
2008/11/21 Steven Samuel Cole <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>>
Hey Paul
thanks for your reply! :-)
2008/11/21 Paul Boddie <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>:
> Are you saying that psycopg2 needs setuptools for the setup.py script
> to work? This isn't generally the case (or wasn't), but maybe the
> "entry point" is a setuptools thing which would then demand that
> software's presence.
Not exactly. My package requires psycopg2 to run and (from what it
looks like to me) setuptools must be available in order to use its
installation mechanism (setup.py, entry points, etc.)
> How does stdeb know which package provides psycopg2? I'm not really
> familiar with stdeb - I write my own packaging files - but might
it be
> the case that you need to specify python-psycopg2 instead?
I tried python-psycopg2, but that caused a ValueError in stdeb about a
'parenthesized list' -psycopg2.
By trial & error I found out that I seem to have to use the package
name without the python- bit, because then stdeb does run without
error.
If the name was really the issue, I would at least expect stdeb to
report an error about an unknown package or so...
Cheers,
Stefan
2008/11/21 Steven Samuel Cole <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>>:
> Hey Paul
>
> thanks for your reply! :-)
>
> 2008/11/21 Paul Boddie <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>>:
>> Are you saying that psycopg2 needs setuptools for the setup.py
script
>> to work? This isn't generally the case (or wasn't), but maybe the
>> "entry point" is a setuptools thing which would then demand that
>> software's presence.
>
> Not exactly. My package requires psycopg2 to run and (from what it
> looks like to me) setuptools must be available in order to use its
> installation mechanism (setup.py, entry points, etc.)
>
>> How does stdeb know which package provides psycopg2? I'm not really
>> familiar with stdeb - I write my own packaging files - but might
it be
>> the case that you need to specify python-psycopg2 instead?
>
> I tried python-psycopg2, but that caused a ValueError in stdeb
about a
> 'parenthesized list' -psycopg2.
> By trial & error I found out that I seem to have to use the package
> name without the python- bit, because then stdeb does run without
> error.
>
> If the name was really the issue, I would at least expect stdeb to
> report an error about an unknown package or so...
>
> Cheers,
>
> Stefan
>
--
http://mail.python.org/mailman/listinfo/python-list
--
http://mail.python.org/mailman/listinfo/python-list