Development discussion of WireGuard
 help / color / mirror / Atom feed
From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
To: "Jason A. Donenfeld" <Jason@zx2c4.com>
Cc: WireGuard mailing list <wireguard@lists.zx2c4.com>
Subject: Re: curve25519_generate.js [was: Re: [ANNOUNCE] WireGuard Snapshot `0.0.20171211` Available]
Date: Mon, 11 Dec 2017 16:28:11 -0500	[thread overview]
Message-ID: <87h8sxvtsk.fsf@fifthhorseman.net> (raw)
In-Reply-To: <CAHmME9r8qyXY-h3fw=JBee_mwD3Xe9frUCOTrf05eumrkN+d=g@mail.gmail.com>

Hi Jason--

On Mon 2017-12-11 21:15:16 +0100, Jason A. Donenfeld wrote:
> - emscripten is laborious to build and recent versions are not readily
> accessible on many distros.
> - I figure web developers generally lack build system competence and
> would be more inclined to use this if it was as easy as copy and
> paste.
> - Signal includes the generated .js file in their repos.

these are all true statements, i'm just not sure that they argue in the
direction of the current state of the repository :)

> It would indeed be much cleaner to include a Makefile, like you
> suggest, which would take care of all the appropriate magic, but I
> worry about that being overwhelmingly inconvenient for some. Is that
> actually a good reason? I don't know...
>
>  > * Do you expect packagers do rebuild this with whatever version of
>  >  emscripten available to them?  Or should that be left up to the party
>  >  who makes use of the key-generator?
>
> Certainly don't bother rebuilding it. contrib/examples has tons of
> source code (most of which has proper makefiles!), which similarly
> shouldn't be built, since it's example code meant to be tweaked.

If we can't build it from the preferred form of modification in debian,
then we shouldn't be shipping it.  People *definitely* aren't going to
be tweaking the .js (other than the SPDX changes, which did appear to
happen by hand).

>>   In debian, i can't reasonably ship a binary artifact that i can't
>>   build from source (this is sensible debian policy
>
> This is sensible policy. There is a question that people could
> bikeshed about all day: "Is emscripten output a binary artifact?"
> Probably the existing Debian policy answer to that is a sufficient
> one, if that kind of thing has already been decided.

i think debian as a whole has answered that one pretty clearly (despite
some intermittent bickering).  Minimized or generated javascript is a
binary artifact, and is clearly not the "preferred form of
modification".  It's much more similar to java bytecode than it is to
source code, when it comes to manipulability and comprehension.

> So anyway, I'm not really sure what to do here. Happy to take
> suggestions from all sides. Just keep in mind that emcc is a massive
> pain to get installed.

agreed, but given that the introduction to this project is "don't use
this if you don't know what you're doing, and you've thought about all
the tradeoffs", i'm inclined to say having a "massive pain" hurdle that
keeps people from using it without really meaning to.  This patch will
also (as a happy byproduct) help me keep the debian packaging free from
un-buildable binary artifacts :)

I'll send a patch to the list shortly with a simple proposal.

all the best,

     --dkg

  reply	other threads:[~2017-12-11 21:21 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-11  0:32 [ANNOUNCE] WireGuard Snapshot `0.0.20171211` Available Jason A. Donenfeld
2017-12-11 19:26 ` curve25519_generate.js [was: Re: [ANNOUNCE] WireGuard Snapshot `0.0.20171211` Available] Daniel Kahn Gillmor
2017-12-11 20:15   ` Jason A. Donenfeld
2017-12-11 21:28     ` Daniel Kahn Gillmor [this message]
2017-12-12  0:18       ` Jason A. Donenfeld
2017-12-12  0:20         ` Jason A. Donenfeld
2017-12-12  0:43         ` Daniel Kahn Gillmor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87h8sxvtsk.fsf@fifthhorseman.net \
    --to=dkg@fifthhorseman.net \
    --cc=Jason@zx2c4.com \
    --cc=wireguard@lists.zx2c4.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).