Repository: bitcoin/bitcoin (language: cpp)

Issue:
guix: prune Rust toolchain boostrap from Darwin HOSTS
We once-again have a Rust toolchain bootstrap as part of our Darwin Guix builds. While not necessarily bad, this consumes a fairly significant amount of additional time / resources when bootstrapping, and may make it harder to bootstrap on some platforms. It's probably inevitable that we'll have to bootstrap a Rust toolchain in future (for all HOSTS) whenever Rust becomes a dependency of a more core utility or library, but for now, if it's easy to do, we could prune it out.

The chain to Rust is:

`python-signapple -> python-requests -> python-urllib3 -> python-cryptography -> python-cryptography-rust`.

The easiest solution here might just be to change signapple to not use `python-requests` for it's timestamping POST:

https://github.com/achow101/signapple/blob/48ba6fe3f92ca9e035c5056126524aaea4bfacb0/signapple/sign.py#L267

and use the Python standard library: https://docs.python.org/3/library/urllib.request.html#module-urllib.request instead.


Discussion / hints:

Fix patch:
diff --git a/contrib/guix/manifest.scm b/contrib/guix/manifest.scm
index 3c4ad6cdbc9fc..12f57fcc4526b 100644
--- a/contrib/guix/manifest.scm
+++ b/contrib/guix/manifest.scm
@@ -19,7 +19,6 @@
              ((gnu packages python) #:select (python-minimal))
              ((gnu packages python-build) #:select (python-tomli))
              ((gnu packages python-crypto) #:select (python-asn1crypto))
-             ((gnu packages python-web) #:select (python-requests))
              ((gnu packages tls) #:select (openssl))
              ((gnu packages version-control) #:select (git-minimal))
              (guix build-system cmake)
@@ -445,7 +444,7 @@ and endian independent.")
     (license license:expat)))
 
 (define-public python-signapple
-  (let ((commit "8a945a2e7583be2665cf3a6a89d665b70ecd1ab6"))
+  (let ((commit "7a96b4171a360abf0f0f56e499f8f9ed2116280d"))
     (package
       (name "python-signapple")
       (version (git-version "0.1" "1" commit))
@@ -458,14 +457,13 @@ and endian independent.")
          (file-name (git-file-name name commit))
          (sha256
           (base32
-           "0fr1hangvfyiwflca6jg5g8zvg3jc9qr7vd2c12ff89pznf38dlg"))))
+           "0aa4k180jnpal15yhncnm3g3z9gzmi7qb25q5l0kaj444a1p2pm4"))))
       (build-system python-build-system)
       (propagated-inputs
        `(("python-asn1crypto" ,python-asn1crypto)
          ("python-oscrypto" ,python-oscrypto)
          ("python-certvalidator" ,python-certvalidator)
          ("python-elfesteem" ,python-elfesteem)
-         ("python-requests" ,python-requests)
          ("python-macholib" ,python-macholib)))
       ;; There are no tests, but attempting to run python setup.py test leads to
       ;; problems, just disable the test


Test patch: