[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Feedback on 3.0 source format problems

Hi Mattia,

Quoting Mattia Rizzolo (2017-01-09 11:27:30)
> On Sun, Jan 08, 2017 at 01:05:37PM +0100, Johannes Schauer wrote:
> > Mattia, please see below for a pbuilder-specific question.
> Thanks for CCing me; I'm not following this thread anymore (as it
> surpassed the threshold above which I stop to dedicate my time to it),
> so please CC me if you need my input on anything.

then you should probably instruct your mailer to not exclude you from the
Mail-Followup-To header. :)

> > I'm not very familiar with pbuilder. Looking at the man page it seems that
> > pbuilder itself exclusively accepts a source package .dsc and for building
> > a source directory one needs the pdebuild wrapper?
> Exactly.
> just calling plain `pdebuild` without any option will (roughly) call
>   1. dpkg-buildpackage -S -d -us -uc -rfakeroot $other_user_options
>   2. sudo pbuilder build $some_options $user_options ../$pkg_$ver.dsc
> > If that is the case, then it seems sensible for sbuild to do the same as
> > pdebuild if given a source directory only. Both tools should behave the same
> > way when executed in the same context, I think.
> I don't understand what you're planning to do to sbuild.
> > Are there any reasons against this plan? (targeting Buster)
> And I haven't understood what "this plan" is, either.
> FYI, James asked me whether I was fine to move from that
> `dpkg-buildpackage` invocation to call `dpkg-source` instead (with the
> --before-build and --after-build things too), and my only concerns is
> people who are relying on finding a _source.changes in '..'.
> My current workflow is basically calling `pdebuild` in a source tree
> and if the build works `debsign ../$pkg_$ver_source.changes` and then
> dput it (not that my BUILDRESULT is a directory elsewhere that I clean
> often).  I don't think what I'm doing is exotic enough to be fine disrupting
> it.

hrm... this is even more confusing now. Okay, let me give some context.

Thibaut pointed out that it would be cool if sbuild would revert the patches
after building with sbuild to which James replied that this is something that
pdebuild by default. So I wanted to get more details about what pdebuild is
doing with respect to how it leaves the unpacked source directory after
building the source package so that we can have sbuild do the same thing.

Now reading the pdebuild source code it indeed seems that pdebuild is using
'dpkg-buildpackage -S -d' instead of using 'dpkg-source -b' as sbuild does.
From reading the dpkg-buildpackage code, it seems that that one is doing:

    $ dpkg-source --before-build .
    $ dpkg-source -b .
    $ dpkg-source --after-build .

which is what takes care of the patches independent in which state they were.
On the other hand, using dpkg-buildpackage also creates a changes file, a
buildinfo file and tries to sign the whole kaboodle. So maybe both tools are
wrong and pbuilder should replace 'dpkg-buildpackage -S -d' with above three
dpkg-source invocations while sbuild should add the --before-build and
--after-build invocations?

What do the dpkg developers think?


cheers, josch

Attachment: signature.asc
Description: signature

Reply to: