[Piuparts-devel] Bug#801054: piuparts: piupart should order the deb files given to 'dpkg -i' when passed a changes file

Guilhem Moulin guilhem at guilhem.org
Mon Oct 5 17:53:57 UTC 2015


Package: piuparts
Version: 0.66
Severity: wishlist

Dear Maintainer,

`piuparts --schroot=unstable-amd64-sbuild […] dropbear_2015.68-1_amd64.changes`
fails because the .deb files are not properly ordered when given to `dpkg -i`.
Indeed, piuparts runs

    dpkg -i tmp/dropbear-bin_2015.68-1_amd64.deb \
            tmp/dropbear-initramfs_2015.68-1_amd64.deb \
            tmp/dropbear-run_2015.68-1_amd64.deb \
            tmp/dropbear_2015.68-1_all.deb

which fails during the upgrade test.  ('dropbear' used to be a regular
package but is now a dummy transitional package depending on
dropbear-{bin,initramfs}; each in turn depending on dropbear-bin and
breaking+replacing the former 'dropbear' [0].)

However replacing the changes file by pre-ordered deb files makes
piuparts happy:

    piuparts --schroot=unstable-amd64-sbuild […] \
        dropbear_2015.68-1_all.deb \
        dropbear-bin_2015.68-1_amd64.deb \
        dropbear-run_2015.68-1_amd64.deb \
        dropbear-initramfs_2015.68-1_amd64.deb

Indeed `dpkg -i` seems to install its arguments sequentially.  Hence
piuparts should probably build the dependency graph to figure out how to
order the binary packages passed to `dpkg -i`.  Or alternatively, let
APT do that by replacing `dpkg -i` with `apt install` and a file://
local source.

This is especially interesting for tools like sbuild(1) which are
interacting with piuparts by merely passing changes file.

Thanks!
-- 
Guilhem.

[0] https://anonscm.debian.org/cgit/collab-maint/dropbear.git/tree/debian/control
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/piuparts-devel/attachments/20151005/2f03589c/attachment.sig>


More information about the Piuparts-devel mailing list