Subject: [PATCH] Re: bug#28951: The upstream URL of our Synergy package is broken

From: Maxim Cournoyer <[email-masked]>
Date: Thu, 26 Oct 2017 08:22:33 -0400

Hello Ludovic!

[email-masked] (Ludovic Courtès) writes:

> Maxim Cournoyer <[email-masked]> skribis:
>
>> Hello, here's what attempting to fetch the source URL gives us:
>>
>> Starting download of /tmp/fileLHAs7Q/upstream-synergy-1.8.8.tar.gz
>> From https://github.com/symless/synergy/archive/v1.8.8-stable.tar.gz...
>> ERROR: download failed "https://github.com/symless/synergy/archive/v1.8.8-stable.tar.gz" 404 "Not Found"
>> failed to download "/tmp/fileLHAs7Q/upstream-synergy-1.8.8.tar.gz" from
>> "https://github.com/symless/synergy/archive/v1.8.8-stable.tar.gz"
>
> Fortunately we get a copy from the mirror:
>
> $ guix build -S synergy  --no-substitutes
> La jenaj derivoj estos konstruataj:
>    /gnu/store/l9ya3x5xa8ii4xrhcx0zyhcr5759qpk2-synergy-1.8.8.tar.xz.drv
>    /gnu/store/jssil3viszqr1m9ddj7j2mszrgk7hcpd-synergy-1.8.8.tar.gz.drv
> @ build-started /gnu/store/jssil3viszqr1m9ddj7j2mszrgk7hcpd-synergy-1.8.8.tar.gz.drv - x86_64-linux /var/log/guix/drvs/js//sil3viszqr1m9ddj7j2mszrgk7hcpd-synergy-1.8.8.tar.gz.drv.bz2
>
> Starting download of /gnu/store/fzqf9apmladp4vg4vrvvnvb7gnrm4wry-synergy-1.8.8.tar.gz
> From https://github.com/symless/synergy/archive/v1.8.8-stable.tar.gz...
> ERROR: download failed "https://github.com/symless/synergy/archive/v1.8.8-stable.tar.gz" 404 "Not Found"
>
> Starting download of /gnu/store/fzqf9apmladp4vg4vrvvnvb7gnrm4wry-synergy-1.8.8.tar.gz
> From http://mirror.hydra.gnu.org/file/synergy-1.8.8.tar.gz/sha256/16vxbly4a33c63da3kmj7j47cam583l7bip33jc43mw173wqihw5...
>  ...m583l7bip33jc43mw173wqihw5  12.9MiB 873KiB/s 00:15 [####################] 100.0%
> @ build-succeeded /gnu/store/jssil3viszqr1m9ddj7j2mszrgk7hcpd-synergy-1.8.8.tar.gz.drv -
>
>> It seems the repo was reorganized; potentially we should now use
>> https://github.com/symless/synergy-core instead of
>> https://github.com/symless/synergy.
>
> That will also change the tarball hash.  Could you post a patch?
>
> Thanks for the report!
>
> Ludo’.

Patch attached. Transcript of my investigation below, as a proof that
due diligence was done in updating the hash. I reused the (fiasco
finder) script:

--8<---------------cut here---------------start------------->8---
[manually changed package's URI to then the one]

synergy verifying package hash...

Starting download of /tmp/file9IHVag/upstream-synergy-1.8.8.tar.gz
>From https://github.com/symless/synergy-core/archive/v1.8.8-stable.tar.gz...
following redirection to `https://codeload.github.com/symless/synergy-core/tar.gz/v1.8.8-stable'...
 …-stable  12.9MiB                  1.7MiB/s 00:07 [####################] 100.0%

Starting download of /tmp/file9IHVag/substitute-synergy-1.8.8.tar.gz
>From https://berlin.guixsd.org/file/synergy-1.8.8.tar.gz/sha256/16vxbly4a33c63da3kmj7j47cam583l7bip33jc43mw173wqihw5...
 …m583l7bip33jc43mw173wqihw5  12.9MiB 1.7MiB/s 00:07 [####################] 100.0%
Diff saved to /home/maxim/src/guile-hacks/fiasco/tar-diffs/upstream-synergy-1.8.8.tar.gz-substitute-synergy-1.8.8.tar.gz.diff:
Only in /tmp/filetUzluo/archive2: synergy-1.8.8-stable
Only in /tmp/filetUzluo/archive1: synergy-core-1.8.8-stable

synergy Guix hash:     "16vxbly4a33c63da3kmj7j47cam583l7bip33jc43mw173wqihw5"
synergy upstream hash: "052z1yiwck9hlshf8in2dgz6p7jxmq9yfj32mfzjaygpz6mmmr4y"
synergy hash NOK
synergy requires manual verification
The following packages require manual verification:
lxqt-common version 0.9.1
synergy version 1.8.8

Attempting to repair the hashes of 0 packages...
maxim@apteryx ~/src/guile-hacks/fiasco$ diff -ru /tmp/filetUzluo/archive2 /tmp/filetUzluo/archive1
Only in /tmp/filetUzluo/archive2: synergy-1.8.8-stable
Only in /tmp/filetUzluo/archive1: synergy-core-1.8.8-stable
maxim@apteryx ~/src/guile-hacks/fiasco$ mv /tmp/filetUzluo/archive2/synergy-1.8.8-stable/ /tmp/filetUzluo/archive2/synergy-core-1.8.8-stable/
maxim@apteryx ~/src/guile-hacks/fiasco$ diff -ru
/tmp/filetUzluo/archive2 /tmp/filetUzluo/archive1
--8<---------------cut here---------------end--------------->8---

Maxim
>From 69b6fb09ba7d40a94b6b0fe34677030e3590069e Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <[email-masked]>
Date: Thu, 26 Oct 2017 08:11:38 -0400
Subject: [PATCH] gnu: synergy: Update repository URI and hash.

* gnu/packages/synergy.scm (synergy)[uri]: Replace synergy by synergy-core.
[sha256]: Update to reflect the name change of the archive root directory.
---
 gnu/packages/synergy.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/synergy.scm b/gnu/packages/synergy.scm
index 79f7ca081..310a0f619 100644
--- a/gnu/packages/synergy.scm
+++ b/gnu/packages/synergy.scm
@@ -38,12 +38,12 @@
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "https://github.com/symless/synergy/archive/"
+      (uri (string-append "https://github.com/symless/synergy-core/archive/"
                           "v" version "-stable.tar.gz"))
       (file-name (string-append name "-" version ".tar.gz"))
       (sha256
        (base32
-        "16vxbly4a33c63da3kmj7j47cam583l7bip33jc43mw173wqihw5"))
+        "052z1yiwck9hlshf8in2dgz6p7jxmq9yfj32mfzjaygpz6mmmr4y"))
       (modules '((guix build utils)))
       (snippet
        ;; Remove ~14MB of unnecessary bundled source and binaries
-- 
2.14.1