Subject: Simplify comparing guix challenge results
From: Vagrant Cascadian <[email-masked]>
To: [email-masked]
Date: Tue, 07 May 2019 11:02:05 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

I'd like to see a simpler process for comparing challenge results
producing differences.

While the manual documents how to compare a failing challenge result

  $ wget -q -O - https://ci.guix.info/nar/…-git-2.5.0 \
     | guix archive -x /tmp/git
  $ diff -ur --no-dereference /gnu/store/…-git.2.5.0 /tmp/git

To check "git", you need to run "guix challenge git" and if the results
are inconclusive, manually cut-and-paste the correct URL(s) from the
challenge output and manually download it and unpack with guix archive,
and then run a comparison utility...

What about an argument to "guix challenge" that handles the downloading
and unpacking to a temporary directory, and possibly another that also
runs a comparison tool against the results. Maybe something like:

  $ guix challenge --download-differences
  /tmp/git-XXXXX/SUBSTITTE-X/...-git-2.5.0
  /tmp/git-XXXXX/SUBSTITUTE-Y/...-git-2.5.0
  /gnu/store/...-git-2.5.0

Downloads and unpacks the substitutes, and outputs the resulting
directories.

  $ guix challenge --download-differences --compare-with="diffoscope ..."

This would do the above, plus run diffoscope on the directories
... though I think diffoscope can only compare between two things at a
time... so that might get difficult if many substitutes return results.

live well,
  vagrant