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

Bug#27906: PROPOSED] Binary-only NMU's



> I almost hate to suggest this, as it has the potential for much
> evilness, but would it be possible to somehow mark diffs as specific
> to some arch only?
[...]

Having slept a night over the issue :-), I had a similar idea.

If Ian says the patch must be available also on the FTP site, not
(only) in the BTS, why not it put there in some way? My idea just
wasn't coupled to architectures, more to versions. I see several
possibilities:

 - For each NMU, there's an additional patch file in the source
   directory, e.g. foo_1.0-1.0.1.nmu that is PGP signed by the creator
   and contians the patch for the bin-only NMU. foo's files could then
   look like:

      source/bar/foo_1.0.orig.tar.gz
      source/bar/foo_1.0-1.diff.gz
      source/bar/foo_1.0-1.dsc
      source/bar/foo_1.0-1.0.1.nmu
      binary-baz/bar/foo_1.0-1.deb
      binary-mum/bar/foo_1.0-1.0.1.deb

   Since .nmu files aren't .dsc files, they constitute no real new
   source version, thus they don't force other archs to recompile the
   package, too. But the patch is publically available.

   I guess dinstall would have to be modified a bit to install .nmu
   files, but I think this can't be very hard. And we'd need new
   option to dpkg-genchanges, for example --nmu-path=FILE, that
   PGP-signs the patch file, renames it and generates an entry in
   Files: for it.

 - The other possibility is to include the patch in the binary package
   somehow, either in the control.tar.gz (not that easy to access...)
   or under /usr/doc/PACKAGE in the data.tar.gz. But that would mean a
   modification to dpkg-deb --build so that it can include the file
   more or less automatically. Also, it's somewhat harder to pass
   additional options to dpkg-deb --build, because it's args are
   hardwired in debian/rules. Either we pass the info in an
   environment variable, or dpkg-deb looks for specially named files
   itself (e.g. ../nmu-patch*.diff{,.gz}).

> Unfortunately, this would require a reworking of several things,
> including ideally a specialized "porters' dpkg-buildpackage".

It needs no special version for porters, just a new version with a new
option.

Roman


Reply to: