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

Bug#790125: RFS: dropbear/2015.67-1.1 NMU



Hi Helmut,

On Thu, 30 Jul 2015 at 22:21:21 +0200, Helmut Grohne wrote:
> Thanks for your work on dropbear. Much appreciated.

And thanks for the extensive feedback!  I know it's quite a heavy
changelog, so I didn't really expect anyone other than Gerrit perhaps to
check it out that closely.

> On Sat, Jul 11, 2015 at 03:20:52PM +0200, Guilhem Moulin wrote:
>> Note that while the current maintainer (Gerrit, CC'ed) told me to go
>> ahead and proceed with a NMU, they are not able to sponsor me at the
>> moment.  Furthermore I'm currently a DM and would be open to
>> co-maintenance once time is ripe.
> 
> My reading of Gerrit's mail is a bit more limited. He wrote to d-devel:
> | Unfortunately I cannot support you, but don't hesitate to NMU the
> | dropbear package to be able to proceed.
> 
> May be this is hair-splitting, but I'd read this as NMUing specifically
> for the purpose of splitting out the initramfs stuff (and then moving it
> to a different source package). I'd not assume that doing a new upstream
> release is covered by the above. Maybe Gerrit can clarify that or we can
> go via a delayed queue.

Yeah true, I might have taken too much liberty here.  I noticed upstream
was already two releases ahead so I wildly pulled in the new tarball :-/
(plus it fixed #775222 ;-)  Then I couldn't split the package without
doing major refactoring (which thanks to debhelper automatically solved
#689618, #692932, #777324, #793006, #793917).  And later I guess I got
carried away with enthusiasm on the way and decided to try to fix the
remaining bugs (some of them were quite old, and most fixes were rather
easy; at least the one relevant to the initramfs feature, which didn't
seem to be maintained anymore, and which bothered me personally since I
use this feature myself) :-P

> Despite me having lots of comments, your changes are actually of high
> quality. Don't get scared! Some comments are picky/matter of taste. Feel
> free to disagree.

No worries.  Constructive criticism never hurts anyway ;-)

> Since you bump the upstream release your NMU version should be -0.1
> instead of -1.1.

Thanks, fixed.

> I note that the new tilde expansion functionality in the upstream
> release is a bit strange. If my own home is "/home/helmut", it will
> expand "~/foo" to "/home/helmut//foo" (note the double slash). Worse, it
> will expand expand "~otheruser/foo" to "/home/helmut/otheruser/foo",
> which does not match the general expectation of tilde expansion.

Well spotted.  I guess one ought to file a bug.

> Gerrit asked for the binaries to be located in "dropbear", but you place
> them in "dropbear-bin". Maybe Gerrit can also ack this? (It was stated
> as a preference.)

In fact in a later mail in the d-d thread Gerrit agreed to make
“dropbear” a transitional package and place binaries to “dropbear-bin”,
as suggested to me by Adam Borowski:

    https://lists.debian.org/debian-devel/2015/06/msg00290.html
 
> Since dropbear-initramfs relies on initramfs-tools 0.94 features, the
> dependency should be versioned.

Thanks, fixed.  (Didn't think it mattered since even oldoldstable has
said feature.)

> If you disable password logins by default, please mention in a NEWS
> entry!

It was never enabled in the initramfs (disabling it without notice would
have been foolish otherwise, indeed).  The change I made (initramfs-only
only) is to no longer make the server *advertise* it, so that clients
won't prompt for a password and try to send it to the server (which is
bound to reject it anyway).  Sorry for the confusion.
 
> Would it make sense to install the NEWS file to the transitional package
> only? (i.e. mv debian/NEWS debian/dropbear.NEWS)

Yes it would!  Fixed, thanks for the suggestion.
 
> It might be safer in the future if dropbear-{initramfs,run} use a (=
> ${binary:Version}) dependency on dropbear-bin. Will you remember to bump
> such a dependency when dropbear-run starts to use a new option? (But
> --link-doc incurs this dependency anyway.)

You mean if upstream starts deprecate options used in
dropbear-{initramfs,run}?  Which by the way seems to happen right now
with ‘-d’ with is now an alias for ‘-r’ but has been removed from the
manpage, see #761143.  (And now I realize I could have written a note
regarding s/-d/-r/ in the NEWS regarding that change :-/)

