Hi, Quoting Soren Stoutner (2025-11-20 20:26:20) > On Wednesday, November 19, 2025 6:23:59 PM Mountain Standard Time Johannes > Schauer Marin Rodrigues wrote: > > you will end up uploading something else than you told sbuild to build. > > sbuild was building the dsc that got copied in (the one produced on the > > outside) but what you are uploading is the dsc which sbuild produced. And > > secondly, you are loosing your input as sbuild will overwrite it with the > > new build artifacts it created. > In what was would the .dsc be different? Shouldn’t they be generated with > identical information both times?
maybe. But if you think it should be like that, the reproducible-builds team
and the dpkg developers have discussed this topic at length and as of today
this is not what is happening. You can try this out yourself. First create the
upstream tarball from an unpacked source package using "dpkg-source -b ." (this
is what sbuild calls as a convenience feature when you run it from an unpacked
source directory) and move the upstream tarball somewhere else. Then run sbuild
with --source to create another upstream tarball. Then compare the two with
diffoscope and you will very likely see differences. These include, but are not
limited to:
- the root directory of the tarball will reflect the name of the directory
that your unpacked source was in. If you build from git, then your source
directory will probably not include the source version. The unpacked source
inside sbuild will.
- different versions of the compressor will produce differently compressed
files
- different version of dpkg will create different source packages
- if your packaging git contains debian/source/local-options then these
options might affect your source tarball but since that file is not being
put into the source package it will not affect the source package packed by
sbuild
> > > > I think I understand your problem now. Your problem is, that you do not
> > > > get a *_$arch.changes file which includes references to the source
> > > > package and adding the --source option or $build_source=1 does this and
> > > > that's why you recommend adding it. Is that correct?
> > > That is correct. Properly generating complete source.changes and
> > > $arch.changes files is an important aspect of the example .sbuildrc on
> > > the wiki.
> > Would the $both_changes=1 option in your ~/.config/sbuild/config.pl do what
> > you want? Use the patch of this MR:
> > https://salsa.debian.org/debian/sbuild/-/merge_requests/211
>
> Yes, it looks like that patch would address all my concerns.
Okay.
This is yet another convenience option. As manphiz notes, dgit performs the
mergechanges step automatically. I am still of the opinion that this feature
does not belong into sbuild but into the tool which you use to upload your
package.
Thanks!
cheers, josch
signature.asc
Description: signature

