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

Re: Fw: PATCH: dpkg: Check for gzip --rsyncable


[ Although I saw your earlier direct mail to me, I wanted to get the
  current releases out of the door first. In any case sending to the
  mailing list is in general the right thing do to anyway, so thanks. :) ]

On Fri, 2016-11-11 at 11:02:40 +0100, Jeroen Roovers wrote:
> dpkg 1.18.11 includes a check for a Debian like environment in order to
> decide whether to pass --rsyncable to gzip. However, since gzip 1.7
> this option is included. This invalidates the entire comment in
> scripts/Dpkg/Compression.pm. Instead, we should infer --rsyncable
> support from gzip's usage output at run time. Patch attached.

Hah! Now that I sat down to fix this, which had annoyed me for so
long, it ends up being already implemented in GNU's gzip. :)

But in any case I don't think this entirely invalidates the comment
nor the code.

There are some problems with the proposed patch: it incurs a performance
degradation on any other module loading Dpkg::Compression regardless of
those ending up using gzip, when users are already complaining the perl
module loading is already too slow; I'm in general not a very big fan
of conditionalizing on --help output; and just requiring the option now
unconditionally and expecting a recent enough GNU gzip would not be
very enticing, as at least various (most) of the BSD gzip implementations
do not have --rsyncable support.

I could perhaps try to detect this at configure time (which seems
mildly wrong too), or just add Gentoo to the whiltelist if you can tell
me the value of $Config{cf_by} there? But then I'm not sure it's very
important to have rsyncable enabled on systems were dpkg is not the
native package manager?

BTW you are probably one of the fastest (if not *the* fastest)
downstreams to package dpkg releases, thanks! :)

I also noticed few other things in the Gentoo ebuild, that you might
want to fix:

 * TimeDate and DateTime perl modules are not used anymore.
 * flex is not used anymore.
 * I'm not sure if perl-5.6.0 is an actual package version or the way
   you name your perl, but just in case dpkg now requires perl >= 5.14.2.
 * There's no more triplettable anymore, but I'm interested to know
   what's the problem with mips that sed is trying to fix? It was not
   entirely clear from the comment in the ebuild.
 * What's the problem with get-version?
 * You can disable the compiler and linker optimizations with
   configure flags (--disable-compiler-optimizations,
   --disable-linker-optimizations), no need to patch the source.
 * If the problem with dpkg_buildpackage.t was fakeroot, this is fixed
   now (found on Mac OS X), otherwise I'd like to know what's wrong and
   fix it. :)
 * dpkg-1.18.9-strerror.patch should not be needed anymore.


Reply to: