Repository: spack/spack

Issue:
Installation issue: qhull connection reset by peer
### Steps to reproduce the issue

I have been having problems on multiple efforts to build packages that depend on `qhull` due to connection reset errors.  This happens when testing PRs, CI/CD builds, etc.

```
$ spack stage qhull@2020.1
==> Error: [Errno 104] Connection reset by peer
$ spack install hull
[+] /usr/tce (external cmake-3.14.5-737baq75naeykhfj3irx4364ztlv46fd)
==> Installing qhull-2020.1-5mb6jxaf2uxen7nx3s5pnyul2u724inn
==> No binary for qhull-2020.1-5mb6jxaf2uxen7nx3s5pnyul2u724inn found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/1a/1ac92a5538f61e297c72aebe4d4ffd731ceb3e6045d6d15faf1c212713798df4.tgz
==> Error: ConnectionResetError: [Errno 104] Connection reset by peer

/usr/WS1/dahlgren/releases/spack/lib/spack/spack/package.py:1376, in do_fetch:
       1373
       1374        self.stage.create()
       1375        err_msg = None if not self.manual_download else self.download_instr
  >>   1376        start_time = time.time()
       1377        self.stage.fetch(mirror_only, err_msg=err_msg)
       1378        self._fetch_time = time.time() - start_time
       1379


15.163u 1.047s 0:21.36 75.8%	0+0k 168+80io 0pf+0w
```

### Information on your system

* **Spack:** 0.16.3-4365-c80614254d
* **Python:** 3.7.2
* **Platform:** linux-rhel7-cascadelake
* **Concretizer:** clingo

### Additional information

The files are not produced.

### General information

- [X] I have run `spack debug report` and reported the version of Spack/Python/Platform
- [X] I have run `spack maintainers <name-of-the-package>` and **@mentioned** any maintainers
- [X] I have uploaded the build log and environment files
- [X] I have searched the issues of this repo and believe this is not a duplicate


Discussion:

Resolving patch:
diff --git a/var/spack/repos/builtin/packages/qhull/package.py b/var/spack/repos/builtin/packages/qhull/package.py
--- a/var/spack/repos/builtin/packages/qhull/package.py
+++ b/var/spack/repos/builtin/packages/qhull/package.py
@@ -17,15 +17,12 @@ class Qhull(CMakePackage):
        approximations to the convex hull."""
 
     homepage = "http://www.qhull.org"
+    url = "https://github.com/qhull/qhull/archive/refs/tags/2020.2.tar.gz"
 
-    version('2020.1', sha256='1ac92a5538f61e297c72aebe4d4ffd731ceb3e6045d6d15faf1c212713798df4',
-            url="http://www.qhull.org/download/qhull-2020-src-8.0.0.tgz")
-    version('2019.1', sha256='2b7990558c363076261564f61b74db4d0d73b71869755108a469038c07dc43fb',
-            url="http://www.qhull.org/download/qhull-2019-src-7.3.2.tgz")
-    version('2015.2', sha256='78b010925c3b577adc3d58278787d7df08f7c8fb02c3490e375eab91bb58a436',
-            url="http://www.qhull.org/download/qhull-2015-src-7.2.0.tgz")
-    version('2012.1', sha256='a35ecaa610550b7f05c3ce373d89c30cf74b059a69880f03080c556daebcff88',
-            url="http://www.qhull.org/download/qhull-2012.1-src.tgz")
+    version('2020.1', sha256='0258bbf5de447e3d6b3968c5a7b51c08ca5d98f11f94f86621ed3e7c98365b8d')
+    version('2019.1', sha256='cf7235b76244595a86b9407b906e3259502b744528318f2178155e5899d6cf9f')
+    version('2015.2', sha256='8b6dd67ff77ce1ee814da84f4134ef4bdce1f1031e570b8d83019ccef58b1c00')
+    version('2012.1', sha256='cb1296fbb9ec8b7d6e8f4c239ad165590616f242c7c46f790c27d8dcebe96c6a')
 
     patch('qhull-unused-intel-17.02.patch', when='@2015.2')
 


Test patch: