[Pkg-ia32-libs-maintainers] Bug#535425: Bug#535425: ia32-libs-tools/create[-all] failures

Goswin von Brederlow goswin-v-b at web.de
Thu Jul 2 04:58:35 UTC 2009


Andreas Beckmann <debian at abeckmann.de> writes:

> Package: ia32-libs-tools
> Version: 20
> Severity: normal
>
> Hi Goswin,
>
> many thanks for this nice toolkit!
>
> /usr/lib/ia32-libs-tools/createi[-all] fails to do its job. I managed to
> track some problems down to
>
> 1. /usr/lib/ia32-libs-tools/fetch calls 'apt-get update' but fails. 
>    Running apt-get update manually works fine. I didn't look into
>    details of this problem, just removed that line from .../fetch
>    Is it really neccessary to call apt-get update from fetch (and every
>    time? Wouldn't it be OK to fail during fetching packages if the lists
>    are not up-to-date as it would happen with apt-get install?
>    The user should just remember to run update first or live with the
>    consequences otherwise.

I think that is acceptable and actually preferable.

> 2. fetching the binary/source package fails if there is more than one
>    version available, e.g. because sources.list contains stable,
>    testing, unstable, ... with appropriate priorities set in the
>    preferences file, e.g.
>
> # /usr/lib/ia32-libs-tools/create bzip2
> Fetching source bzip2 1.0.5-3 for bzip2
> Fetching source bzip2 1.0.5-2 for bzip2
> Fetching source bzip2 1.0.5-1 for bzip2
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> E: Unable to find a source package for bzip2
> Fetching source failed
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> Reading extended state information
> Initializing package states... Done
> Get:1 http://ftp.debian.org unstable/main bzip2 1.0.5-3 [46.5kB]
> Fetched 46.5kB in 0s (679kB/s)
> All sources and packages fetched, all versions match.
> Enjoy.

All this is the fetch script and I see the problem. It tries to
downloads the source for every version of the bzip2 binary it
knows. And you do not have a deb-src entry for every deb entry, so not
every version does have sources. And even with sources for all
versions the create will later complain about multiple *.dsc files.

But I think I know how to fix this. Instead of going through the
apt-cache showsrc bzip2 output it should download the debs first and
then go through the dpkg -I output to fetch coresponding source.

> dpkg-source: error: cannot open *dsc: No such file or directory
>
>    So let's try some other common syntax to select a specific variant:
>
> # /usr/lib/ia32-libs-tools/create -t testing bzip2
> E: Command line option 't' [from -t] is not known.
> ...
>
> # /usr/lib/ia32-libs-tools/create bzip2/testing
> W: Unable to locate package bzip2/testing
> E: No packages found

Afaik for apt-get source neither -t testing not /testing works. But if
I use the above idea to fetch binaries first and scan them then that
can be supported by fetch and create.

> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> E: Must specify at least one package to fetch source for
> Fetching source failed
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> Reading extended state information
> Initializing package states... Done
> Get:1 http://debian.ae.cs.uni-frankfurt.de testing/main bzip2 1.0.5-2
> [45.5kB]
> Fetched 45.5kB in 0s (0B/s)
> bzip2/testing_*_i386.deb missing
>
> # /usr/lib/ia32-libs-tools/create bzip2=1.0.5-2
> W: Unable to locate package bzip2=1.0.5-2
> E: No packages found
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> E: Must specify at least one package to fetch source for
> Fetching source failed
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> Reading extended state information
> Initializing package states... Done
> Get:1 http://debian.ae.cs.uni-frankfurt.de testing/main bzip2 1.0.5-2
> [45.5kB]
> Fetched 45.5kB in 0s (0B/s)
> bzip2=1.0.5-2_*_i386.deb missing
>
>     Seems to work a little bit, depending on how the parameter is passed
>     to other programs.

Adding all 3 ways to my ToDo.

> The naming of 'create-all' and 'create' is inconsistent to what they do:
> 'create-all' creates new packages (no parameters, processes a list)
> 'create' requires a parameter (the package to work on) but only does a
> preparating step, not the package build.
>
> There is a script missing that builds converted packages for the command
> line parameter(s) together with a changes file so that all this can be
> uploaded to a local repository.

How about create <pkg>, build <pkg>, build-all?

> Andreas
>
> -- System Information:
> Debian Release: squeeze/sid
>   APT prefers testing
>   APT policy: (800, 'testing'), (800, 'stable'), (600, 'unstable'), (130, 'experimental')
> Architecture: amd64 (x86_64)
>
> Kernel: Linux 2.6.28-1-amd64 (SMP w/4 CPU cores)
> Locale: LANG=C, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
> Shell: /bin/sh linked to /bin/bash

MfG
        Goswin





More information about the Pkg-ia32-libs-maintainers mailing list