Yeah that makes sense, I tightened the dependency by specifying the
${binary:Version}.

> Please consider whether Multi-Arch:foreign markings are appropriate for
> some packages.

Alright, this one is new to me.  I'm not sure how blindly I can follow

    https://wiki.debian.org/Multiarch/Implementation#dh.281.29_and_autotools

because dropbear-bin ships an executable ‘/usr/lib/dropbear/dropbearconvert’.
So checked the package source for openssh and found that openssh-server
uses Multi-Arch:foreign, but openssh-sftp-server, which ships
‘/usr/lib/openssh/sftp-server’, doesn't.  So all in all I'm unsure what
to in my case.

> Why are dropbear-{initramfs,run} marked as Architecture:any? Do they
> contain any architecture specific files? Is that an artifact of
> --link-doc only? Maybe reconsider whether --link-doc is worth
> duplicating these packages for each architecture.

Yes, it's to make dh_installdocs happy, and avoid it spitting

    WARNING: --link-doc between architecture all and not all packages breaks binNMUs

What are you suggesting as an alternative?
 
> I think it is an unfortunate choice to license the initramfs unlock
> stuff under GPL when the rest of the package is MIT. That's your choice
> of course. The mixing of GPL-2+ and GPL-3+ doesn't make things better.

Well I'd agree it doesn't hurt either (beside making the copyright file
longer) :-P.  Anyway the original author of the initramfs feature chose
GPL-2+ back in 2008, so I picked the same license when working on the
same file.

> Your GPL license paragraphs should include the actual license grant, not
> just the reference to the GPL. (I think this point would be sufficient
> for a ftp-master rejection. This incurs the moreinfo tag.)

Oops.  I believe I started doing that quite a while ago  when I learned
packaging by example.  I think took that one from git-annex

    http://source.git-annex.branchable.com/?p=source.git;a=blob;f=debian/copyright

That said I'm happy to learn more and I have added the header already.
 
> dropbear-initramfs.postinst exits before running #DEBHELPER# unless $1
> is "configure". #DEBHELPER# should be run unconditionally.

Good catch, thanks.

> In dropbear-initramfs.postinst, when ssh-keygen is unavailable, the
> creation of the $pubkey could be avoided.

This one is really nitpicking IMHO :-P  Fixed anyway.

> Some of those comments also apply to dropbear-run.postinst.

Fixed.
 
> It should not be necessary to pass --host to dh_auto_configure, as it
> does that automatically for cross builds only.

Didn't know that.  Fixed, thanks.
 
> You pass CFLAGS to dh_auto_configure. Why do you not pass CPPFLAGS or
> LDFLAGS to configure? Both typically enable further hardening features.

No I *extend* CFLAGS with -DSFTPSERVER_PATH='"/usr/lib/sftp-server"'.
Aren't CPPFLAGS and LDFLAGS passed as is already?  The build log seems
to suggests it at least.
 
> In general, I'd find sponsoring this NMU much easier if the package
> split and the fixing of those many bugs could happen in separate
> uploads. Each part is complex and the fallout is hard to estimate. I
> understand that such a separation would mean more work for you. Do you
> think that doing this in two steps is worth the added effort?

Actually I spitted the package after merging the new upstream version
(which is easily revertible anyway), but *before* starting fixing bugs
in the BTS, so maybe it wouldn't be that hard to perform the upload in
two steps.

    https://gitweb.guilhem.org/dropbear

That said, while I understand the heavy changelog is frown upon by
potential sponsors, I have to say I would find it quite frustrating if
my work on this package, including the fixes to the many bugs regarding
dropbear-initramfs (which I heavily rely on in my own infrastructure),
wasn't eventually uploaded :-P

However any step in the right direction is good to take IMHO :-)  So
thanks again for your feedback and interest!
-- 
Guilhem.

Attachment: signature.asc
Description: Digital signature


Reply to: