GNU bug report logs - #43929
gnu: Add pijul.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: John Soo <jsoo1@HIDDEN>; Keywords: patch; dated Sun, 11 Oct 2020 16:59:01 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.
Added tag(s) patch. Request was from zimoun <zimon.toutoune@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 16 Feb 2021 09:31:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 16 04:31:55 2021
Received: from localhost ([127.0.0.1]:39383 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1lBwi3-0007Pl-CZ
	for submit <at> debbugs.gnu.org; Tue, 16 Feb 2021 04:31:55 -0500
Received: from relay1-d.mail.gandi.net ([217.70.183.193]:58349)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mail@HIDDEN>) id 1lBwi0-0007PX-1J
 for 43929 <at> debbugs.gnu.org; Tue, 16 Feb 2021 04:31:53 -0500
X-Originating-IP: 185.131.40.67
Received: from localhost (40-67.ipv4.commingeshautdebit.fr [185.131.40.67])
 (Authenticated sender: admin@HIDDEN)
 by relay1-d.mail.gandi.net (Postfix) with ESMTPSA id 9442F24000B;
 Tue, 16 Feb 2021 09:31:42 +0000 (UTC)
From: Nicolas Goaziou <mail@HIDDEN>
To: John Soo <jsoo1@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
 <864kme2w8g.fsf@HIDDEN>
 <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN>
 <87a6vvvkxq.fsf@HIDDEN> <878saptpbd.fsf@HIDDEN>
 <875z2tdlfh.fsf_-_@HIDDEN>
Date: Tue, 16 Feb 2021 10:31:41 +0100
In-Reply-To: <875z2tdlfh.fsf_-_@HIDDEN> (John Soo's message of "Mon, 15 Feb
 2021 14:18:42 -0800")
Message-ID: <87mtw4gxz6.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 43929
Cc: Julien Lepiller <julien@HIDDEN>, 43929 <43929 <at> debbugs.gnu.org>,
 Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 zimoun <zimon.toutoune@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Hello,

John Soo <jsoo1@HIDDEN> writes:

Thank you. I'm adding my grain of salt, if you don't mind!

> +(define-public rust-trust-dns-rustls-0.6
> +  (package
> +    (inherit rust-trust-dns-rustls-0.7)
> +    (name "rust-trust-dns-rustls")

AFAICT, rust-trust-dns-rustls-0.6 already inherits from 0.19, so it is
not strictly necessary to change this inheritance.

> +(define-public rust-yasna-0.1
> +  (package
> +    (name "rust-yasna")
> +    (version "0.1.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "yasna" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1frcd79rzi6dlly7lldjn2avnhfmj6yxrjsgvb2p1k2zbxdzyc9s"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-bit-vec" ,rust-bit-vec-0.4)
> +        ("rust-chrono" ,rust-chrono-0.4)
> +        ("rust-num" ,rust-num-0.1)
> +        ("rust-num-bigint" ,rust-num-bigint-0.1))
> +       #:cargo-development-inputs
> +       (("rust-num-traits" ,rust-num-traits-0.2))))

This should have #:skip-build #t as any non-leaf package.

> +(define-public rust-thrussh-keys-0.11

[...]

> +        ("rust-thrussh-libsodium"
> +         ,rust-thrussh-libsodium-0.1)

Nitpick: indentation.

> +        ("rust-tokio" ,rust-tokio-0.1)
> +        ("rust-yasna" ,rust-yasna-0.1))
> +       #:cargo-development-inputs
> +       (("rust-env-logger" ,rust-env-logger-0.6)
> +        ("rust-tempdir" ,rust-tempdir-0.3)
> +        ("rust-tokio-uds" ,rust-tokio-uds-0.2))))

See above about #:skip-build?

> +    (home-page "https://pijul.org/thrussh")
> +    (synopsis
> +     "Deal with SSH keys in Rust")
> +    (description
> +     "This package provides a rust library to deal with SSH keys.

Nitpick: rust -> Rust

> +        ("rust-thrussh-libsodium"
> +         ,rust-thrussh-libsodium-0.1)

Indentation nitpick and #skip-build again :)

I will not repeat those in the rest of the message.

> +    (synopsis
> +     "Contains function definitions for the Windows API library advapi32")

s/Contains //

> +    (description
> +     "Contains function definitions for the Windows API library advapi32.
> +The winapi crate's types and constants has more details about this
> API.")

The description needs to be a complete sentence.

> +    (synopsis
> +     "Portably retrieve the username of the user running the current thread")

s/Portably //

> +    (description
> +     "Portably retrieve the user name (and possibly other information in
> +future versions) of the user running the current thread.")

Could you write it as a full sentence?

> +(define-public rust-spmc-0.2
> +  (package
> +    (inherit rust-spmc-0.3)
> +    (name "rust-spmc")
> +    (version "0.2.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "spmc" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32 "1nhbjc65avbb4nffk6b49spbv7rsmmnrppj2qnx39mhwi57spgiw"))))
> +    (arguments
> +     `(#:tests? #f ;; tests hang
> +       #:cargo-development-inputs
> +       (("rust-loom" ,rust-loom-0.2))))
> +    ;; This package is broken before 0.3
> +    ;; Only included for pijul@1
> +    (properties `((hidden? . #t)))))

I suggest to not bother and use #:skip-build?

> +(define-public rust-tokio-tls-0.1
> +  (package
> +    (inherit rust-tokio-tls-0.3)
> +    (version "0.1.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-tls" version))
> +       (file-name
> +        (string-append
> +         (package-name rust-tokio-tls-0.3) "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "04yrdscn8m9qza8ms09pqipbmj6x2q64jgm5n3ipy4b0wl24nbvp"))))
> +    (arguments
> +     `(#:skip-build? #t
> +       #:cargo-inputs
> +       (("rust-futures" ,rust-futures-0.1)
> +        ("rust-native-tls" ,rust-native-tls-0.1)
> +        ("rust-tokio-core" ,rust-tokio-core-0.1)
> +        ("rust-tokio-io" ,rust-tokio-io-0.1)
> +        ("rust-tokio-proto" ,rust-tokio-proto-0.1))
> +       #:cargo-development-inputs
> +       (("rust-cfg-if" ,rust-cfg-if-0.1)
> +        ("rust-env-logger" ,rust-env-logger-0.4)
> +        ("rust-hyper" ,rust-hyper-0.11)
> +        ("rust-openssl" ,rust-openssl-0.9)
> +        ("rust-schannel" ,rust-schannel-0.1)
> +        ("rust-security-framework"
> +         ,rust-security-framework-0.1)
> +        ("rust-tokio-service" ,rust-tokio-service-0.1)
> +        ("rust-winapi" ,rust-winapi-0.3))))))

Since you use skip-build?, development inputs are not necessary.

> +(define-public pijul
> +  (package
> +    (name "pijul")
> +    (version "0.12.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "pijul" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "12aqpfd2si70qbvfnn9kvznxyd5g5gsb1kk1q52wm077cd03yapr"))))
> +    (build-system cargo-build-system)
> +    (inputs
> +     `(("clang" ,clang)
> +       ("libressl" ,libressl)
> +       ("libsodium" ,libsodium)
> +       ("nettle" ,nettle)
> +       ("pkg-config" ,pkg-config)))

Shouldn't pgk-config and clang be native-inputs instead?

Regards,
-- 
Nicolas Goaziou




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 15 Feb 2021 22:18:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 15 17:18:55 2021
Received: from localhost ([127.0.0.1]:38866 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1lBmCk-0007LH-Dq
	for submit <at> debbugs.gnu.org; Mon, 15 Feb 2021 17:18:55 -0500
Received: from mail-pl1-f172.google.com ([209.85.214.172]:36635)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jsoo1@HIDDEN>) id 1lBmCh-0007Kx-EU
 for 43929 <at> debbugs.gnu.org; Mon, 15 Feb 2021 17:18:53 -0500
Received: by mail-pl1-f172.google.com with SMTP id e9so4450960plh.3
 for <43929 <at> debbugs.gnu.org>; Mon, 15 Feb 2021 14:18:51 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=asu-edu.20150623.gappssmtp.com; s=20150623;
 h=from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version;
 bh=nOavghWn03PEdbX5YxTQBjkCN3x5lCkc3zZkxK9xKQA=;
 b=MF+vzGy21zDl3ZAR2Fu6SoPLXhFkZt9K+ClCtnhHxWQVKehUTAUnI9F+SH5LmBVL9C
 cpGdUvlEbTcKhGBwrTZ0mzp0fbcvYUQGRp1XaOEZXrxclamoKiwcKS+MDX6P6AKKE3Qt
 p1qLvVafNfbIP6QnDDmQunH5fth4jVQ2AFHFhEyuqU+sqshFIyW0VIba8zoZZU9WL6eV
 +5/iPvNH4czSyeUkHLEwHTOQfgyyVCqteGUsvCqo7ZBKuRgOhFTBrnAKs2n77c9FAqvv
 lLW+zei+JOdeFucD25pA8k8V2+p5V9fLuVQiJXpj/S8bi/rqOBABmksySWE2gj4XbvCR
 9CNw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to
 :message-id:user-agent:mime-version;
 bh=nOavghWn03PEdbX5YxTQBjkCN3x5lCkc3zZkxK9xKQA=;
 b=bdVVVHRAbzxtNYvWyLamXmGh9Kk2PV4RV0Ez0JMXynu5vSAgS3cTbZtITF8p+imY5v
 fjkrWOPmpD/76veI75Y7Sbenv8l776/aAU7KLXjngs1lNQsTCIuswTZ3Y1BI+JcNeS9N
 7pQvlCWe7DCPEvK0R4s65BsLZaguNjM3v4R1Y5oBuaCZpLPOSuQfC1l+28+mvLoJ6zHk
 eSRiGco5w4b0l8QgJNORoWN9zw/+YMPxHzhKyyJWPm9iAIbXDSETSUCo/7d2EPWh43Oi
 1X0KdyT4xT6qaUf7nEdLRGkg5c2VIbaJCpQLay20yGSMYrxNrh7TOdlWZHYKg7pNqfvf
 2cvw==
X-Gm-Message-State: AOAM532dPYk+ANpCPlE9sZViuT8ZxX/paIPrtGUlyNsLi6NacR0QU6XA
 Thaxh9hkn6yv6zBwmhiS7gVqDQ==
X-Google-Smtp-Source: ABdhPJw5Qkf+tciIdDG7nExjznLsdCiYBWkuyPWJHdJSxl12vTF7bXCuI0HcOPLUx971lVq8xMjyHA==
X-Received: by 2002:a17:90b:1808:: with SMTP id
 lw8mr935475pjb.42.1613427525399; 
 Mon, 15 Feb 2021 14:18:45 -0800 (PST)
Received: from ecenter
 (2603-8001-433f-08c9-0000-0000-0000-1ca6.res6.spectrum.com.
 [2603:8001:433f:8c9::1ca6])
 by smtp.gmail.com with ESMTPSA id s184sm19696653pfs.112.2021.02.15.14.18.43
 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256);
 Mon, 15 Feb 2021 14:18:44 -0800 (PST)
From: John Soo <jsoo1@HIDDEN>
To: Julien Lepiller <julien@HIDDEN>
Subject: Re: bug#43929: gnu: Add pijul.
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
 <864kme2w8g.fsf@HIDDEN>
 <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN>
 <87a6vvvkxq.fsf@HIDDEN> <878saptpbd.fsf@HIDDEN>
Date: Mon, 15 Feb 2021 14:18:42 -0800
In-Reply-To: <878saptpbd.fsf@HIDDEN> (John Soo's message of "Wed, 25 Nov 2020
 07:43:18 -0800")
Message-ID: <875z2tdlfh.fsf_-_@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 43929
Cc: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 43929 <43929 <at> debbugs.gnu.org>, zimoun <zimon.toutoune@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

Hello again,

I rebased these patches on master. Pijul definitely works.

Thanks!

John


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-gnu-Add-rust-trust-dns-rustls-0.7.patch

From 38f143338634c3ece44b2a327fcdbd1e5be1f005 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:32:40 -0700
Subject: [PATCH 01/14] gnu: Add rust-trust-dns-rustls-0.7.

* gnu/packages/crates-io.scm (rust-trust-dns-rustls-0.7): New variable.
* gnu/packages/crates-io.scm (rust-trust-dns-rustls-0.6): Inherit from rust-trust-dns-rustls-0.7.
---
 gnu/packages/crates-io.scm | 29 ++++++++++++++++++++++++++++-
 1 file changed, 28 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a5ea75a594..696da8f899 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -44179,10 +44179,37 @@ extension for the Trust-DNS client to use rustls for TLS.")
        #:cargo-development-inputs
        (("rust-openssl" ,rust-openssl-0.10))))))
 
-(define-public rust-trust-dns-rustls-0.6
+(define-public rust-trust-dns-rustls-0.7
   (package
     (inherit rust-trust-dns-rustls-0.19)
     (name "rust-trust-dns-rustls")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-rustls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0glpggq31764q7lp19h5l6implsr7ik015qkm5rg7pqwy93krsb3"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-rustls" ,rust-rustls-0.16)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.12)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19)
+        ("rust-webpki" ,rust-webpki-0.21))
+       #:cargo-development-inputs
+       (("rust-openssl" ,rust-openssl-0.10)
+        ("rust-tokio" ,rust-tokio-0.1))))))
+
+(define-public rust-trust-dns-rustls-0.6
+  (package
+    (inherit rust-trust-dns-rustls-0.7)
+    (name "rust-trust-dns-rustls")
     (version "0.6.4")
     (source
      (origin
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0002-gnu-Add-rust-yasna-0.1.patch

From 5b6224b7233542ea89ea7d3a4a0307ac33b97bff Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:14:33 -0700
Subject: [PATCH 02/14] gnu: Add rust-yasna-0.1.

* gnu/packages/crates-io.scm (rust-yasna-0.1): New variable.
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 696da8f899..3a55ccebd5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -47953,6 +47953,35 @@ Read/Write streams as well as low-level in-memory encoding and decoding.")
 library.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-yasna-0.1
+  (package
+    (name "rust-yasna")
+    (version "0.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "yasna" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1frcd79rzi6dlly7lldjn2avnhfmj6yxrjsgvb2p1k2zbxdzyc9s"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bit-vec" ,rust-bit-vec-0.4)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-num" ,rust-num-0.1)
+        ("rust-num-bigint" ,rust-num-bigint-0.1))
+       #:cargo-development-inputs
+       (("rust-num-traits" ,rust-num-traits-0.2))))
+    (home-page "https://github.com/qnighy/yasna.rs")
+    (synopsis "ASN.1 library for Rust")
+    (description
+     "To serialize ASN.1 data, you can use @code{construct_der}.
+To deserialize ASN.1 data, you can use parse_ber or @code{parse_der}."  )
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-zbase32-0.1
   (package
     (name "rust-zbase32")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0003-gnu-Add-rust-thrussh-keys-0.11.patch

From f29843e64dc6790b82c4ca3a23e3b1e36320531a Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:16:52 -0700
Subject: [PATCH 03/14] gnu: Add rust-thrussh-keys-0.11.

* gnu/packages/crates-io.scm (rust-thrussh-keys-0.11): New variable.
---
 gnu/packages/crates-io.scm | 45 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 3a55ccebd5..411984edfc 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -41101,6 +41101,51 @@ fixed set of worker threads.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-thrussh-keys-0.11
+  (package
+    (name "rust-thrussh-keys")
+    (version "0.11.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh-keys" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0rkhkkav9kv1q9lgxgydnrkniq4ccrf107lcygimralnkwyzjwjy"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bit-vec" ,rust-bit-vec-0.4)
+        ("rust-byteorder" ,rust-byteorder-1)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-dirs" ,rust-dirs-2)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-num-bigint" ,rust-num-bigint-0.1)
+        ("rust-num-integer" ,rust-num-integer-0.1)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-thrussh-libsodium"
+         ,rust-thrussh-libsodium-0.1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-yasna" ,rust-yasna-0.1))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-tempdir" ,rust-tempdir-0.3)
+        ("rust-tokio-uds" ,rust-tokio-uds-0.2))))
+    (home-page "https://pijul.org/thrussh")
+    (synopsis
+     "Deal with SSH keys in Rust")
+    (description
+     "This package provides a rust library to deal with SSH keys.
+With it you can load them, decrypt them, and call an SSH agent.")
+    (license license:asl2.0)))
+
 (define-public rust-thrussh-libsodium-0.1
   (package
     (name "rust-thrussh-libsodium")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0004-gnu-Add-rust-thrussh-0.21.patch

From 7f742f4badb2cb7927c02c0005a38614e83f08e2 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:18:13 -0700
Subject: [PATCH 04/14] gnu: Add rust-thrussh-0.21.

* gnu/packages/crates-io.scm (rust-thrussh-0.21): New variable.
---
 gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 411984edfc..9988a4c6e2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -41101,6 +41101,41 @@ fixed set of worker threads.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-thrussh-0.21
+  (package
+    (name "rust-thrussh")
+    (version "0.21.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0k8ah3kx8q6vnkq3hi78s8acxdcws6yck0x989xzx2wi89nqflhl"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-byteorder" ,rust-byteorder-1)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-thrussh-keys" ,rust-thrussh-keys-0.11)
+        ("rust-thrussh-libsodium"
+         ,rust-thrussh-libsodium-0.1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6))))
+    (home-page "https://pijul.org/thrussh")
+    (synopsis "Client and server SSH library in Rust")
+    (description
+     "This package provides a client and server SSH library.")
+    (license license:asl2.0)))
+
 (define-public rust-thrussh-keys-0.11
   (package
     (name "rust-thrussh-keys")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0005-gnu-Add-rust-thrussh-config-0.2.patch

From b8715723aa64d897ec8fda823a4a29b689448b46 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:19:52 -0700
Subject: [PATCH 05/14] gnu: Add rust-thrussh-config-0.2.

* gnu/packages/crates-io.scm (rust-thrussh-config-0.2): New variable.
---
 gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9988a4c6e2..123f5ec2a1 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -41136,6 +41136,38 @@ fixed set of worker threads.")
      "This package provides a client and server SSH library.")
     (license license:asl2.0)))
 
+(define-public rust-thrussh-config-0.2
+  (package
+    (name "rust-thrussh-config")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh-config" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0h19qysnbdvv6z2y3ii3cxqn42yvjg73wnghx83kbwj6af6chryb"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-dirs" ,rust-dirs-2)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-thrussh" ,rust-thrussh-0.21)
+        ("rust-tokio" ,rust-tokio-0.1))))
+    (home-page
+     "https://nest.pijul.com/pijul_org/thrussh")
+    (synopsis
+     "Utilities to parse .ssh/config files, including helpers")
+    (description
+     "This package contains utilities to parse .ssh/config files,
+including helpers to implement ProxyCommand in Thrussh.")
+    (license license:asl2.0)))
+
 (define-public rust-thrussh-keys-0.11
   (package
     (name "rust-thrussh-keys")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0006-gnu-Add-rust-advapi32-sys-0.2.patch

From 1299552512c43dc0118346074ef7279068301659 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:55:46 -0700
Subject: [PATCH 06/14] gnu: Add rust-advapi32-sys-0.2.

* gnu/package/crates-io.scm (rust-advapi32-sys-0.2): New variable.
---
 gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 123f5ec2a1..9d439797ea 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1093,6 +1093,34 @@ the Rust programming language.")
     (license (list license:bsd-3
                    license:zlib))))
 
+(define-public rust-advapi32-sys-0.2
+  (package
+    (name "rust-advapi32-sys")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "advapi32-sys" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "16largvlrd1800vvdchml0ngnszjlnpqm01rcz5hm7di1h48hrg0"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-winapi" ,rust-winapi-0.3))
+       #:cargo-development-inputs
+       (("rust-winapi-build" ,rust-winapi-build-0.1))))
+    (home-page
+     "https://github.com/retep998/winapi-rs")
+    (synopsis
+     "Contains function definitions for the Windows API library advapi32")
+    (description
+     "Contains function definitions for the Windows API library advapi32.
+The winapi crate's types and constants has more details about this API.")
+    (license license:expat)))
+
 (define-public rust-aead-0.3
   (package
     (name "rust-aead")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0007-gnu-Add-rust-username-0.2.patch

From 92395766d44b1a7d97b07cf330d2b14703c5e935 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:23:06 -0700
Subject: [PATCH 07/14] gnu: Add rust-username-0.2.

* gnu/packages/crates-io.scm (rust-username-0.2): New variable.
---
 gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9d439797ea..765d040229 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -45594,6 +45594,32 @@ encoding.")
 See winapi for types and constants.")
     (license license:expat)))
 
+(define-public rust-username-0.2
+  (package
+    (name "rust-username")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "username" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "028s7gpsz17z6chy818bpkxldixfxhlvicvyvhdbrxr7cpgjbr4j"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-advapi32-sys" ,rust-advapi32-sys-0.2)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://pijul.org/darcs/user")
+    (synopsis
+     "Portably retrieve the username of the user running the current thread")
+    (description
+     "Portably retrieve the user name (and possibly other information in
+future versions) of the user running the current thread.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-users-0.10
   (package
     (name "rust-users")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0008-gnu-Add-rust-lazycell-0.4.patch

From 8ba2fa71c5bac7991b0729938289db247816b404 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:13:05 -0700
Subject: [PATCH 08/14] gnu: Add rust-lazycell-0.4.

* gnu/packages/crates-io.scm (rust-lazycell-0.4): New variable.
---
 gnu/packages/crates-io.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 765d040229..a1cd8686aa 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -20417,6 +20417,24 @@ requires non-const function calls to be computed.")
      "This package provides a library providing a lazily filled Cell struct.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-lazycell-0.4
+  (package
+    (inherit rust-lazycell-1)
+    (name "rust-lazycell")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "lazycell" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0szgqfl2aw18kn9cf6qqpxxkiw6x6hx9y4r3gklnxn1r8xn304nf"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs (("rust-clippy" ,rust-clippy-0.0))))))
+
 (define-public rust-lexical-core-0.7
   (package
     (name "rust-lexical-core")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0009-gnu-Add-rust-pretty-env-logger-0.2.patch

From 222a804b939d08aaaa1bd463515e06bb22c18c95 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:23:12 -0700
Subject: [PATCH 09/14] gnu: Add rust-pretty-env-logger-0.2.

* gnu/packages/crates-io.scm (rust-pretty-env-logger-0.2): New variable.
---
 gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a1cd8686aa..dde65a44ad 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -28936,6 +28936,28 @@ replacements, adding colorful diffs.")
         ("rust-chrono" ,rust-chrono-0.4)
         ("rust-env-logger" ,rust-env-logger-0.6))))))
 
+(define-public rust-pretty-env-logger-0.2
+  (package
+    (inherit rust-pretty-env-logger-0.3)
+    (name "rust-pretty-env-logger")
+    (version "0.2.5")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (crate-uri "pretty_env_logger" version))
+        (file-name
+         (string-append name "-" version ".tar.gz"))
+        (sha256
+         (base32
+          "0a0c53plsr4abw0y1iyjxs0d64f0a6dn48464a2rp21f0iiix3gd"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-ansi-term" ,rust-ansi-term-0.11)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-env-logger" ,rust-env-logger-0.5)
+        ("rust-log" ,rust-log-0.4))))))
+
 (define-public rust-pretty-hex-0.2
   (package
     (name "rust-pretty-hex")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0010-gnu-Add-rust-spmc-0.2.patch

From 2ef38f9043385f7769324f99f0e6b9c973072d51 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:29:11 -0700
Subject: [PATCH 10/14] gnu: Add rust-spmc-0.2.

* gnu/packages/crates-io.scm (rust-spmc-0.2): New variable.
---
 gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index dde65a44ad..5899a2e87d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -38270,6 +38270,26 @@ provided by @code{lock_api}.")
     (description "Simple SPMC channel")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-spmc-0.2
+  (package
+    (inherit rust-spmc-0.3)
+    (name "rust-spmc")
+    (version "0.2.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "spmc" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1nhbjc65avbb4nffk6b49spbv7rsmmnrppj2qnx39mhwi57spgiw"))))
+    (arguments
+     `(#:tests? #f ;; tests hang
+       #:cargo-development-inputs
+       (("rust-loom" ,rust-loom-0.2))))
+    ;; This package is broken before 0.3
+    ;; Only included for pijul@1
+    (properties `((hidden? . #t)))))
+
 (define-public rust-spsc-buffer-0.1
   (package
     (name "rust-spsc-buffer")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0011-gnu-Add-rust-tokio-tls-0.1.patch

From 45187dad4c1a780762d88c3a4dc38b4d0b21716d Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:12:18 -0700
Subject: [PATCH 11/14] gnu: Add rust-tokio-tls-0.1.

* gnu/packages/crates-io.scm (rust-tokio-tls-0.1): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5899a2e87d..4706e5afa0 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -43043,6 +43043,39 @@ implementation of TLS for nonblocking I/O streams.")
         ("rust-security-framework" ,rust-security-framework-0.2)
         ("rust-tokio" ,rust-tokio-0.1))))))
 
+(define-public rust-tokio-tls-0.1
+  (package
+    (inherit rust-tokio-tls-0.3)
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-tls" version))
+       (file-name
+        (string-append
+         (package-name rust-tokio-tls-0.3) "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "04yrdscn8m9qza8ms09pqipbmj6x2q64jgm5n3ipy4b0wl24nbvp"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-native-tls" ,rust-native-tls-0.1)
+        ("rust-tokio-core" ,rust-tokio-core-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-proto" ,rust-tokio-proto-0.1))
+       #:cargo-development-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-env-logger" ,rust-env-logger-0.4)
+        ("rust-hyper" ,rust-hyper-0.11)
+        ("rust-openssl" ,rust-openssl-0.9)
+        ("rust-schannel" ,rust-schannel-0.1)
+        ("rust-security-framework"
+         ,rust-security-framework-0.1)
+        ("rust-tokio-service" ,rust-tokio-service-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))))))
+
 (define-public rust-tokio-trace-core-0.2
   (package
     (name "rust-tokio-trace-core")
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0012-gnu-Update-rust-tokio-executor-0.1-to-0.1.8.patch

From a1a8c82dbfd1fd0d95f77c58253477cab9090f01 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:34:42 -0700
Subject: [PATCH 12/14] gnu: Update rust-tokio-executor-0.1 to 0.1.8.

* gnu/packages/crates-io.scm (rust-tokio-executor-0.1): Update it.
---
 gnu/packages/crates-io.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 4706e5afa0..7dc0f34ee5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -41996,7 +41996,7 @@ the current thread.")
 (define-public rust-tokio-executor-0.1
   (package
     (name "rust-tokio-executor")
-    (version "0.1.7")
+    (version "0.1.8")
     (source
      (origin
        (method url-fetch)
@@ -42005,7 +42005,7 @@ the current thread.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0pjmgpg58k3hf5q9w6xjljsv8xy66lf734qnfwsc0g3pq3349sl3"))))
+         "1b5n6barppmhfyb1m2cvswp7nqvyrr3lb0kk545my75hdl7fw9qg"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0013-gnu-Fix-rust-tokio-0.1-dependencies.patch

From e24157ce11f6734954cb2387b5d3580a264d616b Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:37:39 -0700
Subject: [PATCH 13/14] gnu: Fix rust-tokio-0.1 dependencies.

* gnu/packages/crates-io.scm (rust-tokio-0.1): [arguments] Add required
cargo-inputs.
---
 gnu/packages/crates-io.scm | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7dc0f34ee5..f82f1458a4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -41806,7 +41806,6 @@ writing asynchronous I/O backed applications.")
        (("rust-bytes" ,rust-bytes-0.4)
         ("rust-futures" ,rust-futures-0.1)
         ("rust-mio" ,rust-mio-0.6)
-        ("rust-miow" ,rust-miow-0.3)
         ("rust-num-cpus" ,rust-num-cpus-1)
         ("rust-tokio-codec" ,rust-tokio-codec-0.1)
         ("rust-tokio-current-thread" ,rust-tokio-current-thread-0.1)
@@ -41818,9 +41817,9 @@ writing asynchronous I/O backed applications.")
         ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
         ("rust-tokio-threadpool" ,rust-tokio-threadpool-0.1)
         ("rust-tokio-timer" ,rust-tokio-timer-0.2)
-        ("rust-tokio-trace-core" ,rust-tokio-trace-core-0.2)
         ("rust-tokio-udp" ,rust-tokio-udp-0.1)
-        ("rust-tokio-uds" ,rust-tokio-uds-0.2))
+        ("rust-tokio-uds" ,rust-tokio-uds-0.2)
+        ("rust-tracing-core" ,rust-tracing-core-0.1))
        #:cargo-development-inputs
        (("rust-env-logger" ,rust-env-logger-0.5)
         ("rust-flate2" ,rust-flate2-1)
-- 
2.30.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0014-gnu-Add-pijul.patch

From 271fc728ab7a47630457d6611b0603b705c9097c Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:23:46 -0700
Subject: [PATCH 14/14] gnu: Add pijul.

* gnu/packages/rust-apps.scm (pijul): New variable.
---
 gnu/packages/rust-apps.scm | 114 +++++++++++++++++++++++++++++++++++++
 1 file changed, 114 insertions(+)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 9511cbf308..91924d2322 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -34,10 +34,13 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages crates-io)
   #:use-module (gnu packages crates-graphics)
+  #:use-module (gnu packages crypto)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages llvm)
+  #:use-module (gnu packages nettle)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages tls)
@@ -329,6 +332,117 @@ for distinguishing different kinds of bytes such as NULL bytes, printable ASCII
 characters, ASCII whitespace characters, other ASCII characters and non-ASCII.")
     (license (list license:expat license:asl2.0))))
 
+(define-public pijul
+  (package
+    (name "pijul")
+    (version "0.12.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pijul" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "12aqpfd2si70qbvfnn9kvznxyd5g5gsb1kk1q52wm077cd03yapr"))))
+    (build-system cargo-build-system)
+    (inputs
+     `(("clang" ,clang)
+       ("libressl" ,libressl)
+       ("libsodium" ,libsodium)
+       ("nettle" ,nettle)
+       ("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-atty" ,rust-atty-0.2)
+        ("rust-base64" ,rust-base64-0.9)
+        ("rust-bincode" ,rust-bincode-1)
+        ("rust-bs58" ,rust-bs58-0.2)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-clap" ,rust-clap-2)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-dirs" ,rust-dirs-1)
+        ("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-flate2" ,rust-flate2-1)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-getch" ,rust-getch-0.2)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-ignore" ,rust-ignore-0.4)
+        ("rust-libpijul" ,rust-libpijul-0.12)
+        ("rust-line" ,rust-line-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-pathdiff" ,rust-pathdiff-0.1)
+        ("rust-progrs" ,rust-progrs-0.1)
+        ("rust-rand" ,rust-rand-0.6)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-reqwest" ,rust-reqwest-0.9)
+        ("rust-rpassword" ,rust-rpassword-2)
+        ("rust-sequoia-openpgp" ,rust-sequoia-openpgp-0.9)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-shell-escape" ,rust-shell-escape-0.1)
+        ("rust-tar" ,rust-tar-0.4)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-term" ,rust-term-0.5)
+        ("rust-thrussh" ,rust-thrussh-0.21)
+        ("rust-thrussh-config" ,rust-thrussh-config-0.2)
+        ("rust-thrussh-keys" ,rust-thrussh-keys-0.11)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-uds" ,rust-tokio-uds-0.2)
+        ("rust-toml" ,rust-toml-0.4)
+        ("rust-username" ,rust-username-0.2))
+       #:cargo-development-inputs
+       (("rust-walkdir" ,rust-walkdir-2))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'set-clang-env
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv
+              "LIBCLANG_PATH"
+              (string-append (assoc-ref inputs "clang") "/lib"))
+             #t))
+         (add-after 'install 'install-completions
+           (lambda* (#:key outputs #:allow-other-keys)
+             (use-modules (ice-9 popen)
+                          (ice-9 textual-ports))
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin"))
+                    (share (string-append out "/share"))
+                    (bash (string-append
+                           share "/bash-completion/completions"))
+                    (zsh (string-append
+                          share "/zsh/site-functions"))
+                    (fish (string-append
+                           share "/fish/vendor_completions.d")))
+               (for-each
+                (lambda (x)
+                  (let ((dir (cddr x))
+                        (file (cadr x))
+                        (shell (car x)))
+                    (mkdir-p dir)
+                    (call-with-output-file (string-append dir "/" file)
+                      (lambda (f)
+                        (let* ((cmd (string-append
+                                     bin "/pijul generate-completions --"
+                                     shell))
+                               (pipe (open-input-pipe cmd))
+                               (completion (get-string-all pipe)))
+                          (format f "~A" completion)
+                          (close-pipe pipe)))) ))
+                `(("bash" . ("pijul" . ,bash))
+                  ("zsh" . ("_pijul" . ,zsh))
+                  ("fish" . ("pijul.fish" . ,fish))))
+               #t))))))
+    (home-page "https://pijul.org/")
+    (synopsis
+     "Patch-based distributed version control system")
+    (description
+     "This package is a version control system based on patches.  Its
+fundamental promise is that two patches producible in parallel always commute.
+This makes the whole system more correct, and much simpler to use.")
+    (license license:gpl2+)))
+
 (define-public ripgrep
   (package
     (name "ripgrep")
-- 
2.30.1


--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 25 Nov 2020 15:43:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Nov 25 10:43:29 2020
Received: from localhost ([127.0.0.1]:36716 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1khwx7-0001Tj-BQ
	for submit <at> debbugs.gnu.org; Wed, 25 Nov 2020 10:43:29 -0500
Received: from mail-pg1-f179.google.com ([209.85.215.179]:34978)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jsoo1@HIDDEN>) id 1khwx5-0001TX-Fo
 for 43929 <at> debbugs.gnu.org; Wed, 25 Nov 2020 10:43:27 -0500
Received: by mail-pg1-f179.google.com with SMTP id k11so100936pgq.2
 for <43929 <at> debbugs.gnu.org>; Wed, 25 Nov 2020 07:43:27 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=asu-edu.20150623.gappssmtp.com; s=20150623;
 h=from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version;
 bh=P1N2sarjkQQ7gLIp7RsP+x+t/ynpRNrI7emQu/dOk/k=;
 b=1/3haEqiqQfLwIr07Ml+Jhjb00X2Eoc7x2N30pdMQXY0AjBX5r90GtVH2eEPx24rrK
 6VOPUC4aVbiz8/l7SEBGRDldHamslmysRVxc7gNphb3uizKmdp39mQFYiabhzgjaI83u
 GkMa248XEPp6To4vxpUAupQugo0b9wu0A1oSKvCNbbjPxrC2/GYt1xuxMZRKaIvx4/6C
 E1Mrh1uz3A5uD5UX86tpEFyEAAF1gQVMYT+ECh/BH7TSR/TLObSojBe76oeZNNqVbFch
 Avs5MFLlIfSwyq2RFqyn8lbfHibid73rG/C9fqKyLbBeL2cQi8ttvXV35YHtHkuBKlRl
 Jnwg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to
 :message-id:user-agent:mime-version;
 bh=P1N2sarjkQQ7gLIp7RsP+x+t/ynpRNrI7emQu/dOk/k=;
 b=NwqCUF5vT9QobCQyxhlybgCI1HD3C3tlC3TQL5sFj+aH9dZD7xWZwZmlRtcjOP/tms
 KY9TANtdOTYwa8M1Nywm2PKVaKyO/QJHNd3MoNjYKmYBuflU5CRm11J+0ZMWoGyAKEXl
 OaAEwEpOrPwMq9BsF6LrOf63vLxv1Y3gdlIC0nqNKKfihpKdaq1gBG9DHFe5TBQM+GxF
 JKMME29gYSn0Fz1x9Yq/x4mHJ16AFC+PSnp7KIEyIJDaFDKY2u3FHDFiwC+FYp9TxK5T
 2A7T7LKohKeAJySuhA8P0bkgQFJ2EN5wPtGbiB6pkqkFSeZVY1fJlPvqkWLX9iNuKb+V
 y0lQ==
X-Gm-Message-State: AOAM531xvDRm+kJE8wljLg6CU2lbT4xya/c1FbuB3k5ZED/QuAUQIUK0
 2cXgPzjPStWR83+dI3EDwKdfJg==
X-Google-Smtp-Source: ABdhPJxZg6PWFrJsL1hmNxrjZA622xV5bKatpLIMdqMsR+WmN+RPUY+SV5U65t+JLigx0AaAvyTwDg==
X-Received: by 2002:aa7:8b12:0:b029:18c:7b88:d7fc with SMTP id
 f18-20020aa78b120000b029018c7b88d7fcmr2997031pfd.53.1606319001530; 
 Wed, 25 Nov 2020 07:43:21 -0800 (PST)
Received: from ecenter ([2600:1700:83b0:8bd0::7a8])
 by smtp.gmail.com with ESMTPSA id r1sm2315153pfq.160.2020.11.25.07.43.19
 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256);
 Wed, 25 Nov 2020 07:43:19 -0800 (PST)
From: John Soo <jsoo1@HIDDEN>
To: Julien Lepiller <julien@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
 <864kme2w8g.fsf@HIDDEN>
 <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN>
 <87a6vvvkxq.fsf@HIDDEN>
Date: Wed, 25 Nov 2020 07:43:18 -0800
In-Reply-To: <87a6vvvkxq.fsf@HIDDEN> (John Soo's message of "Thu, 05 Nov 2020
 08:16:01 -0800")
Message-ID: <878saptpbd.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 43929
Cc: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 43929 <43929 <at> debbugs.gnu.org>, zimoun <zimon.toutoune@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Hello,

I saw some of the patches were applied. Is there more work I should do
to improve them? Seems like some were incomplete in some way or other.

Thanks again,

John




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 22 Nov 2020 16:45:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Nov 22 11:45:55 2020
Received: from localhost ([127.0.0.1]:48144 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kgsUs-0000wI-VE
	for submit <at> debbugs.gnu.org; Sun, 22 Nov 2020 11:45:55 -0500
Received: from mail-pf1-f173.google.com ([209.85.210.173]:46587)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jsoo1@HIDDEN>) id 1kgsUq-0000w5-4d
 for 43929 <at> debbugs.gnu.org; Sun, 22 Nov 2020 11:45:53 -0500
Received: by mail-pf1-f173.google.com with SMTP id v12so12588445pfm.13
 for <43929 <at> debbugs.gnu.org>; Sun, 22 Nov 2020 08:45:52 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=asu-edu.20150623.gappssmtp.com; s=20150623;
 h=from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version;
 bh=FJbwqu+NA8sOC8R4Iu+dHvj/rtm7TZt8nCsunuavebs=;
 b=Rz7Remo3h4+CDEERtv29DiCgdUulsosbD5T4Ue0kkv8p36T2/LJGY0CVAorjyH7B3E
 WvVswmMarGcUs1TTfGYY/AAWMfPqBJfNf2v1knZwAHCyRrc4KdpgOI9PItawYzE6A2/C
 EZ62FmaUZYf/GgXVBwZkjwcTl/9cyD2pFxU3a1qwbvnv9GzkM5UdedIClOp4jT1eYDvD
 00a0vmPYtoktt7hKoHYemZ3slOrAt9yHZ0SevyKV5S4jpdMVsjL5/ZPubAZZjOvFVa0T
 ZYY0T+bZha5hyEACpkrgnzYEpIgcANVO5kyyNou0BSpPuxr/oMJ06s849bJ8agUQm/QG
 1TXA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to
 :message-id:user-agent:mime-version;
 bh=FJbwqu+NA8sOC8R4Iu+dHvj/rtm7TZt8nCsunuavebs=;
 b=f/R2FtrG7xT9+CLvcVyqqKOR50ZEi8vSQyWH2608UcfdUyLJ8+YYs2TYDrN9CAxctE
 oRfqGcu0ThYLe57TJt2ejzD20q3ZcH3Qg6FhWsCur47n6VNTNPjfztq9J6TBGRBDjDi8
 21dlra+FLDO0q+gBWZRQ/RvSYrV5btBSWyqpBb9ZbVUo8NsqZ1nH65cG6GIVMOsNE6LC
 wTWtnJzUEy1TB2i/SxCrjmwvjJPRS1eQ6cur3r1RmcLwRbRtBTIFwYfGwh4ytt9kdsF/
 Ggq806ykxZYM4Kz/OiPVryuRwR+WTdCaq93inPIY/VPzORmcGW2fxcqZ16huDHU2E8bl
 fFuQ==
X-Gm-Message-State: AOAM530jxDT0o88g1vv5eNWEBYFcVw2B+pmj7qBJeIunG21o/hQa+IpV
 Gru99Y8oqbAFUPnD90IKJo5XOQ==
X-Google-Smtp-Source: ABdhPJx8yXoeiVJlqVkZUxywo73/evFZzgfFWvUM5NCA59I8hHS+AGL5PHDhfQgn690MDw5LF+i5bw==
X-Received: by 2002:a63:2119:: with SMTP id h25mr1813478pgh.351.1606063545981; 
 Sun, 22 Nov 2020 08:45:45 -0800 (PST)
Received: from ecenter ([2600:1700:83b0:8bd0::7a8])
 by smtp.gmail.com with ESMTPSA id d10sm10822214pjj.38.2020.11.22.08.45.44
 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256);
 Sun, 22 Nov 2020 08:45:45 -0800 (PST)
From: John Soo <jsoo1@HIDDEN>
To: Efraim Flashner <efraim@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
 <864kme2w8g.fsf@HIDDEN>
 <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN>
 <871rhe1cug.fsf@HIDDEN> <20201122163405.GF1088@E5400>
Date: Sun, 22 Nov 2020 08:45:44 -0800
In-Reply-To: <20201122163405.GF1088@E5400> (Efraim Flashner's message of "Sun, 
 22 Nov 2020 18:34:05 +0200")
Message-ID: <87r1olmjbb.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 43929
Cc: Julien Lepiller <julien@HIDDEN>, 43929 <43929 <at> debbugs.gnu.org>,
 Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 zimoun <zimon.toutoune@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Efraim Flashner <efraim@HIDDEN> writes:

> I made it as far as rust-trust-dns-resolver-0.11, but then I had to stop
> because there were a couple of cargo-inputs which weren't packaged.

I am so sorry! That was my mistake. The second patchset should apply and
build ok.




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 22 Nov 2020 16:34:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Nov 22 11:34:51 2020
Received: from localhost ([127.0.0.1]:48135 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kgsKB-0000em-KM
	for submit <at> debbugs.gnu.org; Sun, 22 Nov 2020 11:34:51 -0500
Received: from flashner.co.il ([178.62.234.194]:49958)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <efraim@HIDDEN>) id 1kgsK9-0000eZ-JV
 for 43929 <at> debbugs.gnu.org; Sun, 22 Nov 2020 11:34:50 -0500
Received: from localhost (unknown [141.226.15.169])
 by flashner.co.il (Postfix) with ESMTPSA id 95C5A40148;
 Sun, 22 Nov 2020 16:34:43 +0000 (UTC)
Date: Sun, 22 Nov 2020 18:34:05 +0200
From: Efraim Flashner <efraim@HIDDEN>
To: John Soo <jsoo1@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
Message-ID: <20201122163405.GF1088@E5400>
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
 <864kme2w8g.fsf@HIDDEN>
 <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN>
 <871rhe1cug.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="SnV5plBeK2Ge1I9g"
Content-Disposition: inline
In-Reply-To: <871rhe1cug.fsf@HIDDEN>
X-PGP-Key-ID: 0x41AAE7DCCA3D8351
X-PGP-Key: https://flashner.co.il/~efraim/efraim_flashner.asc
X-PGP-Fingerprint: A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 43929
Cc: Julien Lepiller <julien@HIDDEN>, 43929 <43929 <at> debbugs.gnu.org>,
 Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 zimoun <zimon.toutoune@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


--SnV5plBeK2Ge1I9g
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

I made it as far as rust-trust-dns-resolver-0.11, but then I had to stop
because there were a couple of cargo-inputs which weren't packaged.

--=20
Efraim Flashner   <efraim@HIDDEN>   =D7=90=D7=A4=D7=A8=D7=99=D7=9D =
=D7=A4=D7=9C=D7=A9=D7=A0=D7=A8
GPG key =3D A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

--SnV5plBeK2Ge1I9g
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl+6kvgACgkQQarn3Mo9
g1EJQRAAtFa6ZZUHOwgTyWAzT6eKXLkWopgXjpNyNf6fMX5bLZKbUVhrRLKw7KhS
4CbxtS8AEipEsUen3l7LTqJPv/uvh9MxJqAskmdlgpcCzzaPvwyB0SXicxgmRh1e
g2xcFSyg15j7vuN47Q+c9J1WQNduwlIk6UgN+yByJ4j55foiKVwfnu2/MCy9B7E/
MUZNHn3x126GEd8M1A5+tItJcMQEibKov1wa72Dr98JWNBLQBgBjSzgg4wsmhExd
494kFLYvtlb1JCE2QYaDNNC0GQj9DTjl3L9JaC0S7WXnjDH+ccAjGfd6tXmi/LSx
imKYiwiJrRDjklagoqBrD0OuAPFpHOTpD7Z/FMncigVixK85rYuv/G8r9FnjHXHP
UBolhHVw8sco4bzq+riZ1fK/TXG8wr/itwIApMyygN9T7OFrVMVjmhYtbr2UEW/z
WNdgIYBdTDVbjD7NQ2wtmJgC3B6ii/a0JkKck54N40MPj2PPZYuDJtGqPZw1BAlj
BhL3BhRJtrZJe7SmdmeN46Nmxj1zlYpUBbpcdg8y0yRgFbWsp9HTLWQHX6RYmp1a
oveq068rUPurLgsfjuPuIpTfgJ7C2d9WgRdH7Qo1+SlSbGxxfdkJdUpcHfYLSyAj
ffnS/Ner/o2ydtUkv7VdbwZY4Jj9JKf+DrO0TJil+h9BTXWH8Ro=
=FNmB
-----END PGP SIGNATURE-----

--SnV5plBeK2Ge1I9g--




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 5 Nov 2020 16:16:14 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Nov 05 11:16:14 2020
Received: from localhost ([127.0.0.1]:53947 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kahvq-0007dT-0R
	for submit <at> debbugs.gnu.org; Thu, 05 Nov 2020 11:16:14 -0500
Received: from mail-pj1-f43.google.com ([209.85.216.43]:55025)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jsoo1@HIDDEN>) id 1kahvl-0007dB-Eh
 for 43929 <at> debbugs.gnu.org; Thu, 05 Nov 2020 11:16:13 -0500
Received: by mail-pj1-f43.google.com with SMTP id f12so315368pjp.4
 for <43929 <at> debbugs.gnu.org>; Thu, 05 Nov 2020 08:16:09 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=asu-edu.20150623.gappssmtp.com; s=20150623;
 h=from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version;
 bh=H0RDXHxfAQw0TR2JSH5WyA5OcwQs+hJStQAoS5urTOM=;
 b=w37TX/cF8SAYwPtI4VwPoqS7RJRC9xi5Kr+TLnhIzJGQQQjpzQQyATpAUmw03RUxds
 dC/FLxL5ufyYo5rF0LmXccwcecjzjj+nmSXu/NGLRLE4aLtxhd74sUuIaFPKUghBqY49
 kPx3B9lcV98exMvJkQdBykyZ+sa0OQf7LPlhfmxoeC/w4F/9TD1ajKZZiiVKT4a8i+rd
 qq86rwDZmnmJNLlPiapP1MKirarH6QjzoZAwl60kyeHfSFHWXhDcs3yvGYpTjD88+vuU
 +7c0K9Fnp00stEoc9VWmJD4HJ4+XD0W2XrpftxQvQr1eH347FIveCsLiSZvEh0T1myGz
 OAXQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to
 :message-id:user-agent:mime-version;
 bh=H0RDXHxfAQw0TR2JSH5WyA5OcwQs+hJStQAoS5urTOM=;
 b=c0zBxTprF96wwhKZMe3xklkpOVFx8BALTAKGIjLvPMxOyTK26lboeTDIWp2JSXsuss
 rJFHNxZWlvUt4lJ22p8w6ks5ocvddjecYq8uK4SONgACiAEx6MV+AD4lMjQza/mjoKjo
 zVlqsz970O/FeLlxHVjGFThQifqJQ2iRxrlgxniM4Iiu8eHk0PsRtW9o/MyQMnviLezZ
 a6yeav+1rDPYUQpymgMUVBf3Op3ijneE2uj2oLHlczoAUwOKEah4X+NhW8o3rZM/VrIO
 ssnjcgr/+LGKDuOFvGV2Tx2vt8LSJWNYteui2/1zB3TDKjReiLf5QfKztC0AjXyBVBBD
 W7Fw==
X-Gm-Message-State: AOAM530bxKVwrZg1O2ne46TcH/Wp+Gno0uOupiWqcIs3rZNAg+QuBj5i
 lQsSlQtvEaTRh1Mz7fHVdD0SnPE62zyaHkS7
X-Google-Smtp-Source: ABdhPJzpsBHxyO5F9OlpC1kfsPOoZa9N9YK8qNnPvx3nhnSuQ4A4qwrs2hNxrBXBwK/pZmslna+hdQ==
X-Received: by 2002:a17:90b:b12:: with SMTP id
 bf18mr2939103pjb.205.1604592963499; 
 Thu, 05 Nov 2020 08:16:03 -0800 (PST)
Received: from ecenter ([2600:1700:83b0:8bd0::7a8])
 by smtp.gmail.com with ESMTPSA id z5sm1450734pfn.76.2020.11.05.08.16.01
 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256);
 Thu, 05 Nov 2020 08:16:02 -0800 (PST)
From: John Soo <jsoo1@HIDDEN>
To: Julien Lepiller <julien@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
 <864kme2w8g.fsf@HIDDEN>
 <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN>
Date: Thu, 05 Nov 2020 08:16:01 -0800
In-Reply-To: <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN> (Julien
 Lepiller's message of "Wed, 28 Oct 2020 13:37:31 -0400")
Message-ID: <87a6vvvkxq.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 43929
Cc: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 43929 <43929 <at> debbugs.gnu.org>, zimoun <zimon.toutoune@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

Hello again,

I just added more detail to pijul's description which was previously
lacking a lot.

- John


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0001-gnu-Add-pijul.patch

From fcca32415721db2bd6308cf5037c0720ac772706 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:23:46 -0700
Subject: [PATCH] gnu: Add pijul.

* gnu/packages/rust-apps.scm (pijul): New variable.
---
 gnu/packages/rust-apps.scm | 114 +++++++++++++++++++++++++++++++++++++
 1 file changed, 114 insertions(+)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index f5501d67dd..5587e90515 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -30,8 +30,11 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages crates-io)
   #:use-module (gnu packages crates-graphics)
+  #:use-module (gnu packages crypto)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages llvm)
+  #:use-module (gnu packages nettle)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -238,6 +241,117 @@ for distinguishing different kinds of bytes such as NULL bytes, printable ASCII
 characters, ASCII whitespace characters, other ASCII characters and non-ASCII.")
     (license (list license:expat license:asl2.0))))
 
+(define-public pijul
+  (package
+    (name "pijul")
+    (version "0.12.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pijul" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "12aqpfd2si70qbvfnn9kvznxyd5g5gsb1kk1q52wm077cd03yapr"))))
+    (build-system cargo-build-system)
+    (inputs
+     `(("clang" ,clang)
+       ("libressl" ,libressl)
+       ("libsodium" ,libsodium)
+       ("nettle" ,nettle)
+       ("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-atty" ,rust-atty-0.2)
+        ("rust-base64" ,rust-base64-0.9)
+        ("rust-bincode" ,rust-bincode-1)
+        ("rust-bs58" ,rust-bs58-0.2)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-clap" ,rust-clap-2)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-dirs" ,rust-dirs-1.0)
+        ("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-flate2" ,rust-flate2-1)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-getch" ,rust-getch-0.2)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-ignore" ,rust-ignore-0.4)
+        ("rust-libpijul" ,rust-libpijul-0.12)
+        ("rust-line" ,rust-line-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-pathdiff" ,rust-pathdiff-0.1)
+        ("rust-progrs" ,rust-progrs-0.1)
+        ("rust-rand" ,rust-rand-0.6)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-reqwest" ,rust-reqwest-0.9)
+        ("rust-rpassword" ,rust-rpassword-2.1.0)
+        ("rust-sequoia-openpgp" ,rust-sequoia-openpgp-0.9)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-shell-escape" ,rust-shell-escape-0.1)
+        ("rust-tar" ,rust-tar-0.4)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-term" ,rust-term-0.5)
+        ("rust-thrussh" ,rust-thrussh-0.21)
+        ("rust-thrussh-config" ,rust-thrussh-config-0.2)
+        ("rust-thrussh-keys" ,rust-thrussh-keys-0.11)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-uds" ,rust-tokio-uds-0.2)
+        ("rust-toml" ,rust-toml-0.4)
+        ("rust-username" ,rust-username-0.2))
+       #:cargo-development-inputs
+       (("rust-walkdir" ,rust-walkdir-2))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'set-clang-env
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv
+              "LIBCLANG_PATH"
+              (string-append (assoc-ref inputs "clang") "/lib"))
+             #t))
+         (add-after 'install 'install-completions
+           (lambda* (#:key outputs #:allow-other-keys)
+             (use-modules (ice-9 popen)
+                          (ice-9 textual-ports))
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin"))
+                    (share (string-append out "/share"))
+                    (bash (string-append
+                           share "/bash-completion/completions"))
+                    (zsh (string-append
+                          share "/zsh/site-functions"))
+                    (fish (string-append
+                           share "/fish/vendor_completions.d")))
+               (for-each
+                (lambda (x)
+                  (let ((dir (cddr x))
+                        (file (cadr x))
+                        (shell (car x)))
+                    (mkdir-p dir)
+                    (call-with-output-file (string-append dir "/" file)
+                      (lambda (f)
+                        (let* ((cmd (string-append
+                                     bin "/pijul generate-completions --"
+                                     shell))
+                               (pipe (open-input-pipe cmd))
+                               (completion (get-string-all pipe)))
+                          (format f "~A" completion)
+                          (close-pipe pipe)))) ))
+                `(("bash" . ("pijul" . ,bash))
+                  ("zsh" . ("_pijul" . ,zsh))
+                  ("fish" . ("pijul.fish" . ,fish))))
+               #t))))))
+    (home-page "https://pijul.org/")
+    (synopsis
+     "Patch-based distributed version control system")
+    (description
+     "This package is a version control system based on patches.  Its
+fundamental promise is that two patches producible in parallel always commute.
+This makes the whole system more correct, and much simpler to use.")
+    (license license:gpl2+)))
+
 (define-public racer
   (package
     (name "racer")
-- 
2.29.1


--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 31 Oct 2020 18:31:16 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Oct 31 14:31:16 2020
Received: from localhost ([127.0.0.1]:34514 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kYvel-0000eQ-W7
	for submit <at> debbugs.gnu.org; Sat, 31 Oct 2020 14:31:16 -0400
Received: from mail-pl1-f181.google.com ([209.85.214.181]:40962)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jsoo1@HIDDEN>) id 1kYvei-0000eD-K8
 for 43929 <at> debbugs.gnu.org; Sat, 31 Oct 2020 14:31:14 -0400
Received: by mail-pl1-f181.google.com with SMTP id w11so4629212pll.8
 for <43929 <at> debbugs.gnu.org>; Sat, 31 Oct 2020 11:31:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=asu-edu.20150623.gappssmtp.com; s=20150623;
 h=from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version;
 bh=Gh9q8VjD5BHL5Xik8QfxjwjDiN5p51BRsvtAhfbvwEI=;
 b=1gKnynh29lBDLBx9TUOqRZKCjp2QlIvBRGvRc8tTJKVo5IfoAKYM/r9erxkegP0Hwo
 ZCeYsPiGzqtrmZpT1Uv0xg02fPSdex19KUL7dLYcK2YUTrojCGs6fFFEfrkqiTWRNMiB
 7s7JaAu25WHFgTqMQI4uik6fyJD1RR5Q5swLY39D80oFUsT4/QchBUEPqgtp13QQ2ngh
 CMjGGcZo55McU2ua1eiZKqJgXt/u7Bb6zMha1Q7WE4PRUDk3cT5UVIQZpN08k1SCODIi
 nBZKaxT1lWS3hidKRKDuWneqJWVZ+gHnoxP4WYhEzgOSJqpDTOsIpaE9a8lEd72YII/A
 yQxw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to
 :message-id:user-agent:mime-version;
 bh=Gh9q8VjD5BHL5Xik8QfxjwjDiN5p51BRsvtAhfbvwEI=;
 b=t9aQ0kRFd+Ms6hXBHEkZdjNp8tXrHhSRe63fRY/iejiqaII/v9B+aCnwi4Hztfh5ru
 UFdTFMc5oPrtULhmIvvIOedJVt/Jjr4+zyNsVg+YTJnBg6sTQFKNaj2ohtV2mnmiO4rR
 4BcXgkSEQ6UvReNpvKZQ+TBB06oTsVNhBb7L3pse0jQfK532OjvgPzSEsXx/wutFD+Oz
 c0/rS0Q3vnGRk+HPX2GZIGTGWa4tzPSy9sNfvEhSL2kR+V5iGyrqCkLmz4zNgZUwkU6P
 246pQ0L91bWFKPEA2vqjEwbmKlb+gkW6rYhJ+aZvKLrjfgh+8VFKd/xqzIjm6WRWFLI2
 ZVRw==
X-Gm-Message-State: AOAM532O79YzE0Is5NG7fdhyAQj8aUoCknlNQo8FXHDlPBOUdiriA5qs
 shLOs+HC4kM8oXMCD1i6IMsTWjeYdMQQRw==
X-Google-Smtp-Source: ABdhPJy9WwbC69MlA3a2nQDsWClZNqIHKZEs8IpD4XY58JWFDaou71TOl9TBSuKHWGkVDenbRNhi5Q==
X-Received: by 2002:a17:90b:1955:: with SMTP id
 nk21mr9850843pjb.122.1604169066424; 
 Sat, 31 Oct 2020 11:31:06 -0700 (PDT)
Received: from ecenter ([2600:1700:83b0:8bd0::7a8])
 by smtp.gmail.com with ESMTPSA id y22sm9391846pfr.62.2020.10.31.11.31.04
 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256);
 Sat, 31 Oct 2020 11:31:05 -0700 (PDT)
From: John Soo <jsoo1@HIDDEN>
To: Julien Lepiller <julien@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
 <864kme2w8g.fsf@HIDDEN>
 <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN>
Date: Sat, 31 Oct 2020 11:31:04 -0700
In-Reply-To: <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN> (Julien
 Lepiller's message of "Wed, 28 Oct 2020 13:37:31 -0400")
Message-ID: <87wnz6z1qv.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 43929
Cc: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 43929 <43929 <at> debbugs.gnu.org>, zimoun <zimon.toutoune@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

Hello guix,

Here are the patches with [WIP] that "build" but with #:skip-build #t
and [WIP] removed.

- John


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-gnu-Add-rust-core-foundation-0.2.patch

From 72bc8259a6ae05521e46d1d59ccf2a06998082b1 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 07:34:59 -0700
Subject: [PATCH] gnu: Add rust-core-foundation-0.2.

* gnu/packages/crates-io.scm (rust-core-foundation-0.2): New variable.
---
 gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e9012df979..c03d389c5b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -4787,6 +4787,27 @@ macOS.")
         ("rust-libc" ,rust-libc-0.2)
         ("rust-uuid" ,rust-uuid-0.5))))))
 
+(define-public rust-core-foundation-0.2
+  (package
+    (inherit rust-core-foundation-0.6)
+    (name "rust-core-foundation")
+    (version "0.2.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "core-foundation" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0rvcn7ab5r69wvn7gby745jlpy8pirfywcdxbiypy083s93dggr5"))))
+    (arguments
+     `(#:tests? #f
+       #:skip-build? #t
+       #:cargo-inputs
+       (("rust-core-foundation-sys" ,rust-core-foundation-sys-0.2)
+        ("rust-libc" ,rust-libc-0.2))))))
+
 (define-public rust-core-foundation-sys-0.7
   (package
     (name "rust-core-foundation-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-gnu-Add-rust-native-tls-0.1.patch

From 318fb7aa80490e004a7dd4777f90ed09cfb719d6 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 07:48:00 -0700
Subject: [PATCH] gnu: Add rust-native-tls-0.1.

* gnu/packages/crates-io.scm (rust-native-tls-0.1): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 59803621bf..9a11ddea41 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -16122,6 +16122,39 @@ IO of Windows's named pipes.")
      "This package provides a wrapper over a platform's native TLS implementation.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-native-tls-0.1
+  (package
+    (inherit rust-native-tls-0.2)
+    (name "rust-native-tls")
+    (version "0.1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "native-tls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1h7v80nlskyr7b1gsg4ivlpm6pilj6ybgvcwadj7ips3igfblkgp"))))
+    (arguments
+     `(#:skip-build? #t ; openssl?
+       #:tests? #f      ; tests require network access
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-0.2)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-openssl" ,rust-openssl-0.9)
+        ("rust-schannel" ,rust-schannel-0.1)
+        ("rust-security-framework" ,rust-security-framework-0.1)
+        ("rust-security-framework-sys" ,rust-security-framework-sys-0.1)
+        ("rust-tempdir" ,rust-tempdir-0.3))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'find-openssl
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((openssl (assoc-ref inputs "openssl")))
+               (setenv "OPENSSL_DIR" openssl))
+             #t)))))))
+
 (define-public rust-natord-1.0
   (package
     (name "rust-natord")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-gnu-Add-rust-tokio-tls-0.1.patch

From b8d04408c2272658de9919f188391e84cc370962 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:12:18 -0700
Subject: [PATCH] gnu: Add rust-tokio-tls-0.1.

* gnu/packages/crates-io.scm (rust-tokio-tls-0.1): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 289630c8f5..baab88799c 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30613,6 +30613,39 @@ pool.")
 implementation of TLS for nonblocking I/O streams.")
     (license license:expat)))
 
+(define-public rust-tokio-tls-0.1
+  (package
+    (inherit rust-tokio-tls-0.3)
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-tls" version))
+       (file-name
+        (string-append
+         (package-name rust-tokio-tls-0.3) "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "04yrdscn8m9qza8ms09pqipbmj6x2q64jgm5n3ipy4b0wl24nbvp"))))
+    (arguments
+     `(#:skip-build? #t ; openssl?
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-native-tls" ,rust-native-tls-0.1)
+        ("rust-tokio-core" ,rust-tokio-core-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-proto" ,rust-tokio-proto-0.1))
+       #:cargo-development-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-env-logger" ,rust-env-logger-0.4)
+        ("rust-hyper" ,rust-hyper-0.11)
+        ("rust-openssl" ,rust-openssl-0.9)
+        ("rust-schannel" ,rust-schannel-0.1)
+        ("rust-security-framework"
+         ,rust-security-framework-0.1)
+        ("rust-tokio-service" ,rust-tokio-service-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))))))
+
 (define-public rust-tokio-trace-core-0.2
   (package
     (name "rust-tokio-trace-core")
-- 
2.28.0


--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 31 Oct 2020 18:15:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Oct 31 14:15:32 2020
Received: from localhost ([127.0.0.1]:34504 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kYvPY-0000EL-Hu
	for submit <at> debbugs.gnu.org; Sat, 31 Oct 2020 14:15:32 -0400
Received: from mail-pj1-f49.google.com ([209.85.216.49]:54925)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jsoo1@HIDDEN>) id 1kYvPW-0000E8-S8
 for 43929 <at> debbugs.gnu.org; Sat, 31 Oct 2020 14:15:31 -0400
Received: by mail-pj1-f49.google.com with SMTP id az3so1024330pjb.4
 for <43929 <at> debbugs.gnu.org>; Sat, 31 Oct 2020 11:15:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=asu-edu.20150623.gappssmtp.com; s=20150623;
 h=from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version;
 bh=OFeiESdAhsMV7uxepMrZjZeltHx2kMbE86StAPHt+RA=;
 b=uAxhDu+54Gr8fIU8Cuo7AQOrw+7BdYPyJetAKJwRs2HbUVlMuIlrCwhPCGuZzIdb6C
 c7wmzY1j8L3sFa647G/1NXd/2ylxemTfhCr6xkusGlEHIc/ndmo4yr4bHYh+jZGkbgYO
 dE9MVeZRlobQgb2U7XIQyG1V3vOyreZF1VLkmKsu3oM34IxVwn8u8oLsxwMwqZ4FBER+
 NZDPBsUfC/4fekwFIkEIY47BIR5uYtdafc4WvOAsqnmbdXK/h1Fcr370l4OK/J8Yqyi1
 utCgAJe9LwZ/njbDImtS8Fh1dkMnm23GFiJghu6wVQ6OolIezg3peM+C8uSSOD2caKKW
 9yPw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to
 :message-id:user-agent:mime-version;
 bh=OFeiESdAhsMV7uxepMrZjZeltHx2kMbE86StAPHt+RA=;
 b=XiQltHHoy03UiZvAL1N2dNE1YvhYVLqwe5LWdDYKuD24evfwyLoJxWFAf/FUwOSoNl
 7EYPDH1GuP5j6HL5q4jYWjxnuUkzHx/YsgCVmaQYpADk1U8gyulZlm3otKOUZvMlqsbB
 6ZbF3+JqhSWEzoc0SDorUF1+AMhcphQb9hUnndw5z8MEaaB7Mi2nzDtLymXJ7twZZtwn
 /kCts14Hq3qdntvcLFWroywRidrD1z+nP/FQ99CVRrT4LbBtVxRFCUCYbQCxhsQ2vvMs
 kcELW7j1WvY0zoI/nAZK7pZ2c/ff4lW5TogZF4lnV6jYt/FJ5zobUQYNEToUySySjhTm
 uDpA==
X-Gm-Message-State: AOAM533CfQUZ9d/gs63QoFFQk+KnNcSFIg4KRHmArE9Co3UBfjCIBTLj
 SooaC1wY9fGWJkL6yntJqq3CcaQtYo6uuQ==
X-Google-Smtp-Source: ABdhPJyVRwniHtT8SeCdT5GTRArOqpr/vfuL/JCbJAwBw/+9W38fnQ13URrOam6PFLexI8+WXuSnMQ==
X-Received: by 2002:a17:90a:7bc5:: with SMTP id
 d5mr8912909pjl.99.1604168124671; 
 Sat, 31 Oct 2020 11:15:24 -0700 (PDT)
Received: from ecenter ([2600:1700:83b0:8bd0::7a8])
 by smtp.gmail.com with ESMTPSA id j11sm9152718pfe.80.2020.10.31.11.15.20
 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256);
 Sat, 31 Oct 2020 11:15:21 -0700 (PDT)
From: John Soo <jsoo1@HIDDEN>
To: Julien Lepiller <julien@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
 <864kme2w8g.fsf@HIDDEN>
 <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN>
Date: Sat, 31 Oct 2020 11:15:19 -0700
In-Reply-To: <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN> (Julien
 Lepiller's message of "Wed, 28 Oct 2020 13:37:31 -0400")
Message-ID: <871rhe1cug.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Debbugs-Envelope-To: 43929
Cc: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 43929 <43929 <at> debbugs.gnu.org>, zimoun <zimon.toutoune@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Hi everyone,

Julien Lepiller <julien@HIDDEN> writes:

> Le 28 octobre 2020 11:42:07 GMT-04:00, zimoun
>>From my point of view, because of the =E2=80=9Ctime-machine=E2=80=9D, it =
is nice to
>>include any version =E2=80=93 especially when it is already done. :-)
>
> Yeah I agree, you don't have to wait, since you already have
> everything available :)

I agree.

Attached the updated patches. I rebased them this morning.

However, during the rebase, I found some that do not build.

I marked these with [WIP]. I believe this to be something amiss with the
rust-openssl-sys@HIDDEN dependency.

Thanks!

- John


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-gnu-Add-rust-rust-base58-0.0.patch

From 51bc7cbf4409d12ed5bd2607a93e090a4a3d2afe Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:27:39 -0700
Subject: [PATCH 01/89] gnu: Add rust-rust-base58-0.0.

* gnu/packages/crates-io.scm (rust-rust-base58-0.0): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 3b4e02278a..4962e49f9d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22193,6 +22193,33 @@ hashing function.")
 password hashing function.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-rust-base58-0.0
+  (package
+    (name "rust-rust-base58")
+    (version "0.0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rust-base58" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0fa4y2jjjmg1a0cr3gz4z8rkic0hx2vx5nm23za9lwf6rlgvj4xk"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-num" ,rust-num-0.1))
+       #:cargo-development-inputs
+       (("rust-rand" ,rust-rand-0.4))))
+    (home-page "https://github.com/nham/rust-base58")
+    (synopsis
+     "Simple library for converting to and from base-58 strings")
+    (description
+     "Convert to and from base-58 strings with a simple Rust api.
+ Currently the conversion uses the Bitcoin base58 alphabet.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-rust-hawktracer-0.7
   (package
     (name "rust-rust-hawktracer")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0002-gnu-Add-rust-base58-0.1.patch

From 825652dd26aa2fac63addd657dbbbd5362e48484 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:28:40 -0700
Subject: [PATCH 02/89] gnu: Add rust-base58-0.1.

* gnu/packages/crates-io.scm (rust-base58-0.1): New variable.
---
 gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 4962e49f9d..35c99be33c 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1446,6 +1446,28 @@ trace (backtrace) at runtime in a Rust program.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-base58-0.1
+  (package
+    (name "rust-base58")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "base58" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "10xfw6v7jzn9i682mkw9nqybzafrvl3i2wawwgp5a8gh2n0fw92h"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/debris/base58")
+    (synopsis "Tiny and fast base58 encoding")
+    (description
+     "Encode to base58 using only Rust.  This package is based on
+@url{https://github.com/trezor/trezor-crypto/blob/master/base58.c} at commit
+c6e7d37.  However, this package works only up to 128 bytes.")
+    (license license:expat)))
+
 (define-public rust-base64-0.12
   (package
     (name "rust-base64")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0003-gnu-Add-rust-bs58-0.2.patch

From 3fa7d5c328d0f98181548837ee9422ace3ca4b35 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:29:05 -0700
Subject: [PATCH 03/89] gnu: Add rust-bs58-0.2.

* gnu/packages/crates-io.scm (rust-bs58-0.2): New variable.
---
 gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 35c99be33c..cfea63fa11 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -2645,6 +2645,38 @@ dependency on the rust stdlib.  This makes it suitable for embedded devices
 and kernels.")
     (license (list license:bsd-3 license:expat))))
 
+(define-public rust-bs58-0.2
+  (package
+    (name "rust-bs58")
+    (version "0.2.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bs58" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "125i962x0m0ggdif6ds51wfif2lypiicy469dj5j2l6rm6xycpn9"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-sha2" ,rust-sha2-0.8))
+       #:cargo-development-inputs
+       (("rust-assert-matches" ,rust-assert-matches-1.3)
+        ("rust-base58" ,rust-base58-0.1)
+        ("rust-rust-base58" ,rust-rust-base58-0.0))))
+    (home-page
+     "https://github.com/mycorrhiza/bs58-rs")
+    (synopsis "Another Base58 codec implementation")
+    (description
+     "Another Base58 codec implementation.  Compared to the base58 crate this
+is significantly faster at decoding (about 2.4x as fast when decoding 32
+bytes), almost the same speed for encoding (about 3% slower when encoding 32
+bytes), doesn't have the 128 byte limitation and supports a configurable
+alphabet.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-bstr-0.2
   (package
     (name "rust-bstr")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0004-gnu-Add-rust-cryptovec-0.4.patch

From 65ba860e67232badedbb703b96cefc74a6e09fac Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:29:29 -0700
Subject: [PATCH 04/89] gnu: Add rust-cryptovec-0.4.

* gnu/packages/crates-io.scm (rust-cryptovec-0.4): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index cfea63fa11..d0c35e9ccd 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -5440,6 +5440,33 @@ Code (MAC) algorithms.")
 algorithms.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-cryptovec-0.4
+  (package
+    (name "rust-cryptovec")
+    (version "0.4.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cryptovec" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1n88dmhfb2dxs48zllq1g1dya76zx4fajw482qy8jj4hgg1da4p4"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-kernel32-sys" ,rust-kernel32-sys-0.2)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://crates.io/crates/cryptovec")
+    (synopsis
+     "Vector which zeroes its memory on clears and reallocations")
+    (description
+     "This package provides a vector which zeroes its memory on clears and
+reallocations.")
+    (license license:asl2.0)))
+
 (define-public rust-cssparser-0.27
   (package
     (name "rust-cssparser")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0005-gnu-Add-rust-getch-0.2.patch

From aa1633a338fc0365e06fe6fbdbe4996d6bf782b3 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:29:51 -0700
Subject: [PATCH 05/89] gnu: Add rust-getch-0.2.

* gnu/packages/crates-io.scm (rust-getch-0.2): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index d0c35e9ccd..bad88b1dc3 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -9869,6 +9869,33 @@ API library @code{gdi32}.")
      "This package provides a package for generating 3D meshes/")
     (license license:asl2.0)))
 
+(define-public rust-getch-0.2
+  (package
+    (name "rust-getch")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "getch" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "00in8q95qi8a5q3zn2zcaqp5avj79f5myd2a4zfdy2m24ycvbc5v"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-termios" ,rust-termios-0.2))))
+    (home-page
+     "https://nest.pijul.com/pijul_org/getch")
+    (synopsis
+     "Portable implementation of getch")
+    (description
+     "This package provides a portable implementation of getch, using
+_getch on Windows, and termios on Unix.")
+    (license license:asl2.0)))
+
 (define-public rust-getopts-0.2
   (package
     (name "rust-getopts")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0006-gnu-Add-rust-diffs-0.3.patch

From 0b0c36e6e20e0818562c226dbf8a5561e3a88d90 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:37:16 -0700
Subject: [PATCH 06/89] gnu: Add rust-diffs-0.3.

* gnu/packages/crates-io.scm (rust-diffs-0.3): New variable.
---
 gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bad88b1dc3..a01c77064e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -6612,6 +6612,30 @@ Diesel.")
        #:cargo-development-inputs
        (("rust-term" ,rust-term-0.2))))))
 
+(define-public rust-diffs-0.3
+  (package
+    (name "rust-diffs")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "diffs" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "036sqycmir4bbl4016jprsyjq4hicc31r68dyqadmc8ac9pk55d1"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://nest.pijul.com/pijul_org/pijul")
+    (synopsis
+     "Diff algorithms, also called longest common subsequence")
+    (description
+     "This package provides a number of diff algorithms, also called longest
+common subsequence.  The diff algorithms include Myer's diff and Patience
+diff.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-digest-0.9
   (package
     (name "rust-digest")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0007-gnu-Add-rust-sanakirja-0.10.patch

From 880e89a2b7a81f80ba5259e6a5ffc92e5d73bbcb Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:50:51 -0700
Subject: [PATCH 07/89] gnu: Add rust-sanakirja-0.10.

* gnu/packages/crates-io.scm (rust-sanakirja-0.10): New variable.
---
 gnu/packages/crates-io.scm | 41 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a01c77064e..42dc3413fe 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23521,6 +23521,47 @@ paths point to the same file.")
        #:cargo-development-inputs
        (("rust-rand" ,rust-rand-0.3))))))
 
+(define-public rust-sanakirja-0.10
+  (package
+    (name "rust-sanakirja")
+    (version "0.10.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sanakirja" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1fhn5lb6jn0pimnk0nbf5h4xvp28xdkdh33d57gq1ixy8b2y091y"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-fs2" ,rust-fs2-0.4)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-memmap" ,rust-memmap-0.7)
+        ("rust-rand" ,rust-rand-0.4)
+        ("rust-uuid" ,rust-uuid-0.7))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-tempdir" ,rust-tempdir-0.3))))
+    (home-page
+     "https://nest.pijul.com/pijul_org/sanakirja")
+    (synopsis
+     "Key-value dictionary, using copy-on-write and B trees")
+    (description
+     "This package provides a key-value dictionary, using copy-on-write and B
+trees.  It features:
+@itemize
+@item ACID semantics.
+@item B trees with copy-on-write.
+@item Support for referential transparency: databases can be cloned in time
+O(log n) (where n is the size of the database).  This was the original
+motivation for writing this library.
+@end itemize")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-scan-fmt-0.2
   (package
     (name "rust-scan-fmt")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0008-gnu-Add-rust-buffered-reader-0.9.patch

From 0b37114da0fee5ee67c92d6115ff0bfb3c007b4f Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:55:21 -0700
Subject: [PATCH 08/89] gnu: Add rust-buffered-reader-0.9.

* gnu/packages/crates-io.scm (rust-buffered-reader-0.9): New variable.
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 42dc3413fe..1ddcf108dd 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -2725,6 +2725,35 @@ UTF-8.")
         (base32
          "0nzi9vqhl56ws8gq39f3aj4qjrr4l3g5lbkkcj8xq1x4cb74wq2r"))))))
 
+(define-public rust-buffered-reader-0.9
+  (package
+    (name "rust-buffered-reader")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "buffered-reader" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "05rklfiia1k4c4ifpim08l22i0q0l3j9xdg2yh3njrp6w58z6z13"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bzip2" ,rust-bzip2-0.3)
+        ("rust-flate2" ,rust-flate2-1)
+        ("rust-libc" ,rust-libc-0.2))))
+    (home-page "https://sequoia-pgp.org/")
+    (synopsis "Super-powered Reader")
+    (description
+     "Like the @code{BufRead} trait, the @code{BufferedReader} trait has an
+internal buffer that is directly exposed to the user.  This design enables two
+performance optimizations.  First, the use of an internal buffer amortizes
+system calls.  Second, exposing the internal buffer allows the user to work
+with data in place, which avoids another copy.")
+    (license license:gpl3)))
+
 (define-public rust-build-const-0.2
   (package
     (name "rust-build-const")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0009-gnu-Add-rust-sequoia-rfc2822-0.9.patch

From bd626722974217684648400945f76ef514fe5cfa Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:07:16 -0700
Subject: [PATCH 09/89] gnu: Add rust-sequoia-rfc2822-0.9.

* gnu/packages/crates-io.scm (rust-sequoia-rfc2822-0.9): New variable.
---
 gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 1ddcf108dd..a2b380a2ca 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -24325,6 +24325,45 @@ comparison.")
          (base32
           "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq"))))))
 
+(define-public rust-sequoia-rfc2822-0.9
+  (package
+    (name "rust-sequoia-rfc2822")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sequoia-rfc2822" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1aj34i6862718m162rqfv69fkmvdw063s6ws7hbp42n73gb08p5c"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-failure" ,rust-failure-0.1)
+        ("rust-lalrpop-util" ,rust-lalrpop-util-0.17))
+       #:cargo-development-inputs
+       (("rust-lalrpop" ,rust-lalrpop-0.17)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-quickcheck" ,rust-quickcheck-0.8)
+        ("rust-rand" ,rust-rand-0.4))))
+    (home-page "https://sequoia-pgp.org/")
+    (synopsis "RFC 2822 name-addr parser")
+    (description
+     "Currently, this crate only recognizes the RFC 2822 name-addr and
+addr-spec productions, i.e., things of the form:
+
+Name (Comment) <email@@example.org>
+
+and
+
+email@@example.org
+
+Although the above appear simple to parse, RFC 2822's whitespace and comment
+rules are rather complex.  This crate implements the whole grammar." )
+    (license license:gpl3)))
+
 (define-public rust-serde-1
   (package
     (name "rust-serde")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0010-gnu-rust-nettle-sys-2-do-not-skip-build.patch

From 90b12c7f0bc5de6078265881e3302004c0896138 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Thu, 18 Jun 2020 15:13:55 -0700
Subject: [PATCH 10/89] gnu: rust-nettle-sys-2: do not skip build.

* gnu/packages/crates-io.scm (rust-nettle-2-sys): [arguments] Change
cargo-development-inputs into cargo-inputs since they are required to
build. Do not skip build.
---
 gnu/packages/crates-io.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a2b380a2ca..6637fd3bec 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -15899,8 +15899,7 @@ cryptographic library.")
     (inputs
      `(("nettle", nettle)))
     (arguments
-     `(#:skip-build? #t
-       #:cargo-development-inputs
+     `(#:cargo-inputs
        (("rust-bindgen" ,rust-bindgen-0.51)
         ("rust-pkg-config" ,rust-pkg-config-0.3))))
     (home-page "https://gitlab.com/sequoia-pgp/nettle-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0011-gnu-Add-rust-nettle-5.patch

From 9f4785dab206009add9ae4fce7f570dd028cc216 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Thu, 18 Jun 2020 14:50:52 -0700
Subject: [PATCH 11/89] gnu: Add rust-nettle-5.

* gnu/packages/crates-io.scm (rust-nettle-5): New variable.
---
 gnu/packages/crates-io.scm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 6637fd3bec..263af03b1b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -15880,6 +15880,20 @@ types as proposed in RFC 1158.")
 cryptographic library.")
   (license (list license:lgpl3 license:gpl2 license:gpl3))))
 
+(define-public rust-nettle-5
+  (package
+    (inherit rust-nettle-7)
+    (version "5.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nettle" version))
+       (file-name
+        (string-append (package-name rust-nettle-7) "-" version ".tar.gz"))
+       (sha256
+        (base32 "0zfplqdf3mag8r7lc124hl24vri8yg711jmm8gl1mpwnlhass2n4"))
+       (patches (search-patches "rust-nettle-disable-vendor.patch"))))))
+
 (define-public rust-nettle-sys-2
   (package
     (name "rust-nettle-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0012-gnu-Add-rust-sequoia-openpgp-0.9.patch

From 64d123cf4a162df28f51c6eaa1636476c8d98678 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:08:02 -0700
Subject: [PATCH 12/89] gnu: Add rust-sequoia-openpgp-0.9.

* gnu/packages/crates-io.scm (rust-sequoia-openpgp-0.10): New variable.
---
 gnu/packages/crates-io.scm | 50 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 263af03b1b..50a3b4d89a 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -24338,6 +24338,56 @@ comparison.")
          (base32
           "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq"))))))
 
+(define-public rust-sequoia-openpgp-0.9
+  (package
+    (name "rust-sequoia-openpgp")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sequoia-openpgp" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "007h2pi7lcph5jf5bxjydm7hjwjai33yk6dic3cxknki22lxlkfw"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-buffered-reader" ,rust-buffered-reader-0.9)
+        ("rust-bzip2" ,rust-bzip2-0.3)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-flate2" ,rust-flate2-1)
+        ("rust-idna" ,rust-idna-0.1)
+        ("rust-lalrpop" ,rust-lalrpop-0.17)
+        ("rust-lalrpop-util" ,rust-lalrpop-util-0.17)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-memsec" ,rust-memsec-0.5)
+        ("rust-nettle" ,rust-nettle-5)
+        ("rust-quickcheck" ,rust-quickcheck-0.8)
+        ("rust-rand" ,rust-rand-0.4)
+        ("rust-safemem" ,rust-safemem-0.3)
+        ("rust-sequoia-rfc2822" ,rust-sequoia-rfc2822-0.9)
+        ("rust-time" ,rust-time-0.1))
+       #:cargo-development-inputs
+       (("rust-lalrpop" ,rust-lalrpop-0.17)
+        ("rust-rpassword" ,rust-rpassword-4))))
+    (home-page "https://sequoia-pgp.org/")
+    (synopsis
+     "OpenPGP data types and associated machinery")
+    (description
+     "This crate aims to provide a complete implementation of OpenPGP as
+defined by RFC 4880 as well as some extensions (e.g., RFC 6637, which
+describes ECC cryptography for OpenPGP.  This includes support for unbuffered
+message processing.
+
+A few features that the OpenPGP community considers to be deprecated (e.g.,
+version 3 compatibility) have been left out.  We have also updated some
+OpenPGP defaults to avoid foot guns (e.g., we selected modern algorithm
+defaults).  If some functionality is missing, please file a bug report."  )
+    (license license:gpl3)))
+
 (define-public rust-sequoia-rfc2822-0.9
   (package
     (name "rust-sequoia-rfc2822")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0013-gnu-Add-rust-libpijul-0.12.patch

From 4655a6c453255fc88a80439dfa1c947872c04113 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:11:21 -0700
Subject: [PATCH 13/89] gnu: Add rust-libpijul-0.12.

* gnu/package/crates-io.scm (rust-libpijul-0.12): New variable.
---
 gnu/packages/crates-io.scm | 57 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 50a3b4d89a..d89a7ccada 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13714,6 +13714,63 @@ allocator.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-libpijul-0.12
+  (package
+    (name "rust-libpijul")
+    (version "0.12.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "libpijul" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "18d9n8xaq5ncq3375f0xrr96l8si1frczgzdlrz3fl1jby8vbl6f"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bincode" ,rust-bincode-1)
+        ("rust-bitflags" ,rust-bitflags-1)
+        ("rust-bs58" ,rust-bs58-0.2)
+        ("rust-byteorder" ,rust-byteorder-1)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-diffs" ,rust-diffs-0.3)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-flate2" ,rust-flate2-1)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-ignore" ,rust-ignore-0.4)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-rand" ,rust-rand-0.4)
+        ("rust-sanakirja" ,rust-sanakirja-0.10)
+        ("rust-sequoia-openpgp" ,rust-sequoia-openpgp-0.9)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-tempdir" ,rust-tempdir-0.3)
+        ("rust-toml" ,rust-toml-0.5))))
+    (home-page "https://pijul.org/")
+    (synopsis
+     "Library component of the pijul version control system")
+    (description
+     "This crate contains the core API to access Pijul repositories.
+
+The key object is a @code{Repository}, on which @code{Txn} (immutable
+transactions) and @code{MutTxn} (mutable transactions) can be started, to
+perform a variety of operations.
+
+Another important object is a @code{Patch}, which encodes two different pieces
+of information:
+
+@itemize
+@item Information about deleted and inserted lines between two versions of a
+file.
+@item Information about file moves, additions and deletions.
+@end itemize")
+    (license license:gpl2+)))
+
 (define-public rust-libsqlite3-sys-0.15
   (package
     (name "rust-libsqlite3-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0014-gnu-Add-rust-line-0.1.patch

From 1ab9009d2c789738ea8dfc8fc88256f56cabeb48 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:16:18 -0700
Subject: [PATCH 14/89] gnu: Add rust-line-0.1.

* gnu/packages/crates-io.scm (rust-line-0.1): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index d89a7ccada..8e0a9ce609 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13834,6 +13834,39 @@ known as zlib).")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-line-0.1
+  (package
+    (name "rust-line")
+    (version "0.1.15")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "line" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0pissvrl5398701zlfd22w51ca32vhw83vbsl58a330hr4w5ra04"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-utf8parse" ,rust-utf8parse-0.1))))
+    (home-page "https://crates.io/crates/line")
+    (synopsis
+     "Rust implementation of line editing in a terminal")
+    (description
+     "The main goals of this library are:
+
+@itemize
+@item Portability: should work on any system (Unix or Windows).
+@item Support: was written for a real-world project (Pijul), so support is
+unlikely to stop soon.
+@item Output quality: avoid usual blinking terminal lines that older C
+libraries have.
+@end itemize")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-line-wrap-0.1
   (package
     (name "rust-line-wrap")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0015-gnu-Add-rust-pathdiff-0.1.patch

From c1827c385fa5892d329e594c0e6f2b1f88eccdf5 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:18:54 -0700
Subject: [PATCH 15/89] gnu: Add rust-pathdiff-0.1.

* gnu/packages/crates-io.scm (rust-pathdiff-0.1): New variable.
---
 gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8e0a9ce609..082b4de018 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -18315,6 +18315,29 @@ and would-block I/O operations.")
 path.Clean.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-pathdiff-0.1
+  (package
+    (name "rust-pathdiff")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pathdiff" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0cfg3isnx6mf3wbi7rsg4nmvywby40sbcs589n20fgi09l4p1gx3"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://github.com/Manishearth/pathdiff")
+    (synopsis
+     "Library for diffing paths to obtain relative paths")
+    (description
+     "Use diff_paths to construct a relative path from a provided base
+directory path to the provided path.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-pbkdf2-0.4
   (package
     (name "rust-pbkdf2")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0016-gnu-Add-rust-progrs-0.1.patch

From 00653952ed88d2a7022034cf700a6c6a7d5a4e9f Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:21:43 -0700
Subject: [PATCH 16/89] gnu: Add rust-progrs-0.1.

* gnu/packages/crates-io.scm (rust-progrs-0.1): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 082b4de018..82e2f80f15 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -19969,6 +19969,39 @@ macro use case.")
 @code{proc_macro_derive} pretend to be @code{proc_macro}.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-progrs-0.1
+  (package
+    (name "rust-progrs")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "progrs" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "108jx8jrv2r1brhvbqfw6fwx298k5fnw3m46kn7lv0jx2wmf0ifz"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://nest.pijul.com/laumann/progrs")
+    (synopsis
+     "A small library for displaying compact progress bars")
+    (description
+     "There are a number of libraries out there that can be used for progress
+display, but in the author's opinion these libraries do it almost right -
+either they eat up too much screen real estate (by not sticking to one line
+per thing that should use progress) or they try to align stuff left and right.
+
+In the author's humble opinion, the best example of just the right amount of
+information vs screen real-estate is in the Git progress output (when cloning,
+pulling, etc).  It uses one line per thing, and may display both percentage
+complete (in cases where it's known) and even throughput (for network
+transfer).
+
+This library mimics the Git way of showing progress.")
+    (license license:gpl2+)))
+
 (define-public rust-proptest-0.9
   (package
     (name "rust-proptest")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0017-gnu-Add-rust-rpassword-2.1.0.patch

From dd6f00c27b2bd5996873a02b4645fc3df760c8b5 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:24:13 -0700
Subject: [PATCH 17/89] gnu: Add rust-rpassword-2.1.0.

* gnu/packages/crates-io.scm (rust-rpassword-2.1.0): New variable.
---
 gnu/packages/crates-io.scm | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 82e2f80f15..b099399ff0 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22414,6 +22414,21 @@ rust.")
 console applications.")
   (license license:asl2.0)))
 
+(define-public rust-rpassword-2.1.0
+  (package
+    (inherit rust-rpassword-4)
+    (version "2.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rpassword" version))
+       (file-name
+        (string-append
+         (package-name rust-rpassword-4) "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+
 (define-public rust-rusqlite-0.19
   (package
     (name "rust-rusqlite")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0018-gnu-Add-rust-cookie-0.12.patch

From 2391088c2fa36a8b1489408319fd19c399497367 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:33:19 -0700
Subject: [PATCH 18/89] gnu: Add rust-cookie-0.12.

* gnu/packages/crates-io.scm (rust-cookie-0.12): New variable.
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index b099399ff0..20d541a377 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -4529,6 +4529,35 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
 semantics than those provided by @code{as} or @code{From}/@code{Into}.")
     (license license:expat)))
 
+(define-public rust-cookie-0.12
+  (package
+    (name "rust-cookie")
+    (version "0.12.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cookie" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1mdvqixahcywvqp0y8k2skkgbpfhsp0w73l9mz93dcrx1gq091l8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-ring" ,rust-ring-0.16)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-url" ,rust-url-1))))
+    (home-page
+     "https://github.com/SergioBenitez/cookie-rs")
+    (synopsis
+     "Crate for parsing HTTP cookie headers and managing a cookie jar")
+    (description
+     "Parse HTTP cookie headers and manage a cookie jar with this crate.
+It supports signed and private (encrypted + signed) jars.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-cordic-0.1
   (package
     (name "rust-cordic")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0019-gnu-Add-rust-cookie-store-0.7.patch

From 0f10a63244e401b49fad9eb8dc9918252037f9dc Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:42:35 -0700
Subject: [PATCH 19/89] gnu: Add rust-cookie-store-0.7.

* gnu/packages/crates-io.scm (rust-cookie-store-0.7): New variable.
---
 gnu/packages/crates-io.scm | 40 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 20d541a377..263348a8db 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -4558,6 +4558,46 @@ semantics than those provided by @code{as} or @code{From}/@code{Into}.")
 It supports signed and private (encrypted + signed) jars.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-cookie-store-0.7
+  (package
+    (name "rust-cookie-store")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cookie-store" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "174i9k9g62pfx7y1nqynywdpjplkl3j4hi3ck6bz2r996qzhnxa6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-cookie" ,rust-cookie-0.12)
+        ("rust-idna" ,rust-idna-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-publicsuffix" ,rust-publicsuffix-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-try-from" ,rust-try-from-0.3)
+        ("rust-url" ,rust-url-1))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-pretty-assertions"
+         ,rust-pretty-assertions-0.6))))
+    (home-page
+     "https://github.com/pfernie/cookie_store")
+    (synopsis
+     "Implementation of Cookie storage and retrieval per RFC6265")
+    (description
+     "This crate provides an implementation for storing and retrieving Cookies per
+the path and domain matching rules specified in RFC6265.
+
+Split from the user_agent crate.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-cordic-0.1
   (package
     (name "rust-cordic")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0020-gnu-Add-rust-hyper-old-types-0.11.patch

From d6088ec44026ef916b3cceda50611821db004aff Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:47:23 -0700
Subject: [PATCH 20/89] gnu: Add rust-hyper-old-types-0.11.

* gnu/packages/crates-io.scm (rust-hyper-old-types-0.11): New variable.
---
 gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 263348a8db..52d7e237b0 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -11890,6 +11890,40 @@ SystemTime}}.")
         ("rust-tokio-mockstream" ,rust-tokio-mockstream-1)
         ("rust-url" ,rust-url-1))))))
 
+(define-public rust-hyper-old-types-0.11
+  (package
+    (name "rust-hyper-old-types")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hyper-old-types" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1i69sks0bwamzqdbx8ffgkssxffv6crdmwjgl47nr5pkxi8vx5k8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f ; Tests do not compile
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.9)
+        ("rust-bytes" ,rust-bytes-0.4)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-httparse" ,rust-httparse-1)
+        ("rust-language-tags" ,rust-language-tags-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-percent-encoding" ,rust-percent-encoding-1.0)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-unicase" ,rust-unicase-2))))
+    (home-page "https://hyper.rs")
+    (synopsis "HTTP types from hyper 0.11.x")
+    (description
+     "This package contains HTTP types from the newer hyper crate in versions
+0.11.x.")
+    (license license:expat)))
+
 (define-public rust-hyper-rustls-0.21
   (package
     (name "rust-hyper-rustls")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0021-gnu-Add-rust-socks-0.3.patch

From b061348f666373ba900942a415f916f0f29fbd5a Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:14:20 -0700
Subject: [PATCH 21/89] gnu: Add rust-socks-0.3.

* gnu/packages/crates-io.scm (rust-socks-0.3): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 52d7e237b0..c4b776945a 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26225,6 +26225,33 @@ maximal amount of configuration possible intended.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-socks-0.3
+  (package
+    (name "rust-socks")
+    (version "0.3.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "socks" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1hnbw4c4j7dn9n3bd1v7ddkdzlxlzkfw3z29da1nxlj6jgx4r9p6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-winapi" ,rust-winapi-0.3)
+        ("rust-ws2-32-sys" ,rust-ws2-32-sys-0.2))))
+    (home-page
+     "https://github.com/sfackler/rust-socks")
+    (synopsis "Rust SOCKS proxy clients")
+    (description
+     "You can write SOCKS proxy clients with this crate.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-sourcefile-0.1
   (package
     (name "rust-sourcefile")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0022-gnu-Add-rust-trust-dns-rustls-0.6.patch

From b661575c6ec78bf7d20f720f880f5f9e6768bb05 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:32:40 -0700
Subject: [PATCH 22/89] gnu: Add rust-trust-dns-rustls-0.6.

* gnu/packages/crates-io.scm (rust-trust-dns-rustls-0.6): New variable.
---
 gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c4b776945a..c2f6d0daf1 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30527,6 +30527,45 @@ other queries.")
 extension for the Trust-DNS client to use rustls for TLS.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-trust-dns-rustls-0.6
+  (package
+    (inherit rust-trust-dns-rustls-0.19)
+    (name "rust-trust-dns-rustls")
+    (version "0.6.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-rustls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0vbh2y7w2s5gcw33fn4hb5f927kgjm6603vw63slg9riikmsiq43"))))
+    (native-inputs
+     `(("openssl" ,openssl)
+       ("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release" "--" "--skip=tests::test_tls_client_stream_ipv4")
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-rustls" ,rust-rustls-0.15)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.9)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.7)
+        ("rust-webpki" ,rust-webpki-0.19))
+       #:cargo-development-inputs
+       (("rust-openssl" ,rust-openssl-0.10)
+        ("rust-tokio" ,rust-tokio-0.1))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'find-openssl
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((openssl (assoc-ref inputs "openssl")))
+               (setenv "OPENSSL_DIR" openssl))
+             #t)))))))
+
 (define-public rust-try-from-0.3
   (package
     (name "rust-try-from")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0023-gnu-Add-rust-tracing-log-0.1.patch

From b7e19f013e98b3771c01fa11a98d3fdbb2524224 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:54:28 -0700
Subject: [PATCH 23/89] gnu: Add rust-tracing-log-0.1.

* gnu/packages/crates-io.scm (rust-tracing-log-0.1): New variable.
---
 gnu/packages/crates-io.scm | 42 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c2f6d0daf1..1f25e9b90d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30270,6 +30270,48 @@ automatically instrumenting functions.")
 @code{futures} with @code{tracing}.")
     (license license:expat)))
 
+(define-public rust-tracing-log-0.1
+  (package
+    (name "rust-tracing-log")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tracing-log" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0qsinlbk2knrqgx1k2zq8kjxs71x44vzpma2rin1sm462agcjav5"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-tracing-core" ,rust-tracing-core-0.1))
+       #:cargo-development-inputs
+       (("rust-tracing" ,rust-tracing-0.1))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Provides compatibility between tracing the log crates")
+    (description
+     "Tracing is a framework for instrumenting Rust programs with
+context-aware, structured, event-based diagnostic information.  This crate
+provides compatibility layers for using tracing alongside the logging facade
+provided by the log crate.
+
+This crate provides:
+
+@itemize
+@item @code{AsTrace} and @code{AsLog} traits for converting between tracing
+and log types.
+@item @code{LogTracer}, a @code{log::Log} implementation that consumes
+@code{log::Records} and outputs them as @code{tracing::Events}.
+@item An @code{env_logger} module, with helpers for using the env_logger crate
+with tracing (optional, enabled by the env-logger feature).
+@end itemize")
+    (license license:expat)))
+
 (define-public rust-traitobject-0.1
   (package
     (name "rust-traitobject")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0024-gnu-Add-rust-matchers-0.0.patch

From f0fea95e303a451740da11d89470b12926b7672d Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:51:44 -0700
Subject: [PATCH 24/89] gnu: Add rust-matchers-0.0.

* gnu/package/crates-io.scm (rust-matchers-0.0): New variable.
---
 gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 1f25e9b90d..9357698cda 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14732,6 +14732,32 @@ statement, the first matching branch is the item that gets emitted.")
 whether an expression matches a pattern.")
     (license license:expat)))
 
+(define-public rust-matchers-0.0
+  (package
+    (name "rust-matchers")
+    (version "0.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "matchers" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1q8ckqmkjqkznvdi9x0z769yz2bmvlqcwx51ad2lpk4mfmgpi6gh"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-regex-automata" ,rust-regex-automata-0.1))))
+    (home-page "https://github.com/hawkw/matchers")
+    (synopsis
+     "Regex matching on character and byte streams")
+    (description
+     "Use this crate to match on character and byte streams using regular
+grammars.  It provides the subset of the regex crate that only deals with
+matching, not parsing substrings.")
+    (license license:expat)))
+
 (define-public rust-matrixmultiply-0.2
   (package
     (name "rust-matrixmultiply")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0025-gnu-Add-rust-tracing-subscriber-0.1.patch

From 538a78dabed6b9c4f0229ee86c31b609f3515487 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:55:40 -0700
Subject: [PATCH 25/89] gnu: Add rust-tracing-subscriber-0.1.

* gnu/packages/crates-io.scm (rust-tracing-subscriber-0.1): New variable.
---
 gnu/packages/crates-io.scm | 48 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9357698cda..e81025a394 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30338,6 +30338,54 @@ with tracing (optional, enabled by the env-logger feature).
 @end itemize")
     (license license:expat)))
 
+(define-public rust-tracing-subscriber-0.1
+  (package
+    (name "rust-tracing-subscriber")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tracing-subscriber" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0bn6911zky2wg8ndvrj38v02hml0hpk0g49h0d3kf52klxqiffy6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-ansi-term" ,rust-ansi-term-0.11)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-matchers" ,rust-matchers-0.0)
+        ("rust-owning-ref" ,rust-owning-ref-0.4)
+        ("rust-parking-lot" ,rust-parking-lot-0.9)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-smallvec" ,rust-smallvec-0.6)
+        ("rust-tracing-core" ,rust-tracing-core-0.1)
+        ("rust-tracing-log" ,rust-tracing-log-0.1))
+       #:cargo-development-inputs
+       (("rust-criterion" ,rust-criterion-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-tracing" ,rust-tracing-0.1)
+        ("rust-tracing-log" ,rust-tracing-log-0.1))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Implement and compose tracing subscribers")
+    (description
+     "Utilities for implementing and composing tracing subscribers.
+
+Tracing is a framework for instrumenting Rust programs to collect
+scoped, structured, and async-aware diagnostics.  The Subscriber trait
+represents the functionality necessary to collect this trace
+data.  This crate contains tools for composing subscribers out of
+smaller units of behaviour, and batteries-included implementations of
+common subscriber functionality.
+
+Tracing-subscriber is intended for use by both Subscriber authors and
+application authors using tracing to instrument their applications.")
+    (license license:expat)))
+
 (define-public rust-traitobject-0.1
   (package
     (name "rust-traitobject")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0026-gnu-Add-rust-tracing-fmt-0.1.patch

From 9158c5d5b8b61f3147beb67ff4f2192a49f06ae2 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:56:22 -0700
Subject: [PATCH 26/89] gnu: Add rust-tracing-fmt-0.1.

* gnu/packages/crates-io.scm (rust-tracing-fmt-0.1): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e81025a394..24ba054114 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30296,6 +30296,33 @@ automatically instrumenting functions.")
 @code{futures} with @code{tracing}.")
     (license license:expat)))
 
+(define-public rust-tracing-fmt-0.1
+  (package
+    (name "rust-tracing-fmt")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tracing-fmt" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0wagcrd6w8d3k7zdvg6sy2bwfh8w87i6ndia69p54fc7p3z4f1c8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-tracing-subscriber" ,rust-tracing-subscriber-0.1))
+       #:cargo-development-inputs
+       (("rust-tracing" ,rust-tracing-0.1))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Tracing subscriber that formats and logs trace data")
+    (description
+     "This package provides a tracing subscriber that formats and logs trace
+data.  Moved to the tracing-subscriber crate.")
+    (license license:expat)))
+
 (define-public rust-tracing-log-0.1
   (package
     (name "rust-tracing-log")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0027-gnu-Add-rust-tokio-net-0.2.patch

From 472283588860dbfd69bd72df9cf477458d17b1d6 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:59:45 -0700
Subject: [PATCH 27/89] gnu: Add rust-tokio-net-0.2.

* gnu/packages/crates-io.scm (rust-tokio-net-0.2): New variable.
---
 gnu/packages/crates-io.scm | 49 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 24ba054114..f2390f996b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -29413,6 +29413,55 @@ applications backed by buffers.")
 Tokio.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-tokio-net-0.2
+  (package
+    (name "rust-tokio-net")
+    (version "0.2.0-alpha.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-net" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "15vm0bndn6zcpkp1yb6v736rbhqgim5skc76rz299xd3y0pr249a"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-crossbeam-queue" ,rust-crossbeam-queue-0.1)
+        ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
+        ("rust-futures-core-preview"
+         ,rust-futures-core-preview-0.3)
+        ("rust-futures-sink-preview"
+         ,rust-futures-sink-preview-0.3)
+        ("rust-futures-util-preview"
+         ,rust-futures-util-preview-0.3)
+        ("rust-iovec" ,rust-iovec-0.1)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-mio" ,rust-mio-0.6)
+        ("rust-mio-named-pipes" ,rust-mio-named-pipes-0.1)
+        ("rust-mio-uds" ,rust-mio-uds-0.6)
+        ("rust-num-cpus" ,rust-num-cpus-1)
+        ("rust-parking-lot" ,rust-parking-lot-0.8)
+        ("rust-signal-hook-registry"
+         ,rust-signal-hook-registry-1)
+        ("rust-slab" ,rust-slab-0.4)
+        ("rust-tokio-codec" ,rust-tokio-codec-0.1)
+        ("rust-tokio-executor" ,rust-tokio-executor-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-sync" ,rust-tokio-sync-0.1)
+        ("rust-tracing" ,rust-tracing-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Event loop that drives Tokio I/O resources")
+    (description
+     "This package provides the event loop that drives Tokio I/O resources.")
+    (license license:expat)))
+
 (define-public rust-tokio-openssl-0.4
   (package
     (name "rust-tokio-openssl")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0028-gnu-Add-rust-trust-dns-resolver-0.11.patch

From 37c8bc975213e8e33d057f43df6a0cffea5c53e5 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:02:30 -0700
Subject: [PATCH 28/89] gnu: Add rust-trust-dns-resolver-0.11.

* gnu/packages/crates-io.scm (rust-trust-dns-resolver-0.11): New variable.
---
 gnu/packages/crates-io.scm | 50 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f2390f996b..030e5e1045 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30719,6 +30719,56 @@ other queries.")
 extension for the Trust-DNS client to use rustls for TLS.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-trust-dns-resolver-0.11
+  (package
+    (inherit rust-trust-dns-resolver-0.19)
+    (name "rust-trust-dns-resolver")
+    (version "0.11.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-resolver" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0fd0w2zsdwlsag27fsg0fzyd7j7niw0r22rwh2c5fdmsipjr56bc"))))
+    (arguments
+     `(#:tests? #f ; Tests require network access
+       #:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-ipconfig" ,rust-ipconfig-0.2)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-lru-cache" ,rust-lru-cache-0.1)
+        ("rust-resolv-conf" ,rust-resolv-conf-0.6)
+        ("rust-rustls" ,rust-rustls-0.15)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-smallvec" ,rust-smallvec-0.6)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-tls" ,rust-tokio-tls-0.1)
+        ("rust-tokio-udp" ,rust-tokio-udp-0.1)
+        ("rust-trust-dns-https" ,rust-trust-dns-https-0.3)
+        ("rust-trust-dns-native-tls" ,rust-trust-dns-native-tls-0.6)
+        ("rust-trust-dns-openssl" ,rust-trust-dns-openssl-0.6)
+        ("rust-trust-dns-rustls" ,rust-trust-dns-rustls-0.6)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.16))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1))))))
+    (home-page "http://www.trust-dns.org/index.html")
+    (synopsis
+     "Trust-DNS is a safe and secure DNS library")
+    (description
+     "Trust-DNS is a safe and secure DNS library.  This Resolver library uses
+the Client library to perform all DNS queries.  The Resolver is intended to be
+a high-level library for any DNS record resolution see Resolver and
+AsyncResolver for supported resolution types.  The Client can be used for
+other queries.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-trust-dns-rustls-0.6
   (package
     (inherit rust-trust-dns-rustls-0.19)
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0029-gnu-Add-rust-shell-escape-0.1.patch

From 0d35b70f0ed3bc1574fd27dc6bbd79e7a7eb39c6 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:05:58 -0700
Subject: [PATCH 29/89] gnu: Add rust-shell-escape-0.1.

* gnu/packages/crates-io.scm (rust-shell-escape-0.1): New variable.
---
 gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 030e5e1045..e4f6c41822 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -25770,6 +25770,28 @@ picking compatible shaders.")
      "This package allows easy binding to, and loading of, shared libraries.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-shell-escape-0.1
+  (package
+    (name "rust-shell-escape")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "shell-escape" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1fgs1iyx3b124b7njjmhfn9q5ipmhxrafavh8mxbfl9a9zk162hp"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://github.com/sfackler/shell-escape")
+    (synopsis
+     "Escape characters that may have a special meaning in a shell")
+    (description
+     "Escape characters that may have a special meaning in a shell.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-shell-words-0.1
   (package
     (name "rust-shell-words")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0030-gnu-Add-rust-thrussh-libsodium-0.1.patch

From 740e333900b6b3b707d359b844fdd32d4766be45 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:08:39 -0700
Subject: [PATCH 30/89] gnu: Add rust-thrussh-libsodium-0.1.

* gnu/packages/crates-io.scm (rust-thrussh-libsodium-0.1): New variable.
---
 gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e4f6c41822..6dcdb45b22 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -28782,6 +28782,32 @@ fixed set of worker threads.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-thrussh-libsodium-0.1
+  (package
+    (name "rust-thrussh-libsodium")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh-libsodium" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0fjssjiwnmbxjvajk37l7k0fcw1ys97j7n8bpn3q3bbnz2qfrphv"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-pkg-config" ,rust-pkg-config-0.3))))
+    (home-page
+     "https://nest.pijul.com/pijul_org/thrussh")
+    (synopsis
+     "Straightforward bindings to libsodium")
+    (description
+     "You can bind to libsodium from Rust with this crate.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-time-0.2
   (package
     (name "rust-time")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0031-gnu-Add-rust-yasna-0.1.patch

From 7fa05757a55b2341e14ab98e827f92b005f0aec5 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:14:33 -0700
Subject: [PATCH 31/89] gnu: Add rust-yasna-0.1.

* gnu/packages/crates-io.scm (rust-yasna-0.1): New variable.
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 6dcdb45b22..662adcb7bd 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33544,6 +33544,35 @@ Read/Write streams as well as low-level in-memory encoding and decoding.")
        (("rust-clippy" ,rust-clippy-0.0)
         ("rust-linked-hash-map" ,rust-linked-hash-map-0.3))))))
 
+(define-public rust-yasna-0.1
+  (package
+    (name "rust-yasna")
+    (version "0.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "yasna" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1frcd79rzi6dlly7lldjn2avnhfmj6yxrjsgvb2p1k2zbxdzyc9s"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bit-vec" ,rust-bit-vec-0.4)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-num" ,rust-num-0.1)
+        ("rust-num-bigint" ,rust-num-bigint-0.1))
+       #:cargo-development-inputs
+       (("rust-num-traits" ,rust-num-traits-0.2))))
+    (home-page "https://github.com/qnighy/yasna.rs")
+    (synopsis "ASN.1 library for Rust")
+    (description
+     "To serialize ASN.1 data, you can use @code{construct_der}.
+To deserialize ASN.1 data, you can use parse_ber or @code{parse_der}."  )
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-zbase32-0.1
   (package
     (name "rust-zbase32")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0032-gnu-Add-rust-thrussh-keys-0.11.patch

From d19affd78fa5eca4968b648a51a31643e5251f03 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:16:52 -0700
Subject: [PATCH 32/89] gnu: Add rust-thrussh-keys-0.11.

* gnu/packages/crates-io.scm (rust-thrussh-keys-0.11): New variable.
---
 gnu/packages/crates-io.scm | 45 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 662adcb7bd..5bebc6362a 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -28782,6 +28782,51 @@ fixed set of worker threads.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-thrussh-keys-0.11
+  (package
+    (name "rust-thrussh-keys")
+    (version "0.11.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh-keys" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0rkhkkav9kv1q9lgxgydnrkniq4ccrf107lcygimralnkwyzjwjy"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bit-vec" ,rust-bit-vec-0.4)
+        ("rust-byteorder" ,rust-byteorder-1)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-dirs" ,rust-dirs-2.0)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-num-bigint" ,rust-num-bigint-0.1)
+        ("rust-num-integer" ,rust-num-integer-0.1)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-thrussh-libsodium"
+         ,rust-thrussh-libsodium-0.1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-yasna" ,rust-yasna-0.1))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-tempdir" ,rust-tempdir-0.3)
+        ("rust-tokio-uds" ,rust-tokio-uds-0.2))))
+    (home-page "https://pijul.org/thrussh/")
+    (synopsis
+     "Deal with SSH keys in Rust")
+    (description
+     "This package provides a rust library to deal with SSH keys.
+With it you can load them, decrypt them, and call an SSH agent.")
+    (license license:asl2.0)))
+
 (define-public rust-thrussh-libsodium-0.1
   (package
     (name "rust-thrussh-libsodium")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0033-gnu-Add-rust-thrussh-0.21.patch

From 3505501e0a4e60c6248d8fe45837722f0c62e039 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:18:13 -0700
Subject: [PATCH 33/89] gnu: Add rust-thrussh-0.21.

* gnu/packages/crates-io.scm (rust-thrussh-0.21): New variable.
---
 gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5bebc6362a..663ff9fe4e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -28782,6 +28782,41 @@ fixed set of worker threads.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-thrussh-0.21
+  (package
+    (name "rust-thrussh")
+    (version "0.21.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0k8ah3kx8q6vnkq3hi78s8acxdcws6yck0x989xzx2wi89nqflhl"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-byteorder" ,rust-byteorder-1)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-thrussh-keys" ,rust-thrussh-keys-0.11)
+        ("rust-thrussh-libsodium"
+         ,rust-thrussh-libsodium-0.1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6))))
+    (home-page "https://pijul.org/thrussh/")
+    (synopsis "Client and server SSH library in Rust")
+    (description
+     "This package provides a client and server SSH library.")
+    (license license:asl2.0)))
+
 (define-public rust-thrussh-keys-0.11
   (package
     (name "rust-thrussh-keys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0034-gnu-Add-rust-thrussh-config-0.2.patch

From ecab2124be390f71c38be93d9fd729cedc4888f6 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:19:52 -0700
Subject: [PATCH 34/89] gnu: Add rust-thrussh-config-0.2.

* gnu/packages/crates-io.scm (rust-thrussh-config-0.2): New variable.
---
 gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 663ff9fe4e..897d69127d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -28817,6 +28817,38 @@ fixed set of worker threads.")
      "This package provides a client and server SSH library.")
     (license license:asl2.0)))
 
+(define-public rust-thrussh-config-0.2
+  (package
+    (name "rust-thrussh-config")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh-config" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0h19qysnbdvv6z2y3ii3cxqn42yvjg73wnghx83kbwj6af6chryb"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-dirs" ,rust-dirs-2.0)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-thrussh" ,rust-thrussh-0.21)
+        ("rust-tokio" ,rust-tokio-0.1))))
+    (home-page
+     "https://nest.pijul.com/pijul_org/thrussh")
+    (synopsis
+     "Utilities to parse .ssh/config files, including helpers")
+    (description
+     "This package contains utilities to parse .ssh/config files,
+including helpers to implement ProxyCommand in Thrussh.")
+    (license license:asl2.0)))
+
 (define-public rust-thrussh-keys-0.11
   (package
     (name "rust-thrussh-keys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0035-gnu-Add-rust-advapi32-sys-0.2.patch

From 66ce53f02d2b5609a5ae935f299e838217f8bccc Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:55:46 -0700
Subject: [PATCH 35/89] gnu: Add rust-advapi32-sys-0.2.

* gnu/package/crates-io.scm (rust-advapi32-sys-0.2): New variable.
---
 gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 897d69127d..42bc949d77 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -185,6 +185,34 @@ the Rust programming language.")
     (license (list license:bsd-3
                    license:zlib))))
 
+(define-public rust-advapi32-sys-0.2
+  (package
+    (name "rust-advapi32-sys")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "advapi32-sys" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "16largvlrd1800vvdchml0ngnszjlnpqm01rcz5hm7di1h48hrg0"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-winapi" ,rust-winapi-0.3))
+       #:cargo-development-inputs
+       (("rust-winapi-build" ,rust-winapi-build-0.1))))
+    (home-page
+     "https://github.com/retep998/winapi-rs")
+    (synopsis
+     "Contains function definitions for the Windows API library advapi32")
+    (description
+     "Contains function definitions for the Windows API library advapi32.
+The winapi crate's types and constants has more details about this API.")
+    (license license:expat)))
+
 (define-public rust-aead-0.3
   (package
     (name "rust-aead")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0036-gnu-Add-rust-username-0.2.patch

From 155cf038f2a12195a9c66387bc1c2aa645c53452 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:23:06 -0700
Subject: [PATCH 36/89] gnu: Add rust-username-0.2.

* gnu/packages/crates-io.scm (rust-username-0.2): New variable.
---
 gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 42bc949d77..65e87ae896 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31797,6 +31797,32 @@ untrusted inputs in Rust.")
 See winapi for types and constants.")
     (license license:expat)))
 
+(define-public rust-username-0.2
+  (package
+    (name "rust-username")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "username" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "028s7gpsz17z6chy818bpkxldixfxhlvicvyvhdbrxr7cpgjbr4j"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-advapi32-sys" ,rust-advapi32-sys-0.2)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://crates.io/crates/username")
+    (synopsis
+     "Portably retrieve the username of the user running the current thread")
+    (description
+     "Portably retrieve the user name (and possibly other information in
+future versions) of the user running the current thread.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-users-0.10
   (package
     (name "rust-users")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0037-gnu-Add-rust-ct-logs-0.6.patch

From aa24a4a2cb0b78c530f0924e81106af13904e71e Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Tue, 20 Oct 2020 12:14:44 -0700
Subject: [PATCH 37/89] gnu: Add rust-ct-logs-0.6.

* gnu/packages/crates-io.scm (rust-ct-logs-0.6): New variable.
* gnu/packages/crates-io.scm (rust-ct-logs-0.3): Inherit from rust-ct-logs-0.6.
---
 gnu/packages/crates-io.scm | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 65e87ae896..0c937fdd5f 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -5809,10 +5809,26 @@ reallocations.")
 Transparency logs for use with sct crate.")
     (license (list license:asl2.0 license:isc license:expat))))
 
-(define-public rust-ct-logs-0.3
+(define-public rust-ct-logs-0.6
   (package
     (inherit rust-ct-logs-0.7)
     (name "rust-ct-logs")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "ct-logs" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "04wiwiv4ghni3x2vni3z711mlz0ndqvh04vmdkbw3nr7zbsqcdjd"))))
+    (arguments
+     `(#:cargo-inputs (("rust-sct" ,rust-sct-0.6))))))
+
+(define-public rust-ct-logs-0.3
+  (package
+    (inherit rust-ct-logs-0.6)
+    (name "rust-ct-logs")
     (version "0.3.0")
     (source
      (origin
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0038-gnu-Add-rust-tokio-rustls-0.10.patch

From 220aa4c868cb48c8fb5566baff2ceabe3fb567c5 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Tue, 20 Oct 2020 12:30:15 -0700
Subject: [PATCH 38/89] gnu: Add rust-tokio-rustls-0.10.

* gnu/packages/crates-io.scm (rust-tokio-rustls-0.10): New variable.
---
 gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0c937fdd5f..02c7fa1982 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -29860,6 +29860,36 @@ using Rustls.")
         ("rust-webpki-roots" ,rust-webpki-roots-0.18))))
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-tokio-rustls-0.10
+  (package
+    (inherit rust-tokio-rustls-0.12)
+    (name "rust-tokio-rustls")
+    (version "0.10.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-rustls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0xh6gxilm7waj55rxfgqmvl8abynzr3ang57qvbap400k67z0z1d"))))
+    (arguments
+     `(;; These tests require network access.
+       #:cargo-test-flags
+       '("--release"
+         "--" "--skip=test_badssl" "--skip=tls12" "--skip=modern")
+       #:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.5)
+        ("rust-futures-core" ,rust-futures-core-0.3)
+        ("rust-rustls" ,rust-rustls-0.16)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-webpki" ,rust-webpki-0.21)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.17))
+       #:cargo-development-inputs
+       (("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-tokio" ,rust-tokio-0.2)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.17))))))
+
 (define-public rust-tokio-signal-0.2
   (package
     (name "rust-tokio-signal")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0039-gnu-Add-rust-hyper-rustls-0.17.patch

From 3c32566cf3bbff03dc0723862740a1e25f5d90c9 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Tue, 20 Oct 2020 12:36:23 -0700
Subject: [PATCH 39/89] gnu: Add rust-hyper-rustls-0.17.

* gnu/packages/crates-io.scm (rust-hyper-rustls-0.17): New variable.
---
 gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 02c7fa1982..c3b78967d9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12003,6 +12003,36 @@ HTTPS.")
     (license
      (list license:asl2.0 license:isc license:expat))))
 
+(define-public rust-hyper-rustls-0.17
+  (package
+    (inherit rust-hyper-rustls-0.21)
+    (name "rust-hyper-rustls")
+    (version "0.17.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hyper-rustls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0li9xkzmqd40dbjbl9g0nbf2ka9y0q538ififyd30zsavz3qb7bi"))))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release"
+         "--" "--skip=custom_ca_store" "--skip=client" "--skip=server")
+       #:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-ct-logs" ,rust-ct-logs-0.6)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-hyper" ,rust-hyper-0.12)
+        ("rust-rustls" ,rust-rustls-0.16)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.10)
+        ("rust-webpki" ,rust-webpki-0.21)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.17))
+       #:cargo-development-inputs
+       (("rust-tokio" ,rust-tokio-0.2))))))
+
 (define-public rust-hyper-tls-0.4
   (package
     (name "rust-hyper-tls")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0040-gnu-Add-rust-serde-urlencoded-0.5.patch

From a6ca279971daf9db9d04cbebacdc4b9365ca4e4e Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Tue, 20 Oct 2020 12:42:11 -0700
Subject: [PATCH 40/89] gnu: Add rust-serde-urlencoded-0.5.

* gnu/packages/crates-io.scm (rust-serde-urlencoded-0.5): New variable.
---
 gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c3b78967d9..9fca3ac71f 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -25309,6 +25309,28 @@ for the serde framework.")
     (description "x-www-form-urlencoded meets serde.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-serde-urlencoded-0.5
+  (package
+    (inherit rust-serde-urlencoded-0.6)
+    (name "rust-serde-urlencoded")
+    (version "0.5.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serde_urlencoded" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0nhnzllx5xrij4x17g351n14md691r95mxr7sbpz4sl80n8xcbb4"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-dtoa" ,rust-dtoa-0.4)
+        ("rust-itoa" ,rust-itoa-0.4)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-url" ,rust-url-1))
+       #:cargo-development-inputs
+       (("rust-serde-derive" ,rust-serde-derive-1))))))
+
 (define-public rust-serde-yaml-0.8
   (package
     (name "rust-serde-yaml")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0041-gnu-Add-rust-openssl-0.9.patch

From b8c09483e70866cfe6990121e63fb2d828f30ca9 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 07:09:20 -0700
Subject: [PATCH 41/89] gnu: Add rust-openssl-0.9.

* gnu/packages/crates-io.scm (rust-openssl-0.9): New variable.
* gnu/packages/crates-io.scm (rust-openssl-0.7): Inherit from rust-openssl-0.9.
---
 gnu/packages/crates-io.scm | 31 ++++++++++++++++++++++++++++++-
 1 file changed, 30 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9fca3ac71f..be7ac76140 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17615,10 +17615,39 @@ You probably don't want to link to this crate directly; instead check out the
     (description "OpenSSL bindings.")
     (license license:asl2.0)))
 
-(define-public rust-openssl-0.7
+(define-public rust-openssl-0.9
   (package
     (inherit rust-openssl-0.10)
     (name "rust-openssl")
+    (version "0.9.24")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "openssl" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "11br5b8x1kc5klsn50ihiml82ajyzcwi3lljvrlsm8vlhhlmqq53"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-0.9)
+        ("rust-foreign-types" ,rust-foreign-types-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-openssl-sys" ,rust-openssl-sys-0.9))
+       #:cargo-development-inputs
+       (("rust-data-encoding" ,rust-data-encoding-2)
+        ("rust-hex" ,rust-hex-0.2)
+        ("rust-tempdir" ,rust-tempdir-0.3)
+        ("rust-winapi" ,rust-winapi-0.2)
+        ("rust-ws2-32-sys" ,rust-ws2-32-sys-0.2))))))
+
+(define-public rust-openssl-0.7
+  (package
+    (inherit rust-openssl-0.9)
+    (name "rust-openssl")
     (version "0.7.14")
     (source
      (origin
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0042-gnu-Add-rust-core-foundation-sys-0.2.patch

From ef9fed56058d08af74bf9eb790051e7aaff36eb1 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 07:32:32 -0700
Subject: [PATCH 42/89] gnu: Add rust-core-foundation-sys-0.2.

* gnu/packages/crates-io.scm (rust-core-foundation-sys-0.2): New variable.
---
 gnu/packages/crates-io.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index be7ac76140..e9012df979 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -4821,6 +4821,24 @@ macOS.")
         (base32
          "0fzsw1j9g1x598yhwklg59l15hwzc0pyvs01w9fg2kin4598mjp7"))))))
 
+(define-public rust-core-foundation-sys-0.2
+  (package
+    (inherit rust-core-foundation-sys-0.6)
+    (name "rust-core-foundation-sys")
+    (version "0.2.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "core-foundation-sys" version))
+       (file-name (string-append name "-" version ".crate"))
+       (sha256
+        (base32
+         "13f7f3kblyj6yxcxm74yg84vj9ahaprlc1vgblagmj6bzmzmsnh6"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2))))))
+
 (define-public rust-core-text-13
   (package
     (name "rust-core-text")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0043-WIP-gnu-Add-rust-core-foundation-0.2.patch

From c3ef2484a7f7c4953b59449a10e38095360ec9b8 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 07:34:59 -0700
Subject: [PATCH 43/89] [WIP] gnu: Add rust-core-foundation-0.2.

* gnu/packages/crates-io.scm (rust-core-foundation-0.2): New variable.
---
 gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e9012df979..5ed77561c9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -4787,6 +4787,26 @@ macOS.")
         ("rust-libc" ,rust-libc-0.2)
         ("rust-uuid" ,rust-uuid-0.5))))))
 
+(define-public rust-core-foundation-0.2
+  (package
+    (inherit rust-core-foundation-0.6)
+    (name "rust-core-foundation")
+    (version "0.2.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "core-foundation" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0rvcn7ab5r69wvn7gby745jlpy8pirfywcdxbiypy083s93dggr5"))))
+    (arguments
+     `(#:tests? #f
+       #:cargo-inputs
+       (("rust-core-foundation-sys" ,rust-core-foundation-sys-0.2)
+        ("rust-libc" ,rust-libc-0.2))))))
+
 (define-public rust-core-foundation-sys-0.7
   (package
     (name "rust-core-foundation-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0044-gnu-Add-rust-security-framework-sys-0.1.patch

From 4a24c4959b11c2369207f5431847dbc8b3322982 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 07:40:20 -0700
Subject: [PATCH 44/89] gnu: Add rust-security-framework-sys-0.1.

* gnu/packages/crates-io.scm (rust-security-framework-sys-0.1): New variable.
---
 gnu/packages/crates-io.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5ed77561c9..ea37bfa0c9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -24612,6 +24612,25 @@ macOS and iOS.")
        (("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6)
         ("rust-libc" ,rust-libc-0.2))))))
 
+(define-public rust-security-framework-sys-0.1
+  (package
+    (inherit rust-security-framework-sys-0.2)
+    (name "rust-security-framework-sys")
+    (version "0.1.16")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "security-framework-sys" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1bdy87gvmahiiyfzghsdg2dkhznww3p3d3r676qs0y32hcg648al"))))
+    (arguments
+     `(#:skip-build? #t ; MacOS specific
+       #:cargo-inputs
+       (("rust-core-foundation-sys" ,rust-core-foundation-sys-0.2)
+        ("rust-libc" ,rust-libc-0.2))))))
+
 (define-public rust-selectors-0.22
   (package
     (name "rust-selectors")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0045-gnu-Add-rust-security-framework-0.1.patch

From 272d6eb053386ccbbc0afa132b459f78d45ef391 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 07:42:28 -0700
Subject: [PATCH 45/89] gnu: Add rust-security-framework-0.1.

* gnu/packages/crates-io.scm (rust-security-framework-0.1): New variable.
---
 gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ea37bfa0c9..f7623b40c8 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -24553,6 +24553,34 @@ macOS and iOS.")
        (("rust-hex" ,rust-hex-0.3)
         ("rust-tempdir" ,rust-tempdir-0.3))))))
 
+(define-public rust-security-framework-0.1
+  (package
+    (inherit rust-security-framework-0.2)
+    (name "rust-security-framework")
+    (version "0.1.16")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "security-framework" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0ci39ax08h2ngrl1yf1ra9smivhjs6xarmg7kp6fxracqpllx96z"))))
+    (arguments
+     `(#:skip-build? #t ; MacOS specific
+       #:cargo-inputs
+       (("rust-core-foundation"
+         ,rust-core-foundation-0.2)
+        ("rust-core-foundation-sys"
+         ,rust-core-foundation-sys-0.2)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-security-framework-sys"
+         ,rust-security-framework-sys-0.1))
+       #:cargo-development-inputs
+       (("rust-hex" ,rust-hex-0.2)
+        ("rust-tempdir" ,rust-tempdir-0.3))))))
+
 (define-public rust-security-framework-sys-1
   (package
     (name "rust-security-framework-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0046-WIP-gnu-Add-rust-native-tls-0.1.patch

From ffacac3352a92e17731345984a737432ac5d4ecf Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 07:48:00 -0700
Subject: [PATCH 46/89] [WIP] gnu: Add rust-native-tls-0.1.

* gnu/packages/crates-io.scm (rust-native-tls-0.1): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f7623b40c8..fe42e8a88d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -16121,6 +16121,39 @@ IO of Windows's named pipes.")
      "This package provides a wrapper over a platform's native TLS implementation.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-native-tls-0.1
+  (package
+    (inherit rust-native-tls-0.2)
+    (name "rust-native-tls")
+    (version "0.1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "native-tls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1h7v80nlskyr7b1gsg4ivlpm6pilj6ybgvcwadj7ips3igfblkgp"))))
+    (arguments
+     `(#:skip-build? #t ; openssl?
+       #:tests? #f      ; tests require network access
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-0.2)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-openssl" ,rust-openssl-0.9)
+        ("rust-schannel" ,rust-schannel-0.1)
+        ("rust-security-framework" ,rust-security-framework-0.1)
+        ("rust-security-framework-sys" ,rust-security-framework-sys-0.1)
+        ("rust-tempdir" ,rust-tempdir-0.3))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'find-openssl
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((openssl (assoc-ref inputs "openssl")))
+               (setenv "OPENSSL_DIR" openssl))
+             #t)))))))
+
 (define-public rust-natord-1.0
   (package
     (name "rust-natord")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0047-gnu-Add-rust-slab-0.3.patch

From ad222d6cc5a8d8883f1cd789e9542ba42e67466b Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:01:14 -0700
Subject: [PATCH 47/89] gnu: Add rust-slab-0.3.

* gnu/packages/crates-io.scm (rust-slab-0.3): New variable.
---
 gnu/packages/crates-io.scm | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index fe42e8a88d..99bcb96c36 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26356,6 +26356,23 @@ variants in pure Rust.")
 data type.")
     (license license:expat)))
 
+(define-public rust-slab-0.3
+  (package
+    (inherit rust-slab-0.4)
+    (name "rust-slab")
+    (version "0.3.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (crate-uri "slab" version))
+        (file-name (string-append name "-" version ".crate"))
+        (sha256
+         (base32
+          "08xw8w61zdfn1094qkq1d554vh5wmm9bqdys8gqqxc4sv2pgrd0p"))))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release" "--" "--skip=test_capacity_too_large1")))))
+
 (define-public rust-sleef-sys-0.1
   (package
     (name "rust-sleef-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0048-gnu-Add-rust-smallvec-0.2.patch

From 56e3f7943ae6ff9ee2494667fc5bcdad01f552d7 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:05:05 -0700
Subject: [PATCH 48/89] gnu: Add rust-smallvec-0.2.

* gnu/packages/crates-io.scm (rust-smallvec-0.2): New variable.
---
 gnu/packages/crates-io.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 99bcb96c36..b02fcbfdb7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26503,6 +26503,24 @@ stack.")
        #:cargo-development-inputs
        (("rust-bincode" ,rust-bincode-1))))))
 
+(define-public rust-smallvec-0.2
+  (package
+    (inherit rust-smallvec-0.6)
+    (name "rust-smallvec")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "smallvec" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "04z0bv5pcnwnvij8kfzw56lnib9mjq8bafp120i7q48yvzbbr32c"))))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release" "--" "--skip=tests::test_truncate")))))
+
 (define-public rust-socket2-0.3
   (package
     (name "rust-socket2")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0049-gnu-Add-rust-take-0.1.patch

From b320eb867b17afe49bf9e8c8da89e02d3b618c2f Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:09:55 -0700
Subject: [PATCH 49/89] gnu: Add rust-take-0.1.

* gnu/packages/crates-io.scm (rust-take-0.1): New variable.
---
 gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index b02fcbfdb7..322ad97044 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -28258,6 +28258,30 @@ syntax extension expansion.")
     (description "Send log messages to syslog.")
     (license license:expat)))
 
+(define-public rust-take-0.1
+  (package
+    (name "rust-take")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "take" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1i8p579k9kq21k7pcm4yzbc12xpshl39jfa5c1j6pxf1ia6qcmxi"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/carllerche/take")
+    (synopsis "Container utility for Rust")
+    (description
+     "This package provides the @code{Take} datatype. @code{Take} is a
+@code{Cell} allowing the inner value to be consumed without a mutable
+reference.
+
+In order to maintain safety, it is not possible to get access to the inner
+value without consuming it.")
+    (license `(,license:asl2.0 ,license:expat))))
+
 (define-public rust-take-mut-0.2
   (package
     (name "rust-take-mut")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0050-gnu-Add-rust-lazycell-0.4.patch

From 29d329d7ed601c01ba66302d784d01a21e9a863a Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:13:05 -0700
Subject: [PATCH 50/89] gnu: Add rust-lazycell-0.4.

* gnu/packages/crates-io.scm (rust-lazycell-0.4): New variable.
---
 gnu/packages/crates-io.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 322ad97044..43504d8b2c 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13470,6 +13470,24 @@ requires non-const function calls to be computed.")
      "This package provides a library providing a lazily filled Cell struct.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-lazycell-0.4
+  (package
+    (inherit rust-lazycell-1)
+    (name "rust-lazycell")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "lazycell" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0szgqfl2aw18kn9cf6qqpxxkiw6x6hx9y4r3gklnxn1r8xn304nf"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs (("rust-clippy" ,rust-clippy-0.0))))))
+
 (define-public rust-lexical-core-0.7
   (package
     (name "rust-lexical-core")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0051-gnu-Add-rust-tokio-service-0.1.patch

From 8e5014c99bbe0bf4fea5f8c64553960cf5f2220e Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Fri, 19 Jun 2020 14:57:55 -0700
Subject: [PATCH 51/89] gnu: Add rust-tokio-service-0.1.

* gnu/packages/crates-io.scm (rust-tokio-service-0.1): New variable.
---
 gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 43504d8b2c..2fc2f5cbef 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30166,6 +30166,31 @@ using Rustls.")
         ("rust-tokio" ,rust-tokio-0.2)
         ("rust-webpki-roots" ,rust-webpki-roots-0.17))))))
 
+(define-public rust-tokio-service-0.1
+  (package
+    (name "rust-tokio-service")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-service" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0qjinhax0y164kxp887mj8c5ih9829kdrnrb2ramzwg0fz825ni4"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs (("rust-futures" ,rust-futures-0.1))))
+    (home-page
+     "https://github.com/tokio-rs/tokio-service")
+    (synopsis
+     "Service trait for Tokio")
+    (description
+     "This package provids the core @code{Service} trait for Tokio.  It has
+been deprecated in favor of the tower crate.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-tokio-signal-0.2
   (package
     (name "rust-tokio-signal")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0052-gnu-Add-rust-tokio-proto-0.1.patch

From d0ec8dfeaf5a06271ce5baaf7b056665322bd18e Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:16:00 -0700
Subject: [PATCH 52/89] gnu: Add rust-tokio-proto-0.1.

* gnu/packages/crates-io.scm (rust-tokio-proto-0.1): New variables.
---
 gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2fc2f5cbef..25e9ff652a 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30008,6 +30008,45 @@ backed by OpenSSL.")
 futures.")
     (license license:expat)))
 
+(define-public rust-tokio-proto-0.1
+  (package
+    (name "rust-tokio-proto")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-proto" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "12833cckniq3y83zjhk2ayv6qpr99d4mj1h3hz266g1mh6p4gfwg"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.3)
+        ("rust-net2" ,rust-net2-0.2)
+        ("rust-rand" ,rust-rand-0.3)
+        ("rust-slab" ,rust-slab-0.3)
+        ("rust-smallvec" ,rust-smallvec-0.2)
+        ("rust-take" ,rust-take-0.1)
+        ("rust-tokio-core" ,rust-tokio-core-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-service" ,rust-tokio-service-0.1))
+       #:cargo-development-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-env-logger" ,rust-env-logger-0.3)
+        ("rust-lazycell" ,rust-lazycell-0.4)
+        ("rust-mio" ,rust-mio-0.6))))
+    (home-page "https://tokio.rs")
+    (synopsis "Clients and servers for the Tokio platform")
+    (description
+     "This package makes it easy to implement clients and servers for
+request/response oriented protocols.  It takes a transport and provides the
+request/response API.  It is a part of the Tokio platform.")
+    (license `(,license:asl2.0 ,license:expat))))
+
 (define-public rust-tokio-reactor-0.1
   (package
     (name "rust-tokio-reactor")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0053-gnu-Add-rust-pretty-env-logger-0.2.patch

From 7a8b8536d8842def250e2514000bcbf698d73008 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:23:12 -0700
Subject: [PATCH 53/89] gnu: Add rust-pretty-env-logger-0.2.

* gnu/packages/crates-io.scm (rust-pretty-env-logger-0.2): New variable.
---
 gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 25e9ff652a..0497480de8 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -20022,6 +20022,28 @@ replacements, adding colorful diffs.")
         ("rust-chrono" ,rust-chrono-0.4)
         ("rust-env-logger" ,rust-env-logger-0.6))))))
 
+(define-public rust-pretty-env-logger-0.2
+  (package
+    (inherit rust-pretty-env-logger-0.3)
+    (name "rust-pretty-env-logger")
+    (version "0.2.5")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (crate-uri "pretty_env_logger" version))
+        (file-name
+         (string-append name "-" version ".tar.gz"))
+        (sha256
+         (base32
+          "0a0c53plsr4abw0y1iyjxs0d64f0a6dn48464a2rp21f0iiix3gd"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-ansi-term" ,rust-ansi-term-0.11)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-env-logger" ,rust-env-logger-0.5)
+        ("rust-log" ,rust-log-0.4))))))
+
 (define-public rust-prettytable-rs-0.8
   (package
     (name "rust-prettytable-rs")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0054-gnu-Add-rust-spmc-0.2.patch

From 14e9c45ea7e49b54086d45d01a094bdf6ecc0757 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:29:11 -0700
Subject: [PATCH 54/89] gnu: Add rust-spmc-0.2.

* gnu/packages/crates-io.scm (rust-spmc-0.2): New variable.
---
 gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0497480de8..1032134f9c 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26770,6 +26770,26 @@ initializers are available.")
     (description "Simple SPMC channel")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-spmc-0.2
+  (package
+    (inherit rust-spmc-0.3)
+    (name "rust-spmc")
+    (version "0.2.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "spmc" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1nhbjc65avbb4nffk6b49spbv7rsmmnrppj2qnx39mhwi57spgiw"))))
+    (arguments
+     `(#:tests? #f ;; tests hang
+       #:cargo-development-inputs
+       (("rust-loom" ,rust-loom-0.2))))
+    ;; This package is broken before 0.3
+    ;; Only included for pijul@1
+    (properties `((hidden? . #t)))))
+
 (define-public rust-spsc-buffer-0.1
   (package
     (name "rust-spsc-buffer")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0055-gnu-Add-rust-relay-0.1.patch

From ec64fd5b75e20fee13ff3ee13637772072781409 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:41:00 -0700
Subject: [PATCH 55/89] gnu: Add rust-relay-0.1.

* gnu/packages/crates-io.scm (rust-relay-0.1): New variable.
---
 gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 1032134f9c..b48277cbd9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22390,6 +22390,34 @@ uses finite automata and guarantees linear time matching on all inputs.")
     (description "This package provides portable, relative paths for Rust.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-relay-0.1
+  (package
+    (name "rust-relay")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "relay" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "16j8y57rjrfy3h5xfi9fwfbjs1nka3iifi52rvp9szldd21f6xhm"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1))))
+    (home-page "https://github.com/seanmonstar/relay")
+    (synopsis "Lightweight Future channel for passing data among tasks")
+    (description
+     "This package provides a lightweight channel using @code{Future}.  A
+relay channel does not implement @code{Send}, and so is not meant for
+synchronizing between threads.  Instead, its used to send message between
+tasks that live in the same thread.
+
+It is similar to the @code{oneshot} channel in the futures crate, but since it
+is not meant for sending across threads, it performs about twice as fast.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-remove-dir-all-0.5
   (package
     (name "rust-remove-dir-all")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0056-gnu-Add-rust-try-lock-0.1.patch

From 2bf496f408d41865410fec7d703c9f520dff32ea Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:58:07 -0700
Subject: [PATCH 56/89] gnu: Add rust-try-lock-0.1.

* gnu/packages/crates-io.scm (rust-try-lock-0.1): New variable.
---
 gnu/packages/crates-io.scm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index b48277cbd9..101e25f952 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31493,6 +31493,20 @@ other queries.")
      "This package provides a lightweight atomic lock.")
     (license license:expat)))
 
+(define-public rust-try-lock-0.1
+  (package
+    (inherit rust-try-lock-0.2)
+    (name "rust-try-lock")
+    (version "0.1.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (crate-uri "try-lock" version))
+        (file-name (string-append name "-" version ".crate"))
+        (sha256
+         (base32
+          "1hp76pyzyxhcxxjacf083gpp6gf8cqwkg188yy02i2a3axqs8apf"))))))
+
 (define-public rust-trybuild-1
   (package
     (name "rust-trybuild")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0057-gnu-Add-rust-want-0.0.patch

From 9562fba86c72d06dedfd51dcbb6a25e98754d18c Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:44:44 -0700
Subject: [PATCH 57/89] gnu: Add rust-want-0.0.

* gnu/packages/crates-io.scm (rust-want-0.0): New variable.
---
 gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 101e25f952..47c8835ed9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32921,6 +32921,30 @@ result.")
     (description "Detect when another Future wants a result.")
     (license license:expat)))
 
+(define-public rust-want-0.0
+  (package
+    (inherit rust-want-0.2)
+    (name "rust-want")
+    (version "0.0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "want" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1l9mbh4a0r2m3s8nckhy1vz9qm6lxsswlgxpimf4pyjkcyb9spd0"))))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release"
+         "--"
+         "--skip=tests::want_notify_0"
+         "--skip=tests::want_notify_moving_tasks"
+         "--skip=tests::stress")
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-try-lock" ,rust-try-lock-0.1))))))
+
 (define-public rust-wasi-0.9
   (package
     (name "rust-wasi")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0058-gnu-Add-rust-hyper-0.11.patch

From 9ebc609f40e6a0a5d30d39848a09ff181a68c6f0 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 08:31:07 -0700
Subject: [PATCH 58/89] gnu: Add rust-hyper-0.11.

* gnu/packages/crates-io.scm (rust-hyper-0.11): New variable.
---
 gnu/packages/crates-io.scm | 40 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 47c8835ed9..ae04200442 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -11972,6 +11972,46 @@ SystemTime}}.")
         ("rust-tokio-mockstream" ,rust-tokio-mockstream-1)
         ("rust-url" ,rust-url-1))))))
 
+(define-public rust-hyper-0.11
+  (package
+    (inherit rust-hyper-0.12)
+    (name "rust-hyper")
+    (version "0.11.27")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hyper" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1msrx9fgiiv7vl4kryn2zgahbqndph5szrgqvm6fjhfk1759199l"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.9)
+        ("rust-bytes" ,rust-bytes-0.4)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-futures-cpupool" ,rust-futures-cpupool-0.1)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-httparse" ,rust-httparse-1)
+        ("rust-iovec" ,rust-iovec-0.1)
+        ("rust-language-tags" ,rust-language-tags-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-net2" ,rust-net2-0.2)
+        ("rust-percent-encoding" ,rust-percent-encoding-1.0)
+        ("rust-relay" ,rust-relay-0.1)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-tokio-core" ,rust-tokio-core-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-proto" ,rust-tokio-proto-0.1)
+        ("rust-tokio-service" ,rust-tokio-service-0.1)
+        ("rust-unicase" ,rust-unicase-2)
+        ("rust-want" ,rust-want-0.0))
+       #:cargo-development-inputs
+       (("rust-num-cpus" ,rust-num-cpus-1)
+        ("rust-pretty-env-logger" ,rust-pretty-env-logger-0.2)
+        ("rust-spmc" ,rust-spmc-0.2)
+        ("rust-url" ,rust-url-1))))))
+
 (define-public rust-hyper-old-types-0.11
   (package
     (name "rust-hyper-old-types")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0059-WIP-gnu-Add-rust-tokio-tls-0.1.patch

From 41fc4547ef2f2457c4f384a005490c041f8f9cef Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:12:18 -0700
Subject: [PATCH 59/89] [WIP] gnu: Add rust-tokio-tls-0.1.

* gnu/packages/crates-io.scm (rust-tokio-tls-0.1): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ae04200442..d88916ce51 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30612,6 +30612,39 @@ pool.")
 implementation of TLS for nonblocking I/O streams.")
     (license license:expat)))
 
+(define-public rust-tokio-tls-0.1
+  (package
+    (inherit rust-tokio-tls-0.3)
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-tls" version))
+       (file-name
+        (string-append
+         (package-name rust-tokio-tls-0.3) "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "04yrdscn8m9qza8ms09pqipbmj6x2q64jgm5n3ipy4b0wl24nbvp"))))
+    (arguments
+     `(#:skip-build? #t ; openssl?
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-native-tls" ,rust-native-tls-0.1)
+        ("rust-tokio-core" ,rust-tokio-core-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-proto" ,rust-tokio-proto-0.1))
+       #:cargo-development-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-env-logger" ,rust-env-logger-0.4)
+        ("rust-hyper" ,rust-hyper-0.11)
+        ("rust-openssl" ,rust-openssl-0.9)
+        ("rust-schannel" ,rust-schannel-0.1)
+        ("rust-security-framework"
+         ,rust-security-framework-0.1)
+        ("rust-tokio-service" ,rust-tokio-service-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))))))
+
 (define-public rust-tokio-trace-core-0.2
   (package
     (name "rust-tokio-trace-core")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0060-gnu-Add-rust-typed-headers-0.1.patch

From a41e1e2b0bae4987fe6dc83d8292df80677f36b3 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:19:35 -0700
Subject: [PATCH 60/89] gnu: Add rust-typed-headers-0.1.

* gnu/packages/crates-io.scm (rust-typed-headers-0.1): New variable.
---
 gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index d88916ce51..49495e5620 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31674,6 +31674,27 @@ other queries.")
 deserialization.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-typed-headers-0.1
+  (package
+    (inherit rust-typed-headers-0.2)
+    (name "rust-typed-headers")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "typed-headers" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0g40nlq5iw0zxhwb7nfmfbr9m86abgwwhxwhzrm10nfq6bsmlvxx"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bytes" ,rust-bytes-0.4)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-mime" ,rust-mime-0.3))))))
+
 (define-public rust-typemap-0.3
   (package
     (name "rust-typemap")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0061-gnu-Add-rust-enum-as-inner-0.2.patch

From 2642ec2b52026ac8fea74d01119b4af714d5beb1 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:29:10 -0700
Subject: [PATCH 61/89] gnu: Add rust-enum-as-inner-0.2.

* gnu/packages/crates-io.scm (rust-enum-as-inner-0.2): New variable.
---
 gnu/packages/crates-io.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 49495e5620..70c0c86cc6 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -7839,6 +7839,25 @@ Standard.")
 accessor functions on enums.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-enum-as-inner-0.2
+  (package
+    (inherit rust-enum-as-inner-0.3)
+    (name "rust-enum-as-inner")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "enum-as-inner" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0zg3h7k3g1z7a9ayqy63sk302d4dg5g2h274ddv80mj4jxn2cn1x"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+        ("rust-quote" ,rust-quote-0.6)
+        ("rust-syn" ,rust-syn-0.15))))))
+
 (define-public rust-env-logger-0.7
   (package
     (name "rust-env-logger")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0062-gnu-Update-rust-tokio-executor-0.1-to-0.1.8.patch

From f55bd9cc96d240782ac9834dbe6067a99d5f4d08 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:34:42 -0700
Subject: [PATCH 62/89] gnu: Update rust-tokio-executor-0.1 to 0.1.8.

* gnu/packages/crates-io.scm (rust-tokio-executor-0.1): Update it.
---
 gnu/packages/crates-io.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 70c0c86cc6..665cad0bba 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -29813,7 +29813,7 @@ the current thread.")
 (define-public rust-tokio-executor-0.1
   (package
     (name "rust-tokio-executor")
-    (version "0.1.7")
+    (version "0.1.8")
     (source
      (origin
        (method url-fetch)
@@ -29822,7 +29822,7 @@ the current thread.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0pjmgpg58k3hf5q9w6xjljsv8xy66lf734qnfwsc0g3pq3349sl3"))))
+         "1b5n6barppmhfyb1m2cvswp7nqvyrr3lb0kk545my75hdl7fw9qg"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0063-gnu-Update-rust-tokio-0.1-to-0.1.22.patch

From 5d18a8636bbad25f316438587c12ebc77fc47bbb Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:37:39 -0700
Subject: [PATCH 63/89] gnu: Update rust-tokio-0.1 to 0.1.22.

* gnu/packages/crates-io.scm (rust-tokio-0.1): Update it.
---
 gnu/packages/crates-io.scm | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 665cad0bba..f7ebc6893d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -29602,7 +29602,7 @@ backed applications.")
 (define-public rust-tokio-0.1
   (package
     (name "rust-tokio")
-    (version "0.1.21")
+    (version "0.1.22")
     (source
      (origin
        (method url-fetch)
@@ -29611,14 +29611,13 @@ backed applications.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "11ra8jp3fj70a2zrqmd6as7wgpwiiyzjf50gz89i8r7wpksgqbzc"))))
+         "1xhaadfmm6m37f79xv5020gc3np9wqza3bq95ymp522qpfsw02as"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-bytes" ,rust-bytes-0.4)
         ("rust-futures" ,rust-futures-0.1)
         ("rust-mio" ,rust-mio-0.6)
-        ("rust-miow" ,rust-miow-0.3)
         ("rust-num-cpus" ,rust-num-cpus-1)
         ("rust-tokio-codec" ,rust-tokio-codec-0.1)
         ("rust-tokio-current-thread" ,rust-tokio-current-thread-0.1)
@@ -29630,9 +29629,9 @@ backed applications.")
         ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
         ("rust-tokio-threadpool" ,rust-tokio-threadpool-0.1)
         ("rust-tokio-timer" ,rust-tokio-timer-0.2)
-        ("rust-tokio-trace-core" ,rust-tokio-trace-core-0.2)
         ("rust-tokio-udp" ,rust-tokio-udp-0.1)
-        ("rust-tokio-uds" ,rust-tokio-uds-0.2))
+        ("rust-tokio-uds" ,rust-tokio-uds-0.2)
+        ("rust-tracing-core" ,rust-tracing-core-0.1))
        #:cargo-development-inputs
        (("rust-env-logger" ,rust-env-logger-0.5)
         ("rust-flate2" ,rust-flate2-1)
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0064-gnu-Add-rust-trust-dns-proto-0.7.patch

From 3d96871e8b6091a71c2a8301479f03b40048dccb Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:44:09 -0700
Subject: [PATCH 64/89] gnu: Add rust-trust-dns-proto-0.7.

* gnu/packages/crates-io.scm (rust-trust-dns-proto-0.7): New variable.
---
 gnu/packages/crates-io.scm | 41 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f7ebc6893d..5f011acb13 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31375,6 +31375,47 @@ extension for the Trust-DNS client to use tokio-openssl for TLS.")
 foundational DNS protocol library for all Trust-DNS projects.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-trust-dns-proto-0.7
+  (package
+    (inherit rust-trust-dns-proto-0.19)
+    (name "rust-trust-dns-proto")
+    (version "0.7.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-proto" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0099dm57nnizx4apik9sh3mnvr7rp9mivc903v8xss13dkgynnam"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1)
+        ("rust-data-encoding" ,rust-data-encoding-2)
+        ("rust-enum-as-inner" ,rust-enum-as-inner-0.2)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-idna" ,rust-idna-0.1)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-rand" ,rust-rand-0.6)
+        ("rust-ring" ,rust-ring-0.14)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-smallvec" ,rust-smallvec-0.6)
+        ("rust-socket2" ,rust-socket2-0.3)
+        ("rust-tokio-executor" ,rust-tokio-executor-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-reactor" ,rust-tokio-reactor-0.1)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-tokio-timer" ,rust-tokio-timer-0.2)
+        ("rust-tokio-udp" ,rust-tokio-udp-0.1)
+        ("rust-untrusted" ,rust-untrusted-0.6)
+        ("rust-url" ,rust-url-1))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-tokio" ,rust-tokio-0.1))))))
+
 (define-public rust-trust-dns-resolver-0.19
   (package
     (name "rust-trust-dns-resolver")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0065-gnu-Add-rust-trust-dns-https-0.3.patch

From 1d7d529094c3337c686b360f234873e63a8522a9 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 09:55:44 -0700
Subject: [PATCH 65/89] gnu: Add rust-trust-dns-https-0.3.

* gnu/packages/crates-io.scm (rust-trust-dns-https-0.3): New variable.
---
 gnu/packages/crates-io.scm | 40 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5f011acb13..a07d8ef917 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31276,6 +31276,46 @@ application authors using tracing to instrument their applications.")
 extension for the Trust-DNS client to use DNS over HTTPS.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-trust-dns-https-0.3
+  (package
+    (inherit rust-trust-dns-https-0.19)
+    (name "rust-trust-dns-https")
+    (version "0.3.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-https" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "14ps1fxngm8d3ynp9jf86zrqbyzjzh62v5grwrqb1q0xhbz98vv1"))))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release"
+         "--"
+         "--skip=https_client_stream::tests::test_https_cloudflare")
+       #:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-data-encoding" ,rust-data-encoding-2)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-h2" ,rust-h2-0.1)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-rustls" ,rust-rustls-0.15)
+        ("rust-tokio-executor" ,rust-tokio-executor-0.1)
+        ("rust-tokio-reactor" ,rust-tokio-reactor-0.1)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.9)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.7)
+        ("rust-trust-dns-rustls" ,rust-trust-dns-rustls-0.6)
+        ("rust-typed-headers" ,rust-typed-headers-0.1)
+        ("rust-webpki" ,rust-webpki-0.19)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.16))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-tokio" ,rust-tokio-0.1))))))
+
 (define-public rust-trust-dns-native-tls-0.19
   (package
     (name "rust-trust-dns-native-tls")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0066-gnu-Add-rust-tokio-tls-0.2.patch

From 58587dc86cebb9ecdaf1ed2ed46f57bafa00c0aa Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Fri, 19 Jun 2020 15:25:12 -0700
Subject: [PATCH 66/89] gnu: Add rust-tokio-tls-0.2.

* gnu/packages/crates-io.scm (rust-tokio-tls-0.2): New variable.
* gnu/packages/crates-io.scm (rust-tokio-tls-0.1): Inherit from rust-tokio-tls-0.2.
---
 gnu/packages/crates-io.scm | 31 ++++++++++++++++++++++++++++++-
 1 file changed, 30 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a07d8ef917..2cd5ee8ddb 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30630,9 +30630,38 @@ pool.")
 implementation of TLS for nonblocking I/O streams.")
     (license license:expat)))
 
-(define-public rust-tokio-tls-0.1
+(define-public rust-tokio-tls-0.2
   (package
     (inherit rust-tokio-tls-0.3)
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-tls" version))
+       (file-name
+        (string-append
+         (package-name rust-tokio-tls-0.3) "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0z0gmvv7jrpan6y42p5f5wd48rqcd96igp592w1c5cr573c8qjrm"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-tokio-io" ,rust-tokio-io-0.1))
+       #:cargo-development-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-env-logger" ,rust-env-logger-0.5)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-schannel" ,rust-schannel-0.1)
+        ("rust-security-framework"
+         ,rust-security-framework-0.3)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))))))
+
+(define-public rust-tokio-tls-0.1
+  (package
+    (inherit rust-tokio-tls-0.2)
     (version "0.1.4")
     (source
      (origin
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0067-gnu-Add-rust-trust-dns-native-tls-0.6.patch

From 9533d96343815f903e5b020cf4c6a4c5f2341c26 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 10:07:17 -0700
Subject: [PATCH 67/89] gnu: Add rust-trust-dns-native-tls-0.6.

* gnu/packages/crates-io.scm (rust-trust-dns-native-tls-0.6): New variable.
---
 gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2cd5ee8ddb..4a280b8502 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31371,6 +31371,41 @@ extension for the Trust-DNS client to use DNS over HTTPS.")
 extension for the Trust-DNS client to use native-tls for TLS.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-trust-dns-native-tls-0.6
+  (package
+    (inherit rust-trust-dns-native-tls-0.19)
+    (name "rust-trust-dns-native-tls")
+    (version "0.6.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-native-tls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0v18xwcy2vz57gnp1a6wx52c4zpwlakpr75ydmai8gc0h2kfzd7l"))))
+    (native-inputs
+     `(("openssl" ,openssl)
+       ("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release"
+         "--" "--skip=tests::test_tls_client_stream_ipv4")
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-tokio-tls" ,rust-tokio-tls-0.2)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.7))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'find-openssl
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((openssl (assoc-ref inputs "openssl")))
+               (setenv "OPENSSL_DIR" openssl))
+             #t)))))))
+
 (define-public rust-trust-dns-openssl-0.19
   (package
     (name "rust-trust-dns-openssl")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0068-gnu-Add-rust-tokio-openssl-0.3.patch

From 277f04d62ebd795169425d6f1977f7fb5d9de035 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 10:18:52 -0700
Subject: [PATCH 68/89] gnu: Add rust-tokio-openssl-0.3.

* gnu/packages/crates-io.scm (rust-tokio-openssl-0.3): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 4a280b8502..b25aaba742 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30096,6 +30096,39 @@ Tokio.")
 backed by OpenSSL.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-tokio-openssl-0.3
+  (package
+    (inherit rust-tokio-openssl-0.4)
+    (name "rust-tokio-openssl")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-openssl" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "19zx58jz0vkxppa3pmqnq0b90mqsycikr5nrcy6i1bkhn53647bp"))))
+    (native-inputs
+     `(("openssl" ,openssl)
+       ("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release" "--" "--skip=fetch_google")
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-tokio-io" ,rust-tokio-io-0.1))
+       #:cargo-development-inputs
+       (("rust-tokio" ,rust-tokio-0.1))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'find-openssl
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((openssl (assoc-ref inputs "openssl")))
+               (setenv "OPENSSL_DIR" openssl))
+             #t)))))))
+
 (define-public rust-tokio-process-0.2
   (package
     (name "rust-tokio-process")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0069-gnu-Add-rust-trust-dns-openssl-0.6.patch

From dc04f6c1552e225830d3015f9d4ddeda8c89d655 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 10:25:30 -0700
Subject: [PATCH 69/89] gnu: Add rust-trust-dns-openssl-0.6.

* gnu/packages/crates-io.scm (rust-trust-dns-openssl-0.6): New variable.
---
 gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index b25aaba742..33b6ac3b90 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31468,6 +31468,40 @@ extension for the Trust-DNS client to use native-tls for TLS.")
 extension for the Trust-DNS client to use tokio-openssl for TLS.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-trust-dns-openssl-0.6
+  (package
+    (inherit rust-trust-dns-openssl-0.19)
+    (name "rust-trust-dns-openssl")
+    (version "0.6.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-openssl" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0zwx2bsf1rbyjr6l2c3vi24z7414n4b5qiymva9dmbvwxnqqyk1j"))))
+    (native-inputs
+     `(("openssl" ,openssl)
+       ("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-tokio-openssl" ,rust-tokio-openssl-0.3)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.7))
+       #:cargo-development-inputs
+       (("rust-openssl" ,rust-openssl-0.10)
+        ("rust-tokio" ,rust-tokio-0.1))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'find-openssl
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((openssl (assoc-ref inputs "openssl")))
+               (setenv "OPENSSL_DIR" openssl))
+             #t)))))))
+
 (define-public rust-trust-dns-proto-0.19
   (package
     (name "rust-trust-dns-proto")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0070-gnu-Put-rust-trust-dns-rustls-0.19-in-alphabetical-o.patch

From 6a9752fbe4f26e5f8480e56d33a70937c1611775 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 10:45:58 -0700
Subject: [PATCH 70/89] gnu: Put rust-trust-dns-rustls-0.19 in alphabetical
 order.

* gnu/packages/crates-io.scm (rust-trust-dns-rustls-0.19): Alphabetize it.
---
 gnu/packages/crates-io.scm | 68 ++++++++++++++++----------------------
 1 file changed, 29 insertions(+), 39 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 33b6ac3b90..a6728fdd5e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31636,36 +31636,6 @@ and AsyncResolver for supported resolution types.  The Client can be used for
 other queries.")
     (license (list license:expat license:asl2.0))))
 
-(define-public rust-trust-dns-rustls-0.19
-  (package
-    (name "rust-trust-dns-rustls")
-    (version "0.19.5")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (crate-uri "trust-dns-rustls" version))
-       (file-name (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32
-         "1hj4fx2x4ncj7v8pf6bbn7634zq76hjigm1s2h6b6yjzzmz4yprn"))))
-    (build-system cargo-build-system)
-    (arguments
-     `(#:cargo-inputs
-       (("rust-futures" ,rust-futures-0.3)
-        ("rust-log" ,rust-log-0.4)
-        ("rust-rustls" ,rust-rustls-0.17)
-        ("rust-tokio" ,rust-tokio-0.2)
-        ("rust-tokio-rustls" ,rust-tokio-rustls-0.13)
-        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19)
-        ("rust-webpki" ,rust-webpki-0.21))
-       #:cargo-development-inputs
-       (("rust-openssl" ,rust-openssl-0.10))))
-    (home-page "http://www.trust-dns.org/index.html")
-    (synopsis "rustls extension for the Trust-DNS client")
-    (description "Trust-DNS is a safe and secure DNS library.  This is an
-extension for the Trust-DNS client to use rustls for TLS.")
-    (license (list license:expat license:asl2.0))))
-
 (define-public rust-trust-dns-resolver-0.11
   (package
     (inherit rust-trust-dns-resolver-0.19)
@@ -31705,16 +31675,36 @@ extension for the Trust-DNS client to use rustls for TLS.")
        (("rust-env-logger" ,rust-env-logger-0.6)
         ("rust-tokio" ,rust-tokio-0.1)
         ("rust-tokio-io" ,rust-tokio-io-0.1))))))
+
+(define-public rust-trust-dns-rustls-0.19
+  (package
+    (name "rust-trust-dns-rustls")
+    (version "0.19.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-rustls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1hj4fx2x4ncj7v8pf6bbn7634zq76hjigm1s2h6b6yjzzmz4yprn"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-rustls" ,rust-rustls-0.17)
+        ("rust-tokio" ,rust-tokio-0.2)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.13)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19)
+        ("rust-webpki" ,rust-webpki-0.21))
+       #:cargo-development-inputs
+       (("rust-openssl" ,rust-openssl-0.10))))
     (home-page "http://www.trust-dns.org/index.html")
-    (synopsis
-     "Trust-DNS is a safe and secure DNS library")
-    (description
-     "Trust-DNS is a safe and secure DNS library.  This Resolver library uses
-the Client library to perform all DNS queries.  The Resolver is intended to be
-a high-level library for any DNS record resolution see Resolver and
-AsyncResolver for supported resolution types.  The Client can be used for
-other queries.")
-    (license (list license:asl2.0 license:expat))))
+    (synopsis "Rustls extension for the Trust-DNS client")
+    (description "Trust-DNS is a safe and secure DNS library.  This is an
+extension for the Trust-DNS client to use rustls for TLS.")
+    (license (list license:expat license:asl2.0))))
 
 (define-public rust-trust-dns-rustls-0.6
   (package
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0071-gnu-Add-rust-ring-0.14.patch

From dab89791754da67cc27717cc06aecc1e05382aab Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 11:28:20 -0700
Subject: [PATCH 71/89] gnu: Add rust-ring-0.14.

* gnu/packages/crates-io.scm (rust-ring-0.14): New variable.
---
 gnu/packages/crates-io.scm | 29 ++++++++++++++++++++++++++++-
 1 file changed, 28 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a6728fdd5e..9c4791faaa 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22674,8 +22674,35 @@ functionality as retain but gives mutable borrow to the predicate.")
     (description "This package provided safe, fast, small crypto using Rust.")
     (license (list license:isc license:openssl))))
 
+(define-public rust-ring-0.14
+  (package
+    (inherit rust-ring-0.16)
+    (name "rust-ring")
+    (version "0.14.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "ring" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0g091akf4dpg9qj05z3gc4nlrs57mjj2bqab98gaqp79wf3c2ss2"))))
+    (arguments
+     `(#:tests? #f ; 10/12 failing
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-spin" ,rust-spin-0.5)
+        ("rust-untrusted" ,rust-untrusted-0.6)
+        ("rust-web-sys" ,rust-web-sys-0.3)
+        ("rust-winapi" ,rust-winapi-0.3)
+        ;; build dependencies
+        ("rust-cc" ,rust-cc-1))
+       #:cargo-development-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-wasm-bindgen-test" ,rust-wasm-bindgen-test-0.2))))))
+
 (define-public rust-ring-0.13
-  (package/inherit rust-ring-0.16
+  (package/inherit rust-ring-0.14
     (name "rust-ring")
     (version "0.13.5")
     (source
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0072-gnu-Add-rust-sct-0.5.patch

From 221fc9f44784aa1c868ee7291ac7fa8b3e38c387 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 11:53:22 -0700
Subject: [PATCH 72/89] gnu: Add rust-sct-0.5.

* gnu/packages/crates-io.scm (rust-sct-0.5): New variable.
* gnu/packages/crates-io.scm (rust-sct-0.3): Inherit from rust-sct-0.5.
---
 gnu/packages/crates-io.scm | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9c4791faaa..dab2547f47 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -24596,8 +24596,27 @@ Pwrite traits from the scroll crate.")
     (description "Certificate transparency SCT verification library")
     (license (list license:asl2.0 license:isc license:expat))))
 
+(define-public rust-sct-0.5
+  (package
+    (inherit rust-sct-0.6)
+    (name "rust-sct")
+    (version "0.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sct" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1fb9ym5bwswx01yyggn7v2vfryih4vnqpp4r4ssv3qaqpn7xynig"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-ring" ,rust-ring-0.14)
+        ("rust-untrusted" ,rust-untrusted-0.6))
+       #:cargo-development-inputs
+       (("rust-cc" ,rust-cc-1))))))
+
 (define-public rust-sct-0.3
-  (package/inherit rust-sct-0.6
+  (package/inherit rust-sct-0.5
     (name "rust-sct")
     (version "0.3.0")
     (source
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0073-gnu-Add-rust-webpki-roots-0.16.patch

From 4749fff629f3765ca76595e8f41f364696dd04c0 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 11:58:08 -0700
Subject: [PATCH 73/89] gnu: Add rust-webpki-roots-0.16.

* gnu/packages/crates-io.scm (rust-webpki-roots-0.16): New variable.
* gnu/packages/crates-io.scm (rust-webpki-roots-0.14): Inherit from rust-webpki-roots-0.16.
---
 gnu/packages/crates-io.scm | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index dab2547f47..fa3a977d40 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33887,8 +33887,24 @@ with webpki.")
       (sha256
        (base32 "12vi8dh0yik0h4f0b9dnlw5i3gxyky7iblbksh6zcq4xvlvswqm2"))))))
 
+(define-public rust-webpki-roots-0.16
+  (package/inherit rust-webpki-roots-0.17
+    (name "rust-webpki-roots")
+    (version "0.16.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "webpki-roots" version))
+      (file-name (string-append name "-" version ".tar.gz"))
+      (sha256
+       (base32 "03ny02mwqdgd2ff23k03kbwr2rrcaymxhp7jcjjikfh340hs83y1"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-untrusted" ,rust-untrusted-0.6)
+        ("rust-webpki" ,rust-webpki-0.19))))))
+
 (define-public rust-webpki-roots-0.14
-  (package/inherit rust-webpki-roots-0.18
+  (package/inherit rust-webpki-roots-0.16
     (name "rust-webpki-roots")
     (version "0.14.0")
     (source
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0074-gnu-Add-rust-webpki-0.19.patch

From 8be812d968be6e0a62187905fa314abd1fcb438e Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 12:04:36 -0700
Subject: [PATCH 74/89] gnu: Add rust-webpki-0.19.

* gnu/packages/crates-io.scm (rust-webpki-0.19): New variable.
* gnu/packages/crates-io.scm (rust-webpki-0.18): Inherit from rust-webpki-0.19.
---
 gnu/packages/crates-io.scm | 25 ++++++++++++++++++++++---
 1 file changed, 22 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index fa3a977d40..370a69dca2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33806,8 +33806,28 @@ attribute that is not in the shared backend crate.")
 Verification.")
     (license license:isc)))
 
-(define-public rust-webpki-0.18
+(define-public rust-webpki-0.19
   (package/inherit rust-webpki-0.21
+    (name "rust-webpki")
+    (version "0.19.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "webpki" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "10nhyxlqsa4caxlxrijm5h79rdg6ld8hqy78ldjnnfhaj3biqzjg"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f ; Missing some test files
+       #:cargo-inputs
+       (("rust-ring" ,rust-ring-0.14)
+        ("rust-untrusted" ,rust-untrusted-0.6))
+       #:cargo-development-inputs
+       (("rust-base64" ,rust-base64-0.9))))))
+
+(define-public rust-webpki-0.18
+  (package/inherit rust-webpki-0.19
     (name "rust-webpki")
     (version "0.18.1")
     (source
@@ -33817,10 +33837,9 @@ Verification.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "0zx1v8afa4ig97dyqfrnlj5i7pib6dnfw88qn2iiqhfq2rrrdmqp"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
-       (("rust-ring" ,rust-ring-0.13)
+       (("rust-ring" ,rust-ring-0.14)
         ("rust-untrusted" ,rust-untrusted-0.6))
        #:cargo-development-inputs
        (("rust-base64" ,rust-base64-0.9))))))
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0075-gnu-Add-rust-rustls-0.15.patch

From e2b3b64cd7ee88dfc0629d4a017f614910a2e0b9 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 12:42:56 -0700
Subject: [PATCH 75/89] gnu: Add rust-rustls-0.15.

* gnu/packages/crates-io.scm (rust-rustls-0.15): New variable.
* gnu/packages/crates-io.scm (rust-rustls-0.12): Inherit from rust-rustls-0.15.
---
 gnu/packages/crates-io.scm | 33 ++++++++++++++++++++++++++++++++-
 1 file changed, 32 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 370a69dca2..26a958d274 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23880,8 +23880,39 @@ Rust.")
         ("rust-tempfile" ,rust-tempfile-3)
         ("rust-webpki-roots" ,rust-webpki-roots-0.17))))))
 
+(define-public rust-rustls-0.15
+  (package
+    (inherit rust-rustls-0.16)
+    (name "rust-rustls")
+    (version "0.15.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rustls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0vh93fhqfbn4ysw4xzkpkpqdz36xixz4mhs1qllgldfq5iay6wgj"))))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release"
+         "--"
+         "--skip=msgs::message_test::test_read_fuzz_corpus"
+         "--skip=stream_write_reports_underlying_io_error_before_plaintext_processed")
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-ring" ,rust-ring-0.14)
+        ("rust-sct" ,rust-sct-0.5)
+        ("rust-untrusted" ,rust-untrusted-0.6)
+        ("rust-webpki" ,rust-webpki-0.21))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.16))))))
+
 (define-public rust-rustls-0.12
-  (package/inherit rust-rustls-0.16
+  (package/inherit rust-rustls-0.15
     (name "rust-rustls")
     (version "0.12.0")
     (source
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0076-gnu-Add-rust-tokio-rustls-0.9.patch

From 63749fae76b89e5e4cdae31779b90996d089571b Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 13:07:56 -0700
Subject: [PATCH 76/89] gnu: Add rust-tokio-rustls-0.9.

* gnu/packages/crates-io.scm (rust-tokio-rustls-0.9): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 26a958d274..484653445e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30443,6 +30443,33 @@ using Rustls.")
         ("rust-tokio" ,rust-tokio-0.2)
         ("rust-webpki-roots" ,rust-webpki-roots-0.17))))))
 
+(define-public rust-tokio-rustls-0.9
+  (package
+    (inherit rust-tokio-rustls-0.12)
+    (name "rust-tokio-rustls")
+    (version "0.9.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-rustls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1jd63sl177sxacnksaxhazzmamwds98xk3niprh2qib75a1rk8cm"))))
+    (arguments
+     `(;; These tests require network access.
+       #:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.5)
+        ("rust-futures-core" ,rust-futures-core-0.3)
+        ("rust-rustls" ,rust-rustls-0.15)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-webpki" ,rust-webpki-0.19)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.17))
+       #:cargo-development-inputs
+       (("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-tokio" ,rust-tokio-0.2)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.17))))))
+
 (define-public rust-tokio-service-0.1
   (package
     (name "rust-tokio-service")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0077-gnu-Add-rust-reqwest-0.9.patch

From 97e49344818061cccd008c3a098d179efa8cfe11 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Mon, 26 Oct 2020 14:00:41 -0700
Subject: [PATCH 77/89] gnu: Add rust-reqwest-0.9.

* gnu/packages/crates-io.scm (rust-reqwest-0.9): New variable.
---
 gnu/packages/crates-io.scm | 71 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 484653445e..f6e37ff3af 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22600,6 +22600,77 @@ is not meant for sending across threads, it performs about twice as fast.")
     (description "This package provides a high level HTTP client library.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-reqwest-0.9
+  (package
+    (inherit rust-reqwest-0.10)
+    (name "rust-reqwest")
+    (version "0.9.24")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "reqwest" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1aql4wpmf1cfl09xddlxnmd7y1nj7fcbzmsh9603qd61lfp471pq"))))
+    (native-inputs
+     `(("openssl" ,openssl)
+       ("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release"
+         "--"
+         ;; Skip network tests
+         "--skip=test_badssl_modern"
+         "--skip=test_badssl_self_signed"
+         "--skip=test_badssl_wrong_host")
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bytes" ,rust-bytes-0.4)
+        ("rust-cookie" ,rust-cookie-0.12)
+        ("rust-cookie-store" ,rust-cookie-store-0.7)
+        ("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-flate2" ,rust-flate2-1)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-hyper" ,rust-hyper-0.12)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-mime-guess" ,rust-mime-guess-2)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.5)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-threadpool" ,rust-tokio-threadpool-0.1)
+        ("rust-tokio-timer" ,rust-tokio-timer-0.2)
+        ("rust-url" ,rust-url-1)
+        ("rust-uuid" ,rust-uuid-0.7)
+        ("rust-winreg" ,rust-winreg-0.6)
+        ("rust-hyper-old-types" ,rust-hyper-old-types-0.11)
+        ("rust-hyper-rustls" ,rust-hyper-rustls-0.17)
+        ("rust-hyper-tls" ,rust-hyper-tls-0.3)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-rustls" ,rust-rustls-0.16)
+        ("rust-socks" ,rust-socks-0.3)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.14)
+        ("rust-trust-dns-resolver" ,rust-trust-dns-resolver-0.11))
+       #:cargo-development-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-doc-comment" ,rust-doc-comment-0.3)
+        ("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-libflate" ,rust-libflate-0.1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'find-openssl
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((openssl (assoc-ref inputs "openssl")))
+               (setenv "OPENSSL_DIR" openssl))
+             #t)))))))
+
 (define-public rust-resolv-conf-0.6
   (package
     (name "rust-resolv-conf")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0078-gnu-Remove-punctuation-in-rust-rustls-0.18-synopsis.patch

From fe229d7e77f5b47d7111f9959ae6467606b7b495 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:14:09 -0700
Subject: [PATCH 78/89] gnu: Remove punctuation in rust-rustls-0.18 synopsis.

* gnu/packages/crates-io.scm (rust-rustls-0.18):[synopsis] Remove period.
---
 gnu/packages/crates-io.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f6e37ff3af..bc16546529 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23890,7 +23890,7 @@ rustc compiler.")
         ("rust-log" ,rust-log-0.4)
         ("rust-webpki-roots" ,rust-webpki-roots-0.20))))
     (home-page "https://github.com/ctz/rustls")
-    (synopsis "Modern TLS library written in Rust.")
+    (synopsis "Modern TLS library written in Rust")
     (description "This package provides a modern TLS library written in
 Rust.")
     (license
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0079-gnu-Fix-rust-trust-dns-openssl-0.19-home-page.patch

From be209b0114b69a905470b58cdd9733cee8d2c0dc Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:16:32 -0700
Subject: [PATCH 79/89] gnu: Fix rust-trust-dns-openssl-0.19 home-page.

* gnu/packages/crates-io.scm (rust-trust-dns-openssl-0.19):[home-page] Update url.
---
 gnu/packages/crates-io.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bc16546529..2090db7ff7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31637,7 +31637,7 @@ extension for the Trust-DNS client to use native-tls for TLS.")
        #:cargo-development-inputs
        (("rust-openssl" ,rust-openssl-0.10)
         ("rust-tokio" ,rust-tokio-0.2))))
-    (home-page "http://www.trust-dns.org/index.html")
+    (home-page "http://trust-dns.org/index.html")
     (synopsis "tokio-openssl extension for the Trust-DNS client")
     (description "Trust-DNS is a safe and secure DNS library.  This is an
 extension for the Trust-DNS client to use tokio-openssl for TLS.")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0080-gnu-Fix-rust-tokio-openssl-0.4-home-page.patch

From 6392f4c9adba99ba37e4951c25af73c24a837d00 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:19:13 -0700
Subject: [PATCH 80/89] gnu: Fix rust-tokio-openssl-0.4 home-page.

* gnu/packages/crates-io.scm (rust-tokio-openssl-0.4):[home-page] Update url.
---
 gnu/packages/crates-io.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2090db7ff7..10f7220247 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30238,7 +30238,7 @@ Tokio.")
        #:cargo-development-inputs
        (("rust-futures" ,rust-futures-0.3)
         ("rust-tokio" ,rust-tokio-0.2))))
-    (home-page "https://github.com/alexcrichton/tokio-openssl")
+    (home-page "https://github.com/sfackler/tokio-openssl")
     (synopsis "SSL streams for Tokio backed by OpenSSL")
     (description "This package is an implementation of SSL streams for Tokio
 backed by OpenSSL.")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0081-gnu-Fix-rust-trust-dns-native-tls-0.19-synopsis-and-.patch

From a4eea7fcc301c8de985164a89c3f4fd2cabbbf18 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:20:15 -0700
Subject: [PATCH 81/89] gnu: Fix rust-trust-dns-native-tls-0.19 synopsis and
 home-page.

* gnu/packages/crates-io.scm (rust-trust-dns-native-tls-0.19):[synopsis]
Capitalize first letter, [home-page] update url.
---
 gnu/packages/crates-io.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 10f7220247..7186a065f1 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31573,8 +31573,8 @@ extension for the Trust-DNS client to use DNS over HTTPS.")
         ("rust-tokio" ,rust-tokio-0.2)
         ("rust-tokio-tls" ,rust-tokio-tls-0.3)
         ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19))))
-    (home-page "http://www.trust-dns.org/index.html")
-    (synopsis "native-tls extension for the Trust-DNS client")
+    (home-page "http://trust-dns.org/index.html")
+    (synopsis "Native-tls extension for the Trust-DNS client")
     (description "Trust-DNS is a safe and secure DNS library.  This is an
 extension for the Trust-DNS client to use native-tls for TLS.")
     (license (list license:expat license:asl2.0))))
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0082-gnu-Fix-rust-trust-dns-https-0.19-home-page.patch

From 7a669ebdeb43106f5e85e15eb4ef4365f369e166 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:22:16 -0700
Subject: [PATCH 82/89] gnu: Fix rust-trust-dns-https-0.19 home-page.

* gnu/packages/crates-io.scm (rust-trust-dns-https-0.19):[home-page] Update url.
---
 gnu/packages/crates-io.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7186a065f1..0ae32eab31 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31507,7 +31507,7 @@ application authors using tracing to instrument their applications.")
        #:cargo-development-inputs
        (("rust-env-logger" ,rust-env-logger-0.7)
         ("rust-futures" ,rust-futures-0.3))))
-    (home-page "http://www.trust-dns.org/index.html")
+    (home-page "http://trust-dns.org/index.html")
     (synopsis "DNS over HTTPS extension for the Trust-DNS client")
     (description "Trust-DNS is a safe and secure DNS library.  This is an
 extension for the Trust-DNS client to use DNS over HTTPS.")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0083-gnu-Fix-rust-hyper-0.13-synopsis-punctuation.patch

From 2f6d4b7edc32afe1f1e5b26933d4827aaff9d1d5 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:23:34 -0700
Subject: [PATCH 83/89] gnu: Fix rust-hyper-0.13 synopsis' punctuation.

* gnu/packages/crates-io.scm (rust-hyper-0.13):[synopsis] Remove period.
---
 gnu/packages/crates-io.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0ae32eab31..a7560807e7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -11938,7 +11938,7 @@ SystemTime}}.")
         ("rust-tower-util" ,rust-tower-util-0.3)
         ("rust-url" ,rust-url-1))))
     (home-page "https://hyper.rs")
-    (synopsis "Fast and correct HTTP library.")
+    (synopsis "Fast and correct HTTP library")
     (description "This package provides a fast and correct HTTP library.")
     (license license:expat)))
 
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0084-gnu-Fix-rust-security-framework-1-home-page.patch

From ffdd3cdaf77ed81aa2a7b954f7208bb7e6ba8161 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:27:46 -0700
Subject: [PATCH 84/89] gnu: Fix rust-security-framework-1 home-page.

* gnu/packages/crates-io.scm (rust-security-framework-1):[home-page] Update url.
---
 gnu/packages/crates-io.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a7560807e7..3c115191ec 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -24803,7 +24803,7 @@ proven statistical guarantees.")
        #:cargo-development-inputs
        (("rust-hex" ,rust-hex-0.4)
         ("rust-tempdir" ,rust-tempdir-0.3))))
-    (home-page "https://lib.rs/crates/security_framework")
+    (home-page "https://github.com/kornelski/rust-security-framework")
     (synopsis "@code{Security.framework} bindings for macOS and iOS")
     (description "This package provides @code{Security.framework} bindings for
 macOS and iOS.")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0085-gnu-Add-detail-to-rust-serde-urlencoded-0.6-descript.patch

From a5de6a7f909347a62237d3a6b399a8700ed42fdc Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:30:10 -0700
Subject: [PATCH 85/89] gnu: Add detail to rust-serde-urlencoded-0.6
 description.

* gnu/packages/crates-io.scm (rust-serde-urlencoded-0.6):[description] Add detail.
---
 gnu/packages/crates-io.scm | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 3c115191ec..e2330c6053 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -25727,8 +25727,12 @@ for the serde framework.")
        #:cargo-development-inputs
        (("rust-serde-derive" ,rust-serde-derive-1))))
     (home-page "https://github.com/nox/serde_urlencoded")
-    (synopsis "x-www-form-urlencoded meets serde")
-    (description "x-www-form-urlencoded meets serde.")
+    (synopsis "@code{x-www-form-urlencoded} meets serde")
+    (description
+     "This package is a Rust library for serialising to and deserialising from
+the @code{application/x-www-form-urlencoded} format.  It is built upon Serde,
+a high performance generic serialization framework and rust-url, a URL parser
+for Rust.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-serde-urlencoded-0.5
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0086-gnu-Fix-rust-trust-dns-resolver-0.19-home-page.patch

From 5a26be1e7a58fe7756f7d2f3009c721e98d9ffd5 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:35:54 -0700
Subject: [PATCH 86/89] gnu: Fix rust-trust-dns-resolver-0.19 home-page.

* gnu/packages/crates-io.scm (rust-trust-dns-resolver-0.19):[home-page] Update url.
---
 gnu/packages/crates-io.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e2330c6053..ff55178795 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31806,7 +31806,7 @@ foundational DNS protocol library for all Trust-DNS projects.")
        #:cargo-development-inputs
        (("rust-env-logger" ,rust-env-logger-0.7)
         ("rust-futures" ,rust-futures-0.3))))
-    (home-page "http://www.trust-dns.org/index.html")
+    (home-page "http://trust-dns.org/index.html")
     (synopsis "Safe and secure DNS library")
     (description "Trust-DNS is a safe and secure DNS library.  This Resolver
 library uses the Client library to perform all DNS queries.  The Resolver is
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0087-gnu-Fix-rust-trust-dns-rustls-0.19-home-page.patch

From b03afe8e3448689fc01d381549ce93fc836b9fa4 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 10:55:23 -0700
Subject: [PATCH 87/89] gnu: Fix rust-trust-dns-rustls-0.19 home-page.

* gnu/packages/crates-io.scm (rust-trust-dns-rustls-0.19):[home-page] Update url.
---
 gnu/packages/crates-io.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ff55178795..aa4b95d882 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31879,7 +31879,7 @@ other queries.")
         ("rust-webpki" ,rust-webpki-0.21))
        #:cargo-development-inputs
        (("rust-openssl" ,rust-openssl-0.10))))
-    (home-page "http://www.trust-dns.org/index.html")
+    (home-page "http://trust-dns.org/index.html")
     (synopsis "Rustls extension for the Trust-DNS client")
     (description "Trust-DNS is a safe and secure DNS library.  This is an
 extension for the Trust-DNS client to use rustls for TLS.")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0088-gnu-Capitalize-synopsis-of-rust-trust-dns-openssl-0..patch

From c50d3b42ce1572cdcfd17fe27bca33174ff21a74 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Sat, 31 Oct 2020 11:04:42 -0700
Subject: [PATCH 88/89] gnu: Capitalize synopsis of
 rust-trust-dns-openssl-0.19.

* gnu/package/crates-io.scm (rust-trust-dns-openssl-0.19):[synopsis] Capitalize.
---
 gnu/packages/crates-io.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index aa4b95d882..c73c96c638 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -31642,7 +31642,7 @@ extension for the Trust-DNS client to use native-tls for TLS.")
        (("rust-openssl" ,rust-openssl-0.10)
         ("rust-tokio" ,rust-tokio-0.2))))
     (home-page "http://trust-dns.org/index.html")
-    (synopsis "tokio-openssl extension for the Trust-DNS client")
+    (synopsis "Tokio-openssl extension for the Trust-DNS client")
     (description "Trust-DNS is a safe and secure DNS library.  This is an
 extension for the Trust-DNS client to use tokio-openssl for TLS.")
     (license (list license:expat license:asl2.0))))
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0089-gnu-Add-pijul.patch

From 5105b110d7bcbc7f922691982c798d301595fe3c Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:23:46 -0700
Subject: [PATCH 89/89] gnu: Add pijul.

* gnu/packages/rust-apps.scm (pijul): New variable.
---
 gnu/packages/rust-apps.scm | 114 +++++++++++++++++++++++++++++++++++++
 1 file changed, 114 insertions(+)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index fabb4e0380..2b5a426e1b 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -30,8 +30,11 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages crates-io)
   #:use-module (gnu packages crates-graphics)
+  #:use-module (gnu packages crypto)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages llvm)
+  #:use-module (gnu packages nettle)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages tls)
@@ -235,6 +238,117 @@ for distinguishing different kinds of bytes such as NULL bytes, printable ASCII
 characters, ASCII whitespace characters, other ASCII characters and non-ASCII.")
     (license (list license:expat license:asl2.0))))
 
+(define-public pijul
+  (package
+    (name "pijul")
+    (version "0.12.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pijul" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "12aqpfd2si70qbvfnn9kvznxyd5g5gsb1kk1q52wm077cd03yapr"))))
+    (build-system cargo-build-system)
+    (inputs
+     `(("clang" ,clang)
+       ("libressl" ,libressl)
+       ("libsodium" ,libsodium)
+       ("nettle" ,nettle)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-atty" ,rust-atty-0.2)
+        ("rust-base64" ,rust-base64-0.9)
+        ("rust-bincode" ,rust-bincode-1)
+        ("rust-bs58" ,rust-bs58-0.2)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-clap" ,rust-clap-2)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-dirs" ,rust-dirs-1.0)
+        ("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-flate2" ,rust-flate2-1)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-getch" ,rust-getch-0.2)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-ignore" ,rust-ignore-0.4)
+        ("rust-libpijul" ,rust-libpijul-0.12)
+        ("rust-line" ,rust-line-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-pathdiff" ,rust-pathdiff-0.1)
+        ("rust-progrs" ,rust-progrs-0.1)
+        ("rust-rand" ,rust-rand-0.6)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-reqwest" ,rust-reqwest-0.9)
+        ("rust-rpassword" ,rust-rpassword-2.1.0)
+        ("rust-sequoia-openpgp" ,rust-sequoia-openpgp-0.9)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-shell-escape" ,rust-shell-escape-0.1)
+        ("rust-tar" ,rust-tar-0.4)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-term" ,rust-term-0.5)
+        ("rust-thrussh" ,rust-thrussh-0.21)
+        ("rust-thrussh-config" ,rust-thrussh-config-0.2)
+        ("rust-thrussh-keys" ,rust-thrussh-keys-0.11)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-uds" ,rust-tokio-uds-0.2)
+        ("rust-toml" ,rust-toml-0.4)
+        ("rust-username" ,rust-username-0.2))
+       #:cargo-development-inputs
+       (("rust-walkdir" ,rust-walkdir-2))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'set-clang-env
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv
+              "LIBCLANG_PATH"
+              (string-append (assoc-ref inputs "clang") "/lib"))
+             #t))
+         (add-after 'install 'install-completions
+           (lambda* (#:key outputs #:allow-other-keys)
+             (use-modules (ice-9 popen)
+                          (ice-9 textual-ports))
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin"))
+                    (share (string-append out "/share"))
+                    (bash (string-append
+                           share "/bash-completion/completions"))
+                    (zsh (string-append
+                          share "/zsh/site-functions"))
+                    (fish (string-append
+                           share "/fish/vendor_completions.d")))
+               (for-each
+                (lambda (x)
+                  (let ((dir (cddr x))
+                        (file (cadr x))
+                        (shell (car x)))
+                    (mkdir-p dir)
+                    (call-with-output-file (string-append dir "/" file)
+                      (lambda (f)
+                        (let* ((cmd (string-append
+                                     bin "/pijul generate-completions --"
+                                     shell))
+                               (pipe (open-input-pipe cmd))
+                               (completion (get-string-all pipe)))
+                          (format f "~A" completion)
+                          (close-pipe pipe)))) ))
+                `(("bash" . ("pijul" . ,bash))
+                  ("zsh" . ("_pijul" . ,zsh))
+                  ("fish" . ("pijul.fish" . ,fish))))
+               #t))))))
+    (home-page "https://pijul.org/")
+    (synopsis
+     "Patch-based distributed version control system")
+    (description
+     "This package provides a patch-based distributed version control
+system, easy to use and fast.  Command-line interface.")
+    (license license:gpl2+)))
+
 (define-public ripgrep
   (package
     (name "ripgrep")
-- 
2.28.0


--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 28 Oct 2020 17:37:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Oct 28 13:37:53 2020
Received: from localhost ([127.0.0.1]:50524 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kXpOS-0008Oa-UD
	for submit <at> debbugs.gnu.org; Wed, 28 Oct 2020 13:37:53 -0400
Received: from lepiller.eu ([89.234.186.109]:50144)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <julien@HIDDEN>) id 1kXpON-0008OL-Gv
 for 43929 <at> debbugs.gnu.org; Wed, 28 Oct 2020 13:37:51 -0400
Received: from lepiller.eu (localhost [127.0.0.1])
 by lepiller.eu (OpenSMTPD) with ESMTP id 24114eec;
 Wed, 28 Oct 2020 17:37:44 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=lepiller.eu; h=date
 :in-reply-to:references:mime-version:content-type
 :content-transfer-encoding:subject:to:cc:from:message-id; s=
 dkim; bh=soCMSExpLOTLkKcgaXADM2yBNwocT14SZ86KcKs9ERU=; b=Pe059oQ
 tgtQ84cY7jlqZsdEjXnq0wPxJS0lwHymbLT9dVQUih5DDBlkWzqC/jtxaY9tWIHI
 jSAOzBkueBOJSeN/9g/oUg4fqE/Ql4eX72DZVs3Z5QgBMQWa0Jg6OVvBpbbYI6Go
 BKEubdkOsgQ/bb/Z42U4admHrGtaaTENid7vCLU23pndHUCrytVUApyhjN5vE0CD
 2Y7Sqk36LV4VkaS0kBMnsv7fUC9tLLhE4rn4aIZyjlFJyzQToINVXEaN+ZabkGsA
 FkwbiCqi1pca7txtZegaPPS2fmCqngkWOD4NCEXIx8Zc+1FRe3cp6KqTNuMLI7vJ
 IFwhdNyclL5vVag==
Received: by lepiller.eu (OpenSMTPD) with ESMTPSA id 771c994e
 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); 
 Wed, 28 Oct 2020 17:37:43 +0000 (UTC)
Date: Wed, 28 Oct 2020 13:37:31 -0400
User-Agent: K-9 Mail for Android
In-Reply-To: <864kme2w8g.fsf@HIDDEN>
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
 <864kme2w8g.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
Subject: Re: [bug#43929] gnu: Add pijul.
To: zimoun <zimon.toutoune@HIDDEN>, John Soo <jsoo1@HIDDEN>,
 =?ISO-8859-1?Q?Ludovic_Court=E8s?= <ludo@HIDDEN>
From: Julien Lepiller <julien@HIDDEN>
Message-ID: <2DFC6265-699A-4EA3-8E50-5352B8EA59F6@HIDDEN>
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 43929
Cc: 43929 <43929 <at> debbugs.gnu.org>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)



Le 28 octobre 2020 11:42:07 GMT-04:00, zimoun <zimon=2Etoutoune@gmail=2Eco=
m> a =C3=A9crit :
>Hi,
>
>On Wed, 28 Oct 2020 at 08:13, John Soo <jsoo1@asu=2Eedu> wrote:
> =20
>> I have been busy rebasing these patches=2E  I may have a new set this
>> week
>
>It could be cool if it could be included in the v1=2E2=2E :-)
>
>
>> Also pijul 2 is coming very soon=2E Should I wait to submit that
>> instead?=20
>
>From my point of view, because of the =E2=80=9Ctime-machine=E2=80=9D, it =
is nice to
>include any version =E2=80=93 especially when it is already done=2E :-)

Yeah I agree, you don't have to wait, since you already have everything av=
ailable :)

Sorry I didn't do a review, I ended up being busy with work and other thin=
gs=2E

>
>
>Cheers,
>simon




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 28 Oct 2020 15:42:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Oct 28 11:42:18 2020
Received: from localhost ([127.0.0.1]:50201 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kXnac-000384-Bh
	for submit <at> debbugs.gnu.org; Wed, 28 Oct 2020 11:42:18 -0400
Received: from mail-wr1-f52.google.com ([209.85.221.52]:46434)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <zimon.toutoune@HIDDEN>) id 1kXnaa-00037q-Hg
 for 43929 <at> debbugs.gnu.org; Wed, 28 Oct 2020 11:42:16 -0400
Received: by mail-wr1-f52.google.com with SMTP id n6so6153624wrm.13
 for <43929 <at> debbugs.gnu.org>; Wed, 28 Oct 2020 08:42:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:to:cc:subject:in-reply-to:references:date:message-id
 :mime-version:content-transfer-encoding;
 bh=K+cJLmkOCvelbzjYJR4IpYLuKTRtw+i89H8VGFnugyM=;
 b=neJZsIKgqrwVGJWagHliyioI8tz7N9alh+U5OqYCLJSpNOSZu8SI21l0OJ/PlemXOm
 cpyylFFMOVaXUpOhdcaKQAEjPhf9QQXYxvk9COOkGEhu1/UsFbStXmPS6d2KHaLepR27
 TDwTS2Eo7gwVPtiF6W7hevoO3BJB0CdUJWOfjKU1UpMlG6xQ3nHOAfT/7I8wwxmhKmgv
 YwxAZ/kdYZjuSHscxqjoSoBY2VEMY0BEnoqQINzeqdLd2NDcT6FTo7ue2YmeS30JFN7V
 a33DSRTHmlzyLYggoBKRneAXxodxHT6wZGZkAco0rmoAv8vmNP6bIi8vIleOYv+Jnvbj
 pDvg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:in-reply-to:references:date
 :message-id:mime-version:content-transfer-encoding;
 bh=K+cJLmkOCvelbzjYJR4IpYLuKTRtw+i89H8VGFnugyM=;
 b=aw5EIKtxuXCwpsxgk3vKQc4ZtldcaILR1Vq2hBw9UvFcJZF9mhAo9Ri6DlzaR6C9NG
 9J76KHFVUerVlcv+YWIdShSW1efOyao6WLI6y1obyvvo0gzuJzT3f/qlF3uX2fOqTzAY
 gXV3MwAJdkqIfu+oVn4hDiuNVTqrkoEvvXUXqEyuOm2esxRvfbuisgHj/P4vSbOUL+Rp
 qpc297OHm1fdxFIHwcTHNG79oBPkVIbDZUu9F503K0s9ui3glfFMUcVtBF+vW73odLUW
 rWo2T25pqpfZ6E2yG3+iSXfVPIDTETldqpfNa7s94Kh7y/WCez+55KcKl+EhLcgqDqiS
 MafQ==
X-Gm-Message-State: AOAM5339WL5hdcHZyr+UgQXTEXoJ+EkwK3JGeTXmmj+ojxlCs0Qg5RXQ
 B6sHXvHEpqy6CJfruY/SSl6CoN57WYk=
X-Google-Smtp-Source: ABdhPJwo463+2d2eMoTjmkHrVzBpla6G+0g/CT763J0ZkQpY1C6x6ra4NSP8b+B5cS8ML6lQm634Ag==
X-Received: by 2002:adf:ec47:: with SMTP id w7mr2240830wrn.253.1603899730396; 
 Wed, 28 Oct 2020 08:42:10 -0700 (PDT)
Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e])
 by smtp.gmail.com with ESMTPSA id m8sm7193291wrw.17.2020.10.28.08.42.09
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Oct 2020 08:42:09 -0700 (PDT)
From: zimoun <zimon.toutoune@HIDDEN>
To: John Soo <jsoo1@HIDDEN>, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
In-Reply-To: <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
References: <87lfgcog2g.fsf@HIDDEN>
 <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
Date: Wed, 28 Oct 2020 16:42:07 +0100
Message-ID: <864kme2w8g.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 43929
Cc: Julien Lepiller <julien@HIDDEN>, 43929 <43929 <at> debbugs.gnu.org>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Hi,

On Wed, 28 Oct 2020 at 08:13, John Soo <jsoo1@HIDDEN> wrote:
=20=20
> I have been busy rebasing these patches.  I may have a new set this
> week

It could be cool if it could be included in the v1.2. :-)


> Also pijul 2 is coming very soon. Should I wait to submit that
> instead?=20

From my point of view, because of the =E2=80=9Ctime-machine=E2=80=9D, it is=
 nice to
include any version =E2=80=93 especially when it is already done. :-)


Cheers,
simon





Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 28 Oct 2020 15:13:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Oct 28 11:13:39 2020
Received: from localhost ([127.0.0.1]:50132 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kXn8s-0002K5-VP
	for submit <at> debbugs.gnu.org; Wed, 28 Oct 2020 11:13:39 -0400
Received: from mail-pj1-f41.google.com ([209.85.216.41]:52807)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jsoo1@HIDDEN>) id 1kXn8r-0002Js-1g
 for 43929 <at> debbugs.gnu.org; Wed, 28 Oct 2020 11:13:37 -0400
Received: by mail-pj1-f41.google.com with SMTP id h10so1124559pju.2
 for <43929 <at> debbugs.gnu.org>; Wed, 28 Oct 2020 08:13:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=asu-edu.20150623.gappssmtp.com; s=20150623;
 h=date:from:to:cc:message-id:in-reply-to:subject:mime-version;
 bh=uHJbKikQo35yzZVwHWOTen4s0SHfcKuLedJBbDKAl9Y=;
 b=zpkTaL8d+HQ5kGCJFk9Ou5/A4jB4pF9TB88u79BSD9rEcw+IBzxo35H+eXQu04P4qK
 O6feM5pXNdT94nr5pe2bbQCkeqTLUvHD767703mrPsrFboEIeEPGTjNgA5SrUags5Zdl
 TlrARU/zYFWG+6rHR/EJtKsF3IrLu8BHQs+fr2UJmSXZki+fAifCrDEGPiIEYqgS+6R+
 tAApyvBAOWytikr1uk2KmqIvfMTFe1+9jSsrwGaKx90/KqsEBrCzcUqixy/fraapIqBf
 HCKrie+iOwK6gGB0gxweu83U18iBNU2ZuD/txvgT0VtYKshNgplD7bfpvO4PirSwWwF+
 T+Kg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:date:from:to:cc:message-id:in-reply-to:subject
 :mime-version;
 bh=uHJbKikQo35yzZVwHWOTen4s0SHfcKuLedJBbDKAl9Y=;
 b=OEy7SqFO87hlaUhdUOxNj1bV2tyo7WxgOGF84V3kk0Y8ViQSsf2k7KT7GQ9vQXf+pA
 pG2ySrrvM0XM/JgVTXV9f68QSKu+ZHc2FtGxF/8lQ6ay9YdskKpiHVoK4uyYqjhxSxZs
 GuzWd11aG+49P06s9uPZbiNL/7mplSJHsmWq8T55+AlNJk61Kmo0Sd8qSUHVmCVcwxDf
 cR7oj3BC7GhpqiQT35zV9ybF2PANAvYSL5KuVA1L+1YK/k8MpCbE4hB4gUiFsJUiQy+0
 YdoQgmzI43lNMuxbAOgUi698t9/SG8Y1S7SZia4B8GpTWcHzZGniafhfa8EUrz0i3IOb
 fmPw==
X-Gm-Message-State: AOAM531F7mqfmiKcQEe+qXXgVp4esC2EqRf/OfbGIcUBMqUkT0rnG+7J
 066K3iPuPiy/XQmwyu+JxmQE6w==
X-Google-Smtp-Source: ABdhPJzxGYtr1Fp23oFSmwcURTD5x0WNwnkHA4JLeRfUagPBPsQz/j3hWRizjwHWAW+MUAQYnMAN7Q==
X-Received: by 2002:a17:90a:db43:: with SMTP id
 u3mr7435953pjx.225.1603898011254; 
 Wed, 28 Oct 2020 08:13:31 -0700 (PDT)
Received: from [2600:1700:83b0:8bd0:70e4:581:200:0]
 ([2600:1700:83b0:8bd0:a035:9413:db8c:542a])
 by smtp.gmail.com with ESMTPSA id e20sm6024033pfi.30.2020.10.28.08.13.30
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Wed, 28 Oct 2020 08:13:30 -0700 (PDT)
Date: Wed, 28 Oct 2020 08:13:29 -0700
From: John Soo <jsoo1@HIDDEN>
To: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
Message-ID: <dc28316c-e21b-48ff-b0f5-ac10158f49d4@Johns-iPhone>
In-Reply-To: <87pn521jqe.fsf@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="5f998a99_6b8b4567_2777"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 43929
Cc: Julien Lepiller <julien@HIDDEN>, 43929 <43929 <at> debbugs.gnu.org>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--5f998a99_6b8b4567_2777
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

     Hey everyone, 

 
Quick update.
 

 
I have been busy rebasing these patches.    I may have a new set this week.
 

 
Also pijul 2 is coming very soon. Should I wait to submit that instead?
 

 
- John
     
--5f998a99_6b8b4567_2777
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

<html><body>Hey everyone,<div><br></div><div>Quick update.</div><div><br>=
</div><div>I have been busy rebasing these patches. &nbsp;<span style=3D=22=
letter-spacing: 0.1px; text-align: inherit; -webkit-tap-highlight-color: =
transparent;=22>I may have a new set this week.</span></div><div><br></di=
v><div>Also pijul 2 is coming very soon. Should I wait to submit that ins=
tead=3F</div><div><br></div><div>- John</div></body></html>
--5f998a99_6b8b4567_2777--





Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 28 Oct 2020 14:57:41 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Oct 28 10:57:41 2020
Received: from localhost ([127.0.0.1]:50084 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kXmtR-0001s3-3Y
	for submit <at> debbugs.gnu.org; Wed, 28 Oct 2020 10:57:41 -0400
Received: from eggs.gnu.org ([209.51.188.92]:39390)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1kXmtQ-0001rr-0Q
 for 43929 <at> debbugs.gnu.org; Wed, 28 Oct 2020 10:57:40 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:45671)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <ludo@HIDDEN>)
 id 1kXmtK-0003dt-CR; Wed, 28 Oct 2020 10:57:34 -0400
Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=44292 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256)
 (Exim 4.82) (envelope-from <ludo@HIDDEN>)
 id 1kXmtI-00082p-KU; Wed, 28 Oct 2020 10:57:33 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: Julien Lepiller <julien@HIDDEN>
Subject: Re: [bug#43929] gnu: Add pijul.
References: <87lfgcog2g.fsf@HIDDEN>
 <1458C332-066C-499E-8E53-CEDF6F502E25@HIDDEN>
Date: Wed, 28 Oct 2020 15:57:29 +0100
In-Reply-To: <1458C332-066C-499E-8E53-CEDF6F502E25@HIDDEN> (Julien
 Lepiller's message of "Sun, 11 Oct 2020 13:40:27 -0400")
Message-ID: <87pn521jqe.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 43929
Cc: 43929 <at> debbugs.gnu.org, John Soo <jsoo1@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Hi Julien,

Julien Lepiller <julien@HIDDEN> skribis:

> Oh that is great! I've been wanting to try pijul out since more than a
> year but never found the time to package it. Thanks!
>
> I'm not sure I know rust enough to review this, and I'm a bit busy. If
> nobody else has started a review by next saturday, please ping me
> again!

Are you taking a look?  If not, let=E2=80=99s call for help from the Rust-s=
avvy
people among us.  :-)

Thanks,
Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at 43929 <at> debbugs.gnu.org:


Received: (at 43929) by debbugs.gnu.org; 11 Oct 2020 17:40:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Oct 11 13:40:46 2020
Received: from localhost ([127.0.0.1]:40978 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kRfKv-0006Bo-Uz
	for submit <at> debbugs.gnu.org; Sun, 11 Oct 2020 13:40:46 -0400
Received: from lepiller.eu ([89.234.186.109]:54230)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <julien@HIDDEN>) id 1kRfKu-0006Be-8i
 for 43929 <at> debbugs.gnu.org; Sun, 11 Oct 2020 13:40:45 -0400
Received: from lepiller.eu (localhost [127.0.0.1])
 by lepiller.eu (OpenSMTPD) with ESMTP id 1d6cedae;
 Sun, 11 Oct 2020 17:40:41 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=lepiller.eu; h=date
 :in-reply-to:references:mime-version:content-type
 :content-transfer-encoding:subject:to:from:message-id; s=dkim;
 bh=Ct/K7amj1UPngh1n5kxipDif1cfZNvEflnDJiA7unuk=; b=RiNRpsYMo+Xu
 ZuPbjvfCQJN0BqcMIrzMeFUWeaetC1Mvv4RZtJAJ4egFGMzlYRiCnaQyv/jT/d1c
 HQf5MU1uOThcxvgpgDtKU0cyh3zNHtxv+X0TP5L9op+T5aDiNikG8lKTe3kSi0zR
 xHvZmni5EYtuJXPssP+H+8C9NKPS1CETBEDN05Xbh+pB2Q7k2rpZVplKu2RZnptC
 XONSOXWp/v6cmHU4vhTFTho/IlCQxKvhU88xe1doP2XA1AMPCcnd/rqx/8kBlJX3
 v5YafgI2S5/NiNia6jUr5Gn/vZNucv+3RiTAieLifz9eBKTYA0uzb2wv8c+4qh/+
 rOROfeOjeQ==
Received: by lepiller.eu (OpenSMTPD) with ESMTPSA id 7da09243
 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); 
 Sun, 11 Oct 2020 17:40:40 +0000 (UTC)
Date: Sun, 11 Oct 2020 13:40:27 -0400
User-Agent: K-9 Mail for Android
In-Reply-To: <87lfgcog2g.fsf@HIDDEN>
References: <87lfgcog2g.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/alternative;
 boundary="----QZ7F0TOHLQIMAQVGXOQ42UQAO3MVW2"
Content-Transfer-Encoding: 7bit
Subject: Re: [bug#43929] gnu: Add pijul.
To: John Soo <jsoo1@HIDDEN>,43929 <at> debbugs.gnu.org
From: Julien Lepiller <julien@HIDDEN>
Message-ID: <1458C332-066C-499E-8E53-CEDF6F502E25@HIDDEN>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 43929
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

------QZ7F0TOHLQIMAQVGXOQ42UQAO3MVW2
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

Oh that is great! I've been wanting to try pijul out since more than a year=
 but never found the time to package it=2E Thanks!

I'm not sure I know rust enough to review this, and I'm a bit busy=2E If n=
obody else has started a review by next saturday, please ping me again!

Le 11 octobre 2020 12:58:15 GMT-04:00, John Soo <jsoo1@asu=2Eedu> a =C3=A9=
crit :
>Hi Guix,
>
>I've had these patches for a while and debated whether they should be
>merged=2E Pijul works but 2=2E0 is reportedly being worked on=2E I haven'=
t
>seen much news on version 2 so I think 1=2E0 should be made available to
>try=2E
>
>Kindly,
>
>John

------QZ7F0TOHLQIMAQVGXOQ42UQAO3MVW2
Content-Type: text/html;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html><head></head><body>Oh that is great! I've been wanting to try pijul o=
ut since more than a year but never found the time to package it=2E Thanks!=
<br><br>I'm not sure I know rust enough to review this, and I'm a bit busy=
=2E If nobody else has started a review by next saturday, please ping me ag=
ain!<br><br><div class=3D"gmail_quote">Le 11 octobre 2020 12:58:15 GMT-04:0=
0, John Soo &lt;jsoo1@asu=2Eedu&gt; a =C3=A9crit :<blockquote class=3D"gmai=
l_quote" style=3D"margin: 0pt 0pt 0pt 0=2E8ex; border-left: 1px solid rgb(2=
04, 204, 204); padding-left: 1ex;">
<pre class=3D"k9mail">Hi Guix,<br><br>I've had these patches for a while a=
nd debated whether they should be<br>merged=2E Pijul works but 2=2E0 is rep=
ortedly being worked on=2E I haven't<br>seen much news on version 2 so I th=
ink 1=2E0 should be made available to<br>try=2E<br><br>Kindly,<br><br>John<=
br><br></pre></blockquote></div></body></html>
------QZ7F0TOHLQIMAQVGXOQ42UQAO3MVW2--




Information forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 11 Oct 2020 16:58:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Oct 11 12:58:34 2020
Received: from localhost ([127.0.0.1]:40941 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kReg6-00059J-0s
	for submit <at> debbugs.gnu.org; Sun, 11 Oct 2020 12:58:34 -0400
Received: from lists.gnu.org ([209.51.188.17]:58366)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jsoo1@HIDDEN>) id 1kReg4-00059B-16
 for submit <at> debbugs.gnu.org; Sun, 11 Oct 2020 12:58:32 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:51942)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <jsoo1@HIDDEN>) id 1kReg3-0003wp-OQ
 for guix-patches@HIDDEN; Sun, 11 Oct 2020 12:58:31 -0400
Received: from mail-pg1-x52d.google.com ([2607:f8b0:4864:20::52d]:33448)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <jsoo1@HIDDEN>) id 1kRefu-0006lw-3b
 for guix-patches@HIDDEN; Sun, 11 Oct 2020 12:58:31 -0400
Received: by mail-pg1-x52d.google.com with SMTP id l18so2618426pgg.0
 for <guix-patches@HIDDEN>; Sun, 11 Oct 2020 09:58:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=asu-edu.20150623.gappssmtp.com; s=20150623;
 h=from:to:subject:date:message-id:mime-version;
 bh=sw1m1lwDelLX0xc0O5vyjDxuQSlT4g19pOAR0HFc24k=;
 b=SWV9gIjwzQADkhXGVQU61xDFxL33DkOzBBmR5HDeQHFLq5CICJ00sFEWtxUTO5zrgs
 Dxf+X+bo0BfrwrMgg3BQQV4sSH9Kb3Y7xTOf0egT7prCQjO22psLaIjkXbVZXG/rTe4S
 RLlijhnCgT8RvnnxuJpF/uCE0EdQfiJKE260uuHeKtort7FgGNaYCzwVCd72Mq2jYHu2
 uHdWLhbyhpiKeAzih/aql3S4dbCehOUp1lml8fqjy4kDBXuH87jhF07J0CfsLwPVZHyT
 iUmHxYOrzNHKS8iYo7kJRuuoUDwqzviojzS+R7MtRBY523h1f6XhHkZQ3POKOxRhmhX6
 b0pw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:subject:date:message-id:mime-version;
 bh=sw1m1lwDelLX0xc0O5vyjDxuQSlT4g19pOAR0HFc24k=;
 b=aXO7hluDlLpo1deb6OxWLdD8PlNZ2M2MWtcs0axi5laOtAx8MHEUXtaW7noFs/z5Xb
 /ssUB5xP3DNdlotpo/ICuRLvI0PxMFhUNxK9M7Z5Tme3vVv6QT8jtc1qsZGtlU8VzaL8
 3yQBYiQwlebuuLmsq1/IZlpWOECbW1ZRZqO8yF5gEWL7HNndpZaWq0/i2szGn4YY4JuQ
 zdNY5m77ZNMhYpdjOQ0mDbqGzjRN3fPSRcfP9zX5wavqlf+Aatqeze/ZBYkiLc39cr51
 AVtG5FWJTcSBQJ62LfdtmV09UUYmxZkpdX0Tw2X3ojASgezll7T+GPSSzhEy4z8tS35q
 3YPw==
X-Gm-Message-State: AOAM533TbAWyCUvEOyt+IfDMiyqkDXq1b0mlDzMjTBebsjvEoM54800G
 9bmbn08YTgsfXN0svTnvj9eZnQqc82BbLugg
X-Google-Smtp-Source: ABdhPJzSlGf2LZ/oUPrGcTuBuOYkaMzplny9pSSp4VqrpjEgIhBQ1P/8Kk9tCc1w/YqqgOeUGzxZsg==
X-Received: by 2002:a62:a513:0:b029:142:2501:39f6 with SMTP id
 v19-20020a62a5130000b0290142250139f6mr20125447pfm.69.1602435499519; 
 Sun, 11 Oct 2020 09:58:19 -0700 (PDT)
Received: from ecenter ([2600:1700:83b0:8bd0::4ec])
 by smtp.gmail.com with ESMTPSA id g3sm20131094pjl.6.2020.10.11.09.58.16
 for <guix-patches@HIDDEN>
 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256);
 Sun, 11 Oct 2020 09:58:17 -0700 (PDT)
From: John Soo <jsoo1@HIDDEN>
To: guix-patches@HIDDEN
Subject: gnu: Add pijul.
Date: Sun, 11 Oct 2020 09:58:15 -0700
Message-ID: <87lfgcog2g.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
Received-SPF: pass client-ip=2607:f8b0:4864:20::52d;
 envelope-from=jsoo1@HIDDEN; helo=mail-pg1-x52d.google.com
X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache.
 That's all we know.
X-Spam_score_int: -18
X-Spam_score: -1.9
X-Spam_bar: -
X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001, T_FILL_THIS_FORM_SHORT=0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>

--=-=-=
Content-Type: text/plain

Hi Guix,

I've had these patches for a while and debated whether they should be
merged. Pijul works but 2.0 is reportedly being worked on. I haven't
seen much news on version 2 so I think 1.0 should be made available to
try.

Kindly,

John


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-gnu-Add-rust-termios-0.2.patch

From 882b34866b574b229d3b3ceed252603dde3559cc Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:26:07 -0700
Subject: [PATCH 01/57] gnu: Add rust-termios-0.2.

* gnu/packages/crates-io.scm (rust-termios-0.2): New variable.
---
 gnu/packages/crates-io.scm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a614703541..bac099cbf7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -25142,6 +25142,20 @@ bindings are a small wrapper around the raw C functions, which converts integer
 return values to @code{std::io::Result} to indicate success or failure.")
     (license license:expat)))
 
+(define-public rust-termios-0.2
+  (package
+    (inherit rust-termios-0.3)
+    (version "0.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "termios" version))
+       (file-name
+        (string-append (package-name rust-termios-0.3) "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0fk8nl0rmk43jrh6hjz6c6d83ri7l6fikag6lh0ffz3di9cwznfm"))))))
+
 (define-public rust-termize-0.1
   (package
     (name "rust-termize")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0002-Add-lld-to-rust-inputs.patch

From 0bb9a80460b4c4e74bfaf6df367709b6baac3f55 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Fri, 28 Aug 2020 09:47:18 -0700
Subject: [PATCH 2/2] Add lld to rust inputs.

---
 gnu/packages/rust.scm | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 75853d66fc..d7933cc4bc 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -1355,6 +1355,9 @@ move around."
           "0ww4z2v3gxgn3zddqzwqya1gln04p91ykbrflnpdbmcd575n8bky")))
     (package
       (inherit base-rust)
+      (inputs
+       `(("lld" ,lld-9)
+         ,@(package-inputs base-rust)))
       (native-inputs
        `(("node" ,node)
          ,@(package-native-inputs base-rust)))
@@ -1362,7 +1365,6 @@ move around."
        (substitute-keyword-arguments (package-arguments base-rust)
          ((#:phases phases)
           `(modify-phases ,phases
-             (delete 'check)
              (add-after 'override-jemalloc 'enable-wasm32-unknown-unknown
                (lambda* (#:key inputs #:allow-other-keys)
                  (substitute* "config.toml"
@@ -1381,8 +1383,10 @@ move around."
           (inherit (package-source base-rust))
           (patches (search-patches "rust-1.45-linker-locale.patch"))))
       (inputs
-       (alist-replace "llvm" (list llvm-10)
-                      (package-inputs base-rust)))
+       (alist-replace
+        "lld" (list lld-9)
+        (alist-replace "llvm" (list llvm-10)
+                       (package-inputs base-rust))))
       (arguments
         (substitute-keyword-arguments (package-arguments base-rust)
           ((#:phases phases)
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0002-gnu-Add-rust-rust-base58-0.0.patch

From 586e97a168220a3c6da2f3eaeb75ae29626c9703 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:27:39 -0700
Subject: [PATCH 02/57] gnu: Add rust-rust-base58-0.0.

* gnu/packages/crates-io.scm (rust-rust-base58-0.0): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bac099cbf7..7e07db1b81 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -19807,6 +19807,33 @@ hashing function.")
 password hashing function.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-rust-base58-0.0
+  (package
+    (name "rust-rust-base58")
+    (version "0.0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rust-base58" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0fa4y2jjjmg1a0cr3gz4z8rkic0hx2vx5nm23za9lwf6rlgvj4xk"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-num" ,rust-num-0.1))
+       #:cargo-development-inputs
+       (("rust-rand" ,rust-rand-0.4))))
+    (home-page "https://github.com/nham/rust-base58")
+    (synopsis
+     "Simple library for converting to and from base-58 strings")
+    (description
+     "Convert to and from base-58 strings with a simple Rust api.
+ Currently the conversion uses the Bitcoin base58 alphabet.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-rust-hawktracer-0.7
   (package
     (name "rust-rust-hawktracer")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0003-gnu-Add-rust-base58-0.1.patch

From 7037be603d16dbf56e10e680da332ea16f5c49e6 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:28:40 -0700
Subject: [PATCH 03/57] gnu: Add rust-base58-0.1.

* gnu/packages/crates-io.scm (rust-base58-0.1): New variable.
---
 gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7e07db1b81..0dca0ab32d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1119,6 +1119,27 @@ trace (backtrace) at runtime in a Rust program.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-base58-0.1
+  (package
+    (name "rust-base58")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "base58" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "10xfw6v7jzn9i682mkw9nqybzafrvl3i2wawwgp5a8gh2n0fw92h"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/debris/base58")
+    (synopsis "Tiny and fast base58 encoding")
+    (description "Encode to base58 using only Rust. This package is based on
+@url{https://github.com/trezor/trezor-crypto/blob/master/base58.c} at commit
+c6e7d37.  However, this package works only up to 128 bytes.")
+    (license license:expat)))
+
 (define-public rust-base64-0.12
   (package
     (name "rust-base64")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0004-gnu-Add-rust-bs58-0.2.patch

From c3cb1f98ac25d2ecfb0af3d178b894e0dfd844b7 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:29:05 -0700
Subject: [PATCH 04/57] gnu: Add rust-bs58-0.2.

* gnu/packages/crates-io.scm (rust-bs58-0.2): New variable.
---
 gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0dca0ab32d..cac2fdc2ed 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -2126,6 +2126,38 @@ extension of blocks.")
 Bresenham's line algorithm.")
     (license license:expat)))
 
+(define-public rust-bs58-0.2
+  (package
+    (name "rust-bs58")
+    (version "0.2.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bs58" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "125i962x0m0ggdif6ds51wfif2lypiicy469dj5j2l6rm6xycpn9"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-sha2" ,rust-sha2-0.8))
+       #:cargo-development-inputs
+       (("rust-assert-matches" ,rust-assert-matches-1.3)
+        ("rust-base58" ,rust-base58-0.1)
+        ("rust-rust-base58" ,rust-rust-base58-0.0))))
+    (home-page
+     "https://github.com/mycorrhiza/bs58-rs")
+    (synopsis "Another Base58 codec implementation")
+    (description
+     "Another Base58 codec implementation.  Compared to the base58 crate this
+is significantly faster at decoding (about 2.4x as fast when decoding 32
+bytes), almost the same speed for encoding (about 3% slower when encoding 32
+bytes), doesn't have the 128 byte limitation and supports a configurable
+alphabet.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-bstr-0.2
   (package
     (name "rust-bstr")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0005-gnu-Add-rust-cryptovec-0.4.patch

From 2317a99e53cfc70adafb568f8f570fceaebed2d0 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:29:29 -0700
Subject: [PATCH 05/57] gnu: Add rust-cryptovec-0.4.

* gnu/packages/crates-io.scm (rust-cryptovec-0.4): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index cac2fdc2ed..46330f1874 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -4619,6 +4619,33 @@ Code} (MAC) algorithms.")
         ("rust-generic-array" ,rust-generic-array-0.12)
         ("rust-subtle" ,rust-subtle-1.0))))))
 
+(define-public rust-cryptovec-0.4
+  (package
+    (name "rust-cryptovec")
+    (version "0.4.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cryptovec" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1n88dmhfb2dxs48zllq1g1dya76zx4fajw482qy8jj4hgg1da4p4"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-kernel32-sys" ,rust-kernel32-sys-0.2)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://pijul.org/cryptovec")
+    (synopsis
+     "A vector which zeroes its memory on clears and reallocations")
+    (description
+     "This package provides a vector which zeroes its memory on clears
+and reallocations.")
+    (license license:asl2.0)))
+
 (define-public rust-cssparser-0.27
   (package
     (name "rust-cssparser")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0006-gnu-Add-rust-getch-0.2.patch

From 62c46f496534ec7c9ef7d665e3cda312cd2f9984 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:29:51 -0700
Subject: [PATCH 06/57] gnu: Add rust-getch-0.2.

* gnu/packages/crates-io.scm (rust-getch-0.2): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 46330f1874..600ccf55c6 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -8722,6 +8722,33 @@ API library @code{gdi32}.")
      "This package provides a package for generating 3D meshes/")
     (license license:asl2.0)))
 
+(define-public rust-getch-0.2
+  (package
+    (name "rust-getch")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "getch" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "00in8q95qi8a5q3zn2zcaqp5avj79f5myd2a4zfdy2m24ycvbc5v"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-termios" ,rust-termios-0.2))))
+    (home-page
+     "https://nest.pijul.com/pijul_org/getch")
+    (synopsis
+     "Portable implementation of getch")
+    (description
+     "This package provides a portable implementation of getch, using
+_getch on Windows, and termios on Unix.")
+    (license license:asl2.0)))
+
 (define-public rust-getopts-0.2
   (package
     (name "rust-getopts")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0007-gnu-Add-rust-diffs-0.3.patch

From 412bb60907da8484d869e19bd4d5ec70c38a11f4 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:37:16 -0700
Subject: [PATCH 07/57] gnu: Add rust-diffs-0.3.

* gnu/packages/crates-io.scm (rust-diffs-0.3): New variable.
---
 gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 600ccf55c6..11d4b9a668 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -5620,6 +5620,30 @@ structs and enums.")
        #:cargo-development-inputs
        (("rust-term" ,rust-term-0.2))))))
 
+(define-public rust-diffs-0.3
+  (package
+    (name "rust-diffs")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "diffs" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "036sqycmir4bbl4016jprsyjq4hicc31r68dyqadmc8ac9pk55d1"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://nest.pijul.com/pijul_org/pijul")
+    (synopsis
+     "A number of diff algorithms, also called longest common subsequence")
+    (description
+     "This package provides a number of diff algorithms, also called longest
+common subsequence.  The diff algorithms include Myer's diff and Patience
+diff.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-digest-0.9
   (package
     (name "rust-digest")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0008-gnu-Add-rust-sanakirja-0.10.patch

From 04f5b17a9033203da9d9f6acf4b77d3c8a2d2ca9 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:50:51 -0700
Subject: [PATCH 08/57] gnu: Add rust-sanakirja-0.10.

* gnu/packages/crates-io.scm (rust-sanakirja-0.10): New variable.
---
 gnu/packages/crates-io.scm | 41 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 11d4b9a668..4a2ee14cff 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21308,6 +21308,47 @@ paths point to the same file.")
        #:cargo-development-inputs
        (("rust-rand" ,rust-rand-0.3))))))
 
+(define-public rust-sanakirja-0.10
+  (package
+    (name "rust-sanakirja")
+    (version "0.10.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sanakirja" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1fhn5lb6jn0pimnk0nbf5h4xvp28xdkdh33d57gq1ixy8b2y091y"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-fs2" ,rust-fs2-0.4)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-memmap" ,rust-memmap-0.7)
+        ("rust-rand" ,rust-rand-0.4)
+        ("rust-uuid" ,rust-uuid-0.7))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-tempdir" ,rust-tempdir-0.3))))
+    (home-page
+     "https://nest.pijul.com/pijul_org/sanakirja")
+    (synopsis
+     "A key-value dictionary, using copy-on-write and B trees")
+    (description
+     "This package provides a key-value dictionary, using copy-on-write and B
+trees.  It features:
+@itemize
+@item ACID semantics.
+@item B trees with copy-on-write.
+@item Support for referential transparency: databases can be cloned in time
+O(log n) (where n is the size of the database). This was the original
+motivation for writing this library.
+@end itemize")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-scan-fmt-0.2
   (package
     (name "rust-scan-fmt")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0009-gnu-Add-rust-buffered-reader-0.9.patch

From 4c12edf964fa846b067328dba4036385bedf4aea Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 15:55:21 -0700
Subject: [PATCH 09/57] gnu: Add rust-buffered-reader-0.9.

* gnu/packages/crates-io.scm (rust-buffered-reader-0.9): New variable.
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 4a2ee14cff..8221eb8eff 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -2206,6 +2206,35 @@ UTF-8.")
         (base32
          "0nzi9vqhl56ws8gq39f3aj4qjrr4l3g5lbkkcj8xq1x4cb74wq2r"))))))
 
+(define-public rust-buffered-reader-0.9
+  (package
+    (name "rust-buffered-reader")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "buffered-reader" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "05rklfiia1k4c4ifpim08l22i0q0l3j9xdg2yh3njrp6w58z6z13"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bzip2" ,rust-bzip2-0.3)
+        ("rust-flate2" ,rust-flate2-1.0)
+        ("rust-libc" ,rust-libc-0.2))))
+    (home-page "https://sequoia-pgp.org/")
+    (synopsis "A super-powered Reader")
+    (description
+     "Like the @code{BufRead} trait, the @code{BufferedReader} trait has an
+internal buffer that is directly exposed to the user.  This design enables two
+performance optimizations.  First, the use of an internal buffer amortizes
+system calls.  Second, exposing the internal buffer allows the user to work
+with data in place, which avoids another copy.")
+    (license license:gpl3)))
+
 (define-public rust-bumpalo-3
   (package
     (name "rust-bumpalo")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0010-gnu-Add-rust-sequoia-rfc2822-0.9.patch

From 34a7200205ee507264f7a327708f6eeeac121c1d Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:07:16 -0700
Subject: [PATCH 10/57] gnu: Add rust-sequoia-rfc2822-0.9.

* gnu/packages/crates-io.scm (rust-sequoia-rfc2822-0.9): New variable.
---
 gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8221eb8eff..2a021cfdba 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21978,6 +21978,45 @@ proven statistical guarantees.")
          (base32
           "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq"))))))
 
+(define-public rust-sequoia-rfc2822-0.9
+  (package
+    (name "rust-sequoia-rfc2822")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sequoia-rfc2822" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1aj34i6862718m162rqfv69fkmvdw063s6ws7hbp42n73gb08p5c"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-failure" ,rust-failure-0.1)
+        ("rust-lalrpop-util" ,rust-lalrpop-util-0.17))
+       #:cargo-development-inputs
+       (("rust-lalrpop" ,rust-lalrpop-0.17)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-quickcheck" ,rust-quickcheck-0.8)
+        ("rust-rand" ,rust-rand-0.4))))
+    (home-page "https://sequoia-pgp.org/")
+    (synopsis "An RFC 2822 name-addr parser")
+    (description
+     "Currently, this crate only recognizes the RFC 2822 name-addr and
+addr-spec productions, i.e., things of the form:
+
+@example{Name (Comment) <email@HIDDEN>}
+
+and
+
+@example{email@HIDDEN}
+
+Although the above appear simple to parse, RFC 2822's whitespace and comment
+rules are rather complex.  This crate implements the whole grammar." )
+    (license license:gpl3)))
+
 (define-public rust-serde-1
   (package
     (name "rust-serde")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0011-gnu-rust-nettle-sys-2-do-not-skip-build.patch

From ca5c03d825c7d54a67997a805404a9c699873feb Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Thu, 18 Jun 2020 15:13:55 -0700
Subject: [PATCH 11/57] gnu: rust-nettle-sys-2: do not skip build.

* gnu/packages/crates-io.scm (rust-nettle-2-sys): [arguments] Change
cargo-development-inputs into cargo-inputs since they are required to
build. Do not skip build.
---
 gnu/packages/crates-io.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2a021cfdba..9018bf8f99 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13988,8 +13988,7 @@ cryptographic library.")
     (inputs
      `(("nettle", nettle)))
     (arguments
-     `(#:skip-build? #t
-       #:cargo-development-inputs
+     `(#:cargo-inputs
        (("rust-bindgen" ,rust-bindgen-0.51)
         ("rust-pkg-config" ,rust-pkg-config-0.3))))
     (home-page "https://gitlab.com/sequoia-pgp/nettle-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0012-gnu-Add-rust-nettle-5.patch

From cb9c5078c439e4a18276518ded16fdccacb04eaf Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Thu, 18 Jun 2020 14:50:52 -0700
Subject: [PATCH 12/57] gnu: Add rust-nettle-5.

* gnu/packages/crates-io.scm (rust-nettle-5): New variable.
---
 gnu/packages/crates-io.scm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9018bf8f99..57cd64e888 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13969,6 +13969,20 @@ types as proposed in RFC 1158.")
 cryptographic library.")
   (license (list license:lgpl3 license:gpl2 license:gpl3))))
 
+(define-public rust-nettle-5
+  (package
+    (inherit rust-nettle-7)
+    (version "5.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nettle" version))
+       (file-name
+        (string-append (package-name rust-nettle-7) "-" version ".tar.gz"))
+       (sha256
+        (base32 "0zfplqdf3mag8r7lc124hl24vri8yg711jmm8gl1mpwnlhass2n4"))
+       (patches (search-patches "rust-nettle-disable-vendor.patch"))))))
+
 (define-public rust-nettle-sys-2
   (package
     (name "rust-nettle-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0013-gnu-Add-rust-sequoia-openpgp-0.9.patch

From adb7d036fc995895d03b2a33e719b4cfc359c4fe Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:08:02 -0700
Subject: [PATCH 13/57] gnu: Add rust-sequoia-openpgp-0.9.

* gnu/packages/crates-io.scm (rust-sequoia-openpgp-0.10): New variable.
---
 gnu/packages/crates-io.scm | 50 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 57cd64e888..5b2051b9fa 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21991,6 +21991,56 @@ proven statistical guarantees.")
          (base32
           "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq"))))))
 
+(define-public rust-sequoia-openpgp-0.9
+  (package
+    (name "rust-sequoia-openpgp")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sequoia-openpgp" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "007h2pi7lcph5jf5bxjydm7hjwjai33yk6dic3cxknki22lxlkfw"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-buffered-reader" ,rust-buffered-reader-0.9)
+        ("rust-bzip2" ,rust-bzip2-0.3)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-flate2" ,rust-flate2-1.0)
+        ("rust-idna" ,rust-idna-0.1)
+        ("rust-lalrpop" ,rust-lalrpop-0.17)
+        ("rust-lalrpop-util" ,rust-lalrpop-util-0.17)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-memsec" ,rust-memsec-0.5)
+        ("rust-nettle" ,rust-nettle-5)
+        ("rust-quickcheck" ,rust-quickcheck-0.8)
+        ("rust-rand" ,rust-rand-0.4)
+        ("rust-safemem" ,rust-safemem-0.3)
+        ("rust-sequoia-rfc2822" ,rust-sequoia-rfc2822-0.9)
+        ("rust-time" ,rust-time-0.1))
+       #:cargo-development-inputs
+       (("rust-lalrpop" ,rust-lalrpop-0.17)
+        ("rust-rpassword" ,rust-rpassword-4))))
+    (home-page "https://sequoia-pgp.org/")
+    (synopsis
+     "OpenPGP data types and associated machinery")
+    (description
+     "This crate aims to provide a complete implementation of OpenPGP as
+defined by RFC 4880 as well as some extensions (e.g., RFC 6637, which
+describes ECC cryptography for OpenPGP.  This includes support for unbuffered
+message processing.
+
+A few features that the OpenPGP community considers to be deprecated (e.g.,
+version 3 compatibility) have been left out.  We have also updated some
+OpenPGP defaults to avoid foot guns (e.g., we selected modern algorithm
+defaults).  If some functionality is missing, please file a bug report."  )
+    (license license:gpl3)))
+
 (define-public rust-sequoia-rfc2822-0.9
   (package
     (name "rust-sequoia-rfc2822")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0014-gnu-Add-rust-libpijul-0.12.patch

From a3f339276e5d91f37bb9ff7ee0c81ae8e33f5eaa Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:11:21 -0700
Subject: [PATCH 14/57] gnu: Add rust-libpijul-0.12.

* gnu/package/crates-io.scm (rust-libpijul-0.12): New variable.
---
 gnu/packages/crates-io.scm | 57 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5b2051b9fa..a7392099e9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -11995,6 +11995,63 @@ functions and static variables these libraries contain.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-libpijul-0.12
+  (package
+    (name "rust-libpijul")
+    (version "0.12.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "libpijul" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "18d9n8xaq5ncq3375f0xrr96l8si1frczgzdlrz3fl1jby8vbl6f"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bincode" ,rust-bincode-1)
+        ("rust-bitflags" ,rust-bitflags-1)
+        ("rust-bs58" ,rust-bs58-0.2)
+        ("rust-byteorder" ,rust-byteorder-1.3)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-diffs" ,rust-diffs-0.3)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-flate2" ,rust-flate2-1.0)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-ignore" ,rust-ignore-0.4)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-rand" ,rust-rand-0.4)
+        ("rust-sanakirja" ,rust-sanakirja-0.10)
+        ("rust-sequoia-openpgp" ,rust-sequoia-openpgp-0.9)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-tempdir" ,rust-tempdir-0.3)
+        ("rust-toml" ,rust-toml-0.5))))
+    (home-page "https://pijul.org/")
+    (synopsis
+     "Library component of the pijul version control system")
+    (description
+     "This crate contains the core API to access Pijul repositories.
+
+The key object is a @code{Repository}, on which @code{Txn} (immutable
+transactions) and @code{MutTxn} (mutable transactions) can be started, to
+perform a variety of operations.
+
+Another important object is a @code{Patch}, which encodes two different pieces
+of information:
+
+@itemize
+@item Information about deleted and inserted lines between two versions of a
+file.
+@item Information about file moves, additions and deletions.
+@end itemize")
+    (license license:gpl2+)))
+
 (define-public rust-libsqlite3-sys-0.15
   (package
     (name "rust-libsqlite3-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0015-gnu-Add-rust-line-0.1.patch

From 5fa25b844f008ad93c96f72bc92c3d060d5c3dd0 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:16:18 -0700
Subject: [PATCH 15/57] gnu: Add rust-line-0.1.

* gnu/packages/crates-io.scm (rust-line-0.1): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a7392099e9..c8ab67688f 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12115,6 +12115,39 @@ known as zlib).")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-line-0.1
+  (package
+    (name "rust-line")
+    (version "0.1.15")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "line" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0pissvrl5398701zlfd22w51ca32vhw83vbsl58a330hr4w5ra04"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-utf8parse" ,rust-utf8parse-0.1))))
+    (home-page "")
+    (synopsis
+     "Rust implementation of line editing in a terminal")
+    (description
+     "The main goals of this library are:
+
+@itemize
+@item Portability: should work on any system (Unix or Windows).
+@item Support: was written for a real-world project (Pijul), so support is
+unlikely to stop soon.
+@item Output quality: avoid usual blinking terminal lines that older C
+libraries have.
+@end itemize")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-line-wrap-0.1
   (package
     (name "rust-line-wrap")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0016-gnu-Add-rust-pathdiff-0.1.patch

From fde26fdb3957b0e913be89254bda76c28f50429d Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:18:54 -0700
Subject: [PATCH 16/57] gnu: Add rust-pathdiff-0.1.

* gnu/packages/crates-io.scm (rust-pathdiff-0.1): New variable.
---
 gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c8ab67688f..64456d4c53 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -16258,6 +16258,29 @@ synchronization primitives.")
      "Implementation detail of the paste crate.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-pathdiff-0.1
+  (package
+    (name "rust-pathdiff")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pathdiff" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0cfg3isnx6mf3wbi7rsg4nmvywby40sbcs589n20fgi09l4p1gx3"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://github.com/Manishearth/pathdiff")
+    (synopsis
+     "Library for diffing paths to obtain relative paths")
+    (description
+     "Use diff_paths to construct a relative path from a provided base
+directory path to the provided path.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-pbkdf2-0.4
   (package
     (name "rust-pbkdf2")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0017-gnu-Add-rust-progrs-0.1.patch

From 8133438aeae00863dc3fbe6111b75913b49d50f1 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:21:43 -0700
Subject: [PATCH 17/57] gnu: Add rust-progrs-0.1.

* gnu/packages/crates-io.scm (rust-progrs-0.1): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 64456d4c53..118ae10e84 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17834,6 +17834,39 @@ macro use case.")
 @code{proc_macro_derive} pretend to be @code{proc_macro}.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-progrs-0.1
+  (package
+    (name "rust-progrs")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "progrs" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "108jx8jrv2r1brhvbqfw6fwx298k5fnw3m46kn7lv0jx2wmf0ifz"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://nest.pijul.com/laumann/progrs")
+    (synopsis
+     "A small library for displaying compact progress bars")
+    (description
+     "There are a number of libraries out there that can be used for progress
+display, but in the author's opinion these libraries do it almost right -
+either they eat up too much screen real estate (by not sticking to one line
+per thing that should use progress) or they try to align stuff left and right.
+
+In the author's humble opinion, the best example of just the right amount of
+information vs screen real-estate is in the Git progress output (when cloning,
+pulling, etc).  It uses one line per thing, and may display both percentage
+complete (in cases where it's known) and even throughput (for network
+transfer).
+
+This library mimics the Git way of showing progress.")
+    (license license:gpl2+)))
+
 (define-public rust-proptest-0.9
   (package
     (name "rust-proptest")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0018-gnu-Add-rust-rpassword-2.1.0.patch

From 9c5358ec4c33f6b9c36746e1f21020036736cbb5 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:24:13 -0700
Subject: [PATCH 18/57] gnu: Add rust-rpassword-2.1.0.

* gnu/packages/crates-io.scm (rust-rpassword-2.1.0): New variable.
---
 gnu/packages/crates-io.scm | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 118ae10e84..1e239c9cb1 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -20027,6 +20027,21 @@ rust.")
 console applications.")
   (license license:asl2.0)))
 
+(define-public rust-rpassword-2.1.0
+  (package
+    (inherit rust-rpassword-4)
+    (version "2.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rpassword" version))
+       (file-name
+        (string-append
+         (package-name rust-rpassword-4) "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+
 (define-public rust-rusqlite-0.19
   (package
     (name "rust-rusqlite")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0019-gnu-Add-rust-cookie-0.12.patch

From cbca72eb4c64337a50efff2d831131797f567763 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:33:19 -0700
Subject: [PATCH 19/57] gnu: Add rust-cookie-0.12.

* gnu/packages/crates-io.scm (rust-cookie-0.12): New variable.
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 1e239c9cb1..2b8fb1a50c 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -3900,6 +3900,35 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
 semantics than those provided by @code{as} or @code{From}/@code{Into}.")
     (license license:expat)))
 
+(define-public rust-cookie-0.12
+  (package
+    (name "rust-cookie")
+    (version "0.12.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cookie" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1mdvqixahcywvqp0y8k2skkgbpfhsp0w73l9mz93dcrx1gq091l8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-ring" ,rust-ring-0.16)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-url" ,rust-url-1.7))))
+    (home-page
+     "https://github.com/alexcrichton/cookie-rs")
+    (synopsis
+     "Crate for parsing HTTP cookie headers and managing a cookie jar")
+    (description
+     "Parse HTTP cookie headers and manage a cookie jar with this crate.
+It supports signed and private (encrypted + signed) jars.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-cordic-0.1
   (package
     (name "rust-cordic")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0020-gnu-Add-rust-publicsuffix-1.5.patch

From 349285a83a07fffe534d84ffe707b43f93f6b602 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:41:31 -0700
Subject: [PATCH 20/57] gnu: Add rust-publicsuffix-1.5.

* gnu/packages/crates-io.scm (rust-publicsuffix-1.5): New variable.
---
 gnu/packages/crates-io.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2b8fb1a50c..f47999104a 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -18040,6 +18040,42 @@ This library mimics the Git way of showing progress.")
 stack pointer and inspect the properties of the stack.")
     (license (list license:isc license:asl2.0))))
 
+(define-public rust-publicsuffix-1.5
+  (package
+    (name "rust-publicsuffix")
+    (version "1.5.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "publicsuffix" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "040mrdpzj9lv5djxfksq2nbk29baiv3hx6gca2cfpcp23nl5kwlv"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-error-chain" ,rust-error-chain-0.12)
+        ("rust-idna" ,rust-idna-0.2)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-url" ,rust-url-2.1))
+       #:cargo-development-inputs
+       (("rust-rspec" ,rust-rspec-1))))
+    (home-page
+     "https://github.com/rushmorem/publicsuffix")
+    (synopsis
+     "Robust domain name parsing and RFC compliant email address validation")
+    (description
+     "This library uses Mozilla's Public Suffix List to reliably parse domain
+names and email addresses in Rust.  Though parsing domain names is it's
+primary goal, it also fully exposes the list allowing you to use convenient
+methods like @code{list.all()} to get all known domain extensions or
+@code{list.icann()} to get only ICANN extensions.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-pulldown-cmark-0.4
   (package
     (name "rust-pulldown-cmark")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0021-gnu-Add-rust-cookie-store-0.7.patch

From b39a2c686c3d68b165debec8d03cfb9c74c42d68 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:42:35 -0700
Subject: [PATCH 21/57] gnu: Add rust-cookie-store-0.7.

* gnu/packages/crates-io.scm (rust-cookie-store-0.7): New variable.
---
 gnu/packages/crates-io.scm | 40 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f47999104a..ba64af26e8 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -3929,6 +3929,46 @@ semantics than those provided by @code{as} or @code{From}/@code{Into}.")
 It supports signed and private (encrypted + signed) jars.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-cookie-store-0.7
+  (package
+    (name "rust-cookie-store")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cookie-store" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "174i9k9g62pfx7y1nqynywdpjplkl3j4hi3ck6bz2r996qzhnxa6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-cookie" ,rust-cookie-0.12)
+        ("rust-idna" ,rust-idna-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-publicsuffix" ,rust-publicsuffix-1.5)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-try-from" ,rust-try-from-0.3)
+        ("rust-url" ,rust-url-1.7))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-pretty-assertions"
+         ,rust-pretty-assertions-0.6))))
+    (home-page
+     "https://github.com/pfernie/cookie_store")
+    (synopsis
+     "Implementation of Cookie storage and retrieval per RFC6265")
+    (description
+     "This crate provides an implementation for storing and retrieving Cookies per
+the path and domain matching rules specified in RFC6265.
+
+Split from the user_agent crate.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-cordic-0.1
   (package
     (name "rust-cordic")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0022-gnu-Add-rust-hyper-old-types-0.11.patch

From d5406add11427657880cb4f6ae79bd9543d15851 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:47:23 -0700
Subject: [PATCH 22/57] gnu: Add rust-hyper-old-types-0.11.

* gnu/packages/crates-io.scm (rust-hyper-old-types-0.11): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ba64af26e8..7d72138cb4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -10536,6 +10536,39 @@ SystemTime}}.")
     (description "This package provides a fast and correct HTTP library.")
     (license license:expat)) )
 
+(define-public rust-hyper-old-types-0.11
+  (package
+    (name "rust-hyper-old-types")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hyper-old-types" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1i69sks0bwamzqdbx8ffgkssxffv6crdmwjgl47nr5pkxi8vx5k8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bytes" ,rust-bytes-0.4)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-httparse" ,rust-httparse-1.3)
+        ("rust-language-tags" ,rust-language-tags-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-percent-encoding" ,rust-percent-encoding-1.0)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-unicase" ,rust-unicase-2))))
+    (home-page "https://hyper.rs")
+    (synopsis "HTTP types from hyper 0.11.x")
+    (description
+     "This package contains HTTP types from the newer hyper crate in versions
+0.11.x.")
+    (license license:expat)))
+
 (define-public rust-hyper-tls-0.3
   (package
     (name "rust-hyper-tls")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0023-gnu-Add-rust-ct-logs-0.6.patch

From d43ea56f77a9001188ab6472129bdd3b6eacaccb Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:31:32 -0700
Subject: [PATCH 23/57] gnu: Add rust-ct-logs-0.6.

* gnu/package/crates-io.scm (rust-ct-logs-0.6): New variable.
* gnu/package/crates-io.scm (rust-ct-logs-0.3): [arguments] Inherit from rust-ct-logs-0.6.
---
 gnu/packages/crates-io.scm | 33 ++++++++++++++++++++++++++-------
 1 file changed, 26 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7d72138cb4..90d55a9d30 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -4939,27 +4939,46 @@ and reallocations.")
      "Bare bones CSV parsing with no_std support.")
     (license (list license:unlicense license:expat))))
 
-(define-public rust-ct-logs-0.3
+(define-public rust-ct-logs-0.6
   (package
     (name "rust-ct-logs")
-    (version "0.3.0")
+    (version "0.6.0")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "ct-logs" version))
-       (file-name (string-append name "-" version ".tar.gz"))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "1f0885ws3p49xh6dfgnhh7zjw9h4rhs9ljs8i9cnkhifzz98784f"))))
+        (base32
+         "04wiwiv4ghni3x2vni3z711mlz0ndqvh04vmdkbw3nr7zbsqcdjd"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
-       (("rust-sct" ,rust-sct-0.3))))
+     `(#:cargo-inputs (("rust-sct" ,rust-sct-0.6))))
     (home-page "https://github.com/ctz/ct-logs")
     (synopsis "Google's list of Certificate Transparency logs")
-    (description "This package contains Google's list of Certificate
+    (description
+     "This package contains Google's list of Certificate
 Transparency logs for use with sct crate.")
     (license (list license:asl2.0 license:isc license:expat))))
 
+(define-public rust-ct-logs-0.3
+  (package
+    (inherit rust-ct-logs-0.6)
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "ct-logs" version))
+       (file-name
+        (string-append
+         (package-name rust-ct-logs-0.6) "-" version ".tar.gz"))
+       (sha256
+        (base32 "1f0885ws3p49xh6dfgnhh7zjw9h4rhs9ljs8i9cnkhifzz98784f"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-sct" ,rust-sct-0.3))))))
+
 (define-public rust-ctor-0.1
   (package
     (name "rust-ctor")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0024-gnu-Add-rust-hyper-rustls-0.18.patch

From 26e59fa50daa874d1dd170f59339a909e0693f1e Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:53:58 -0700
Subject: [PATCH 24/57] gnu: Add rust-hyper-rustls-0.18.

* gnu/packages/crates-io.scm (rust-hyper-rustls-0.18): New variable.
---
 gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 90d55a9d30..5d811a02e3 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -10588,6 +10588,40 @@ SystemTime}}.")
 0.11.x.")
     (license license:expat)))
 
+(define-public rust-hyper-rustls-0.18
+  (package
+    (name "rust-hyper-rustls")
+    (version "0.18.0-alpha.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hyper-rustls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "08s8c8hqgmjmv0ivavn90yxvh9vbakr4a5dzj70y0x6qc6vm0hgj"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-ct-logs" ,rust-ct-logs-0.6)
+        ("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-hyper" ,rust-hyper-0.12)
+        ("rust-rustls" ,rust-rustls-0.16)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.12)
+        ("rust-webpki" ,rust-webpki-0.21)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.17))
+       #:cargo-development-inputs
+       (("rust-tokio" ,rust-tokio-0.1))))
+    (home-page "https://github.com/ctz/hyper-rustls")
+    (synopsis
+     "Rustls+hyper integration for pure rust HTTPS")
+    (description
+     "Rustls+hyper integration for pure rust HTTPS")
+    (license (list license:asl2.0 license:isc license:expat))))
+
 (define-public rust-hyper-tls-0.3
   (package
     (name "rust-hyper-tls")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0025-gnu-Add-rust-mime-guess-2.0.patch

From 68db6d0e9b619c214fa8b386a32a5a4ecad121c2 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 16:58:12 -0700
Subject: [PATCH 25/57] gnu: Add rust-mime-guess-2.0.

* gnu/packages/crates-io.scm (rust-mime-guess-2.0): New version.
---
 gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5d811a02e3..9000ce940b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13529,6 +13529,36 @@ for Rust structs.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-mime-guess-2.0
+  (package
+    (name "rust-mime-guess")
+    (version "2.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "mime-guess" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "16c5ssgali30db6jh1cndy77dd1qgcykhshiyfyjvxxf94wx03hs"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-mime" ,rust-mime-0.3)
+        ("rust-unicase" ,rust-unicase-2))
+       #:cargo-development-inputs
+       (("rust-criterion" ,rust-criterion-0.2)
+        ("rust-unicase" ,rust-unicase-2))))
+    (home-page
+     "https://github.com/abonander/mime_guess")
+    (synopsis
+     "Detect a file's MIME type by its extension")
+    (description
+     "This crate provides MIME/MediaType guessing by file extension.  It uses
+a static map of known file extension to MIME type mappings.")
+    (license license:expat)))
+
 (define-public rust-miniz-oxide-0.3
   (package
     (name "rust-miniz-oxide")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0026-gnu-Add-rust-serde-urlencoded-0.5.patch

From e5970c26f5ad7d6b30edb0d231dd328f688406c1 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:02:47 -0700
Subject: [PATCH 26/57] gnu: Add rust-serde-urlencoded-0.5.

* gnu/packages/crates-io.scm (rust-serde-urlencoded-0.5): New variable.
---
 gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9000ce940b..407709f47d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22939,6 +22939,36 @@ for the serde framework.")
                ((", path = \"../serde\"") ""))
              #t)))))))
 
+(define-public rust-serde-urlencoded-0.5
+  (package
+    (name "rust-serde-urlencoded")
+    (version "0.5.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serde-urlencoded" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0nhnzllx5xrij4x17g351n14md691r95mxr7sbpz4sl80n8xcbb4"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-dtoa" ,rust-dtoa-0.4)
+        ("rust-itoa" ,rust-itoa-0.4)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-url" ,rust-url-1.7))
+       #:cargo-development-inputs
+       (("rust-serde-derive" ,rust-serde-derive-1))))
+    (home-page
+     "https://github.com/nox/serde_urlencoded")
+    (synopsis "Serde support for x-www-form-urlencoded")
+    (description
+      "This package provides serde support for the x-www-form-urlencoded
+format.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-serde-yaml-0.8
   (package
     (name "rust-serde-yaml")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0027-gnu-Add-rust-socks-0.3.patch

From 797080ea7f20d950a156b02475c2367be4116cc3 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:14:20 -0700
Subject: [PATCH 27/57] gnu: Add rust-socks-0.3.

* gnu/packages/crates-io.scm (rust-socks-0.3): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 407709f47d..c9da31d091 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23985,6 +23985,33 @@ maximal amount of configuration possible intended.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-socks-0.3
+  (package
+    (name "rust-socks")
+    (version "0.3.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "socks" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1hnbw4c4j7dn9n3bd1v7ddkdzlxlzkfw3z29da1nxlj6jgx4r9p6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1.3)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-winapi" ,rust-winapi-0.3)
+        ("rust-ws2-32-sys" ,rust-ws2-32-sys-0.2))))
+    (home-page
+     "https://github.com/sfackler/rust-socks")
+    (synopsis "Rust SOCKS proxy clients")
+    (description
+     "You can write SOCKS proxy clients with this crate.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-sourcefile-0.1
   (package
     (name "rust-sourcefile")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0028-gnu-Add-rust-ipconfig-0.2.patch

From 1336b5004db8ec511d0d9c780f1eb1ad4b0bd02b Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:14:58 -0700
Subject: [PATCH 28/57] gnu: Add rust-ipconfig-0.2.

* gnu/packages/crates-io.scm (rust-ipconfig-0.2): New variable.
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c9da31d091..379501c488 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -11119,6 +11119,35 @@ whether or not a given path points to an executable file.")
     (description "Parsing ISO8601 dates using nom.")
     (license license:expat)))
 
+(define-public rust-ipconfig-0.2
+  (package
+    (name "rust-ipconfig")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "ipconfig" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0gyqiqr4nk2dw9ild1aq3hnv6984sgydfdq7ki586q5ydwhzlyda"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-socket2" ,rust-socket2-0.3)
+        ("rust-widestring" ,rust-widestring-0.4)
+        ("rust-winapi" ,rust-winapi-0.3)
+        ("rust-winreg" ,rust-winreg-0.6))))
+    (home-page
+     "https://github.com/liranringel/ipconfig")
+    (synopsis
+     "Get network adapters information and network configuration for windows")
+    (description
+     "You can get network adapters information and network configuration for
+windows with this crate.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-itertools-0.9
   (package
     (name "rust-itertools")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0029-gnu-Add-rust-enum-as-inner-0.3.patch

From 8e4715829ff560af12a1e2fd90199cf07f6775e7 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:27:07 -0700
Subject: [PATCH 29/57] gnu: Add rust-enum-as-inner-0.3.

* gnu/packages/crates-io.scm (rust-enum-as-inner-0.3): New variable.
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 379501c488..8dea2ba78d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -6727,6 +6727,35 @@ Standard.")
      "Streaming transcoding for encoding_rs.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-enum-as-inner-0.3
+  (package
+    (name "rust-enum-as-inner")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "enum-as-inner" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0bj914fh5b57j1ij66m021l9pdhvp1bnpwpahhl4qgsjprznq2lh"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-heck" ,rust-heck-0.3)
+        ("rust-proc-macro2" ,rust-proc-macro2-0.4)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-0.15))))
+    (home-page
+     "https://github.com/bluejekyll/enum-as-inner")
+    (synopsis
+     "Macro for deriving inner field accessor functions on enums")
+    (description
+     "This package provides a deriving proc-macro for generating functions to
+automatically give access to the inner members of an enum.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-env-logger-0.7
   (package
     (name "rust-env-logger")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0030-gnu-Add-rust-typed-headers-0.1.patch

From c98c5271104e3bad267a073123fb3096a104f04e Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:27:43 -0700
Subject: [PATCH 30/57] gnu: Add rust-typed-headers-0.1.

* gnu/packages/crates-io.scm (rust-typed-headers-0.1): New variable.
---
 gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8dea2ba78d..f6756e65a7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27455,6 +27455,41 @@ serializing Rust str")
      "The arena, a fast but limited type of allocator.")
     (license license:expat)))
 
+(define-public rust-typed-headers-0.1
+  (package
+    (name "rust-typed-headers")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "typed-headers" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0g40nlq5iw0zxhwb7nfmfbr9m86abgwwhxwhzrm10nfq6bsmlvxx"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bytes" ,rust-bytes-0.4)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-mime" ,rust-mime-0.3))))
+    (home-page
+     "https://github.com/sfackler/typed-headers")
+    (synopsis
+     "Typed HTTP header serialization and deserialization")
+    (description
+     "This crate is still in its early, experimental stages.  It currently
+takes a fairly pedantic view of parsing, and tries to support exactly what's
+specified in the HTTP RFCs.
+
+The HeaderMapExt extension trait provides new methods on the
+@code{http::HeaderMap} type to insert, retrieve, and remove headers in a typed
+manner.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-typemap-0.3
   (package
     (name "rust-typemap")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0031-gnu-Add-rust-trust-dns-proto-0.8.patch

From c2f88b990b23345637d07ae29645d602a21a05ec Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:29:44 -0700
Subject: [PATCH 31/57] gnu: Add rust-trust-dns-proto-0.8.

* gnu/packages/crates-io.scm (rust-trust-dns-proto-0.8): New variable.
---
 gnu/packages/crates-io.scm | 47 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f6756e65a7..e0366a0c92 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27346,6 +27346,53 @@ serializing Rust str")
      "This package provides a library for visualizing tree structured data.")
     (license license:expat)))
 
+(define-public rust-trust-dns-proto-0.8
+  (package
+  (name "rust-trust-dns-proto")
+  (version "0.8.0")
+  (source
+    (origin
+      (method url-fetch)
+      (uri (crate-uri "trust-dns-proto" version))
+      (file-name
+        (string-append name "-" version ".tar.gz"))
+      (sha256
+        (base32
+          "1f9xjyz7fsa83dj00zif7lmljd4x420c0vmniinhb7c35777wi85"))))
+  (build-system cargo-build-system)
+  (arguments
+    `(#:cargo-inputs
+      (("rust-data-encoding" ,rust-data-encoding-2.1)
+       ("rust-enum-as-inner" ,rust-enum-as-inner-0.3)
+       ("rust-failure" ,rust-failure-0.1)
+       ("rust-futures" ,rust-futures-0.1)
+       ("rust-idna" ,rust-idna-0.1)
+       ("rust-lazy-static" ,rust-lazy-static-1.3)
+       ("rust-log" ,rust-log-0.4)
+       ("rust-openssl" ,rust-openssl-0.10)
+       ("rust-rand" ,rust-rand-0.4)
+       ("rust-ring" ,rust-ring-0.16)
+       ("rust-serde" ,rust-serde-1)
+       ("rust-smallvec" ,rust-smallvec-0.6)
+       ("rust-socket2" ,rust-socket2-0.3)
+       ("rust-tokio-executor" ,rust-tokio-executor-0.1)
+       ("rust-tokio-io" ,rust-tokio-io-0.1)
+       ("rust-tokio-reactor" ,rust-tokio-reactor-0.1)
+       ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+       ("rust-tokio-timer" ,rust-tokio-timer-0.2)
+       ("rust-tokio-udp" ,rust-tokio-udp-0.1)
+       ("rust-url" ,rust-url-1.7))
+      #:cargo-development-inputs
+      (("rust-env-logger" ,rust-env-logger-0.6)
+       ("rust-tokio" ,rust-tokio-0.1))))
+  (home-page "http://www.trust-dns.org/index.html")
+  (synopsis
+    "Trust-DNS is a safe and secure DNS library")
+  (description
+    "Trust-DNS is a safe and secure DNS library.  This is the
+foundational DNS protocol library for all Trust-DNS projects.")
+  (license (list license:asl2.0 license:expat))))
+
 (define-public rust-try-from-0.3
   (package
     (name "rust-try-from")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0032-gnu-Add-rust-trust-dns-rustls-0.7.patch

From 30f351637b4f9f637ec83ba7a4b53669e4247556 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:32:40 -0700
Subject: [PATCH 32/57] gnu: Add rust-trust-dns-rustls-0.7.

* gnu/packages/crates-io.scm (rust-trust-dns-rustls-0.7): New variable.
---
 gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e0366a0c92..193a8b2cf9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27393,6 +27393,40 @@ serializing Rust str")
 foundational DNS protocol library for all Trust-DNS projects.")
   (license (list license:asl2.0 license:expat))))
 
+(define-public rust-trust-dns-rustls-0.7
+  (package
+    (name "rust-trust-dns-rustls")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-rustls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0glpggq31764q7lp19h5l6implsr7ik015qkm5rg7pqwy93krsb3"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-rustls" ,rust-rustls-0.16)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.12)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.8)
+        ("rust-webpki" ,rust-webpki-0.21))
+       #:cargo-development-inputs
+       (("rust-openssl" ,rust-openssl-0.10)
+        ("rust-tokio" ,rust-tokio-0.1))))
+    (home-page "http://www.trust-dns.org/index.html")
+    (synopsis
+     "Trust-DNS is a safe and secure DNS library")
+    (description
+     "Trust-DNS is a safe and secure DNS library.  This is an
+extension for the Trust-DNS client to use rustls for TLS.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-try-from-0.3
   (package
     (name "rust-try-from")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0033-gnu-Add-rust-trust-dns-https-0.4.patch

From a38c7639443b9fef6a9d3d4201dee75e46903c9c Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:33:29 -0700
Subject: [PATCH 33/57] gnu: Add rust-trust-dns-https-0.4.

* gnu/packages/crates-io.scm (rust-trust-dns-https-0.4): New variable.
---
 gnu/packages/crates-io.scm | 44 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 193a8b2cf9..857de781a4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27346,6 +27346,50 @@ serializing Rust str")
      "This package provides a library for visualizing tree structured data.")
     (license license:expat)))
 
+(define-public rust-trust-dns-https-0.4
+  (package
+    (name "rust-trust-dns-https")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-https" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1ypkbgm5p7smjfkca3gaszhvknbr2ykf8skw8pyvpn0sq95lv5ia"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-data-encoding" ,rust-data-encoding-2.1)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-h2" ,rust-h2-0.1)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-rustls" ,rust-rustls-0.16)
+        ("rust-tokio-executor" ,rust-tokio-executor-0.1)
+        ("rust-tokio-reactor" ,rust-tokio-reactor-0.1)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.12)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.8)
+        ("rust-trust-dns-rustls" ,rust-trust-dns-rustls-0.7)
+        ("rust-typed-headers" ,rust-typed-headers-0.1)
+        ("rust-webpki" ,rust-webpki-0.21)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.17))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-tokio" ,rust-tokio-0.1))))
+    (home-page "http://www.trust-dns.org/index.html")
+    (synopsis
+     "Trust-DNS is a safe and secure DNS library")
+    (description
+     "Trust-DNS is a safe and secure DNS library.  This is an
+extension for the Trust-DNS client to use DNS over HTTPS.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-trust-dns-proto-0.8
   (package
   (name "rust-trust-dns-proto")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0034-gnu-Add-rust-tokio-openssl-0.4.patch

From 9748c077ed8f6e2834c8ca27b48267ca761fa4ec Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:37:56 -0700
Subject: [PATCH 34/57] gnu: Add rust-tokio-openssl-0.4.

* gnu/packages/crates-io.scm (rust-tokio-opessl-0.4): New variable.
---
 gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 857de781a4..8bf4efc745 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26816,6 +26816,39 @@ applications backed by buffers.")
 Tokio.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-tokio-openssl-0.4
+  (package
+    (name "rust-tokio-openssl")
+    (version "0.4.0-alpha.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-openssl" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1h649wxs0shqc7sk2fnf9nbanfghg9viy1c1n43npyzncarn2jl9"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-openssl" ,rust-openssl-0.10)
+        ("rust-tokio-io" ,rust-tokio-io-0.1))
+       #:cargo-development-inputs
+       (("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-tokio" ,rust-tokio-0.1))))
+    (home-page
+     "https://github.com/alexcrichton/tokio-openssl")
+    (synopsis
+     "SSL streams for Tokio backed by OpenSSL")
+    (description
+     "This library is an implementation of TLS streams using OpenSSL for
+negotiating the connection.  Each TLS stream implements the Read and Write
+traits to interact and interoperate with the rest of the futures I/O
+ecosystem.  Client connections initiated from this crate verify hostnames
+automatically and by default.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-tokio-process-0.2
   (package
     (name "rust-tokio-process")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0035-gnu-Add-rust-trust-dns-openssl-0.7.patch

From ca68bb32750f3cdaaf6bf9a11fedadf8f3a70cdc Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:38:49 -0700
Subject: [PATCH 35/57] gnu: Add rust-trust-dns-openssl-0.7.

* gnu/packages/crates-io.scm (rust-trust-dns-openssl-0.7): New variable.
---
 gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8bf4efc745..37ade90e65 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27423,6 +27423,38 @@ serializing Rust str")
 extension for the Trust-DNS client to use DNS over HTTPS.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-trust-dns-openssl-0.7
+  (package
+    (name "rust-trust-dns-openssl")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-openssl" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "19qxi4y33wd2g55r4v9d6b06d20bdhqhvsrsmbpz5ir3i7l5psp7"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-tokio-openssl" ,rust-tokio-openssl-0.4)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.8))
+       #:cargo-development-inputs
+       (("rust-openssl" ,rust-openssl-0.10)
+        ("rust-tokio" ,rust-tokio-0.1))))
+    (home-page "http://www.trust-dns.org/index.html")
+    (synopsis
+     "Trust-DNS is a safe and secure DNS library")
+    (description
+     "Trust-DNS is a safe and secure DNS library.  This is an
+extension for the Trust-DNS client to use tokio-openssl for TLS.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-trust-dns-proto-0.8
   (package
   (name "rust-trust-dns-proto")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0036-gnu-Add-rust-tracing-log-0.1.patch

From 23d5b59ac0d1b5d2722a490167cd65ed418f07bd Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:54:28 -0700
Subject: [PATCH 36/57] gnu: Add rust-tracing-log-0.1.

* gnu/packages/crates-io.scm (rust-tracing-log-0.1): New variable.
---
 gnu/packages/crates-io.scm | 42 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 37ade90e65..a379c13001 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27340,6 +27340,48 @@ serializing Rust str")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-tracing-log-0.1
+  (package
+    (name "rust-tracing-log")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tracing-log" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0qsinlbk2knrqgx1k2zq8kjxs71x44vzpma2rin1sm462agcjav5"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-tracing-core" ,rust-tracing-core-0.1))
+       #:cargo-development-inputs
+       (("rust-tracing" ,rust-tracing-0.1))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Provides compatibility between tracing the log crates")
+    (description
+     "Tracing is a framework for instrumenting Rust programs with
+context-aware, structured, event-based diagnostic information.  This crate
+provides compatibility layers for using tracing alongside the logging facade
+provided by the log crate.
+
+This crate provides:
+
+@itemize
+@item @code{AsTrace} and @code{AsLog} traits for converting between tracing
+and log types.
+@item @code{LogTracer}, a @code{log::Log} implementation that consumes
+@code{log::Records} and outputs them as @code{tracing::Events}.
+@item An @code{env_logger} module, with helpers for using the env_logger crate
+with tracing (optional, enabled by the env-logger feature).
+@end itemize")
+    (license license:expat)))
+
 (define-public rust-traitobject-0.1
   (package
     (name "rust-traitobject")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0037-gnu-Add-rust-matchers-0.0.patch

From 24c6da3fd2457240df8d63fa5a248f90ac9e164e Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:51:44 -0700
Subject: [PATCH 37/57] gnu: Add rust-matchers-0.0.

* gnu/package/crates-io.scm (rust-matchers-0.0): New variable.
---
 gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a379c13001..4dccbf1b8d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13110,6 +13110,32 @@ statement, the first matching branch is the item that gets emitted.")
 whether an expression matches a pattern.")
     (license license:expat)))
 
+(define-public rust-matchers-0.0
+  (package
+    (name "rust-matchers")
+    (version "0.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "matchers" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1q8ckqmkjqkznvdi9x0z769yz2bmvlqcwx51ad2lpk4mfmgpi6gh"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-regex-automata" ,rust-regex-automata-0.1))))
+    (home-page "https://github.com/hawkw/matchers")
+    (synopsis
+     "Regex matching on character and byte streams")
+    (description
+     "Use this crate to match on character and byte streams using regular
+grammars.  It provides the subset of the regex crate that only deals with
+matching, not parsing substrings.")
+    (license license:expat)))
+
 (define-public rust-matrixmultiply-0.2
   (package
     (name "rust-matrixmultiply")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0038-gnu-Add-rust-tracing-subscriber-0.1.patch

From 60e64b811d0d34d35f5ab82bf8cb27c67118dea0 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:55:40 -0700
Subject: [PATCH 38/57] gnu: Add rust-tracing-subscriber-0.1.

* gnu/packages/crates-io.scm (rust-tracing-subscriber-0.1): New variable.
---
 gnu/packages/crates-io.scm | 48 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 4dccbf1b8d..dc70efea4d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27408,6 +27408,54 @@ with tracing (optional, enabled by the env-logger feature).
 @end itemize")
     (license license:expat)))
 
+(define-public rust-tracing-subscriber-0.1
+  (package
+    (name "rust-tracing-subscriber")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tracing-subscriber" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0bn6911zky2wg8ndvrj38v02hml0hpk0g49h0d3kf52klxqiffy6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-ansi-term" ,rust-ansi-term-0.11)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-matchers" ,rust-matchers-0.0)
+        ("rust-owning-ref" ,rust-owning-ref-0.4)
+        ("rust-parking-lot" ,rust-parking-lot-0.9)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-smallvec" ,rust-smallvec-0.6)
+        ("rust-tracing-core" ,rust-tracing-core-0.1)
+        ("rust-tracing-log" ,rust-tracing-log-0.1))
+       #:cargo-development-inputs
+       (("rust-criterion" ,rust-criterion-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-tracing" ,rust-tracing-0.1)
+        ("rust-tracing-log" ,rust-tracing-log-0.1))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Implement and compose tracing subscribers")
+    (description
+     "Utilities for implementing and composing tracing subscribers.
+
+Tracing is a framework for instrumenting Rust programs to collect
+scoped, structured, and async-aware diagnostics.  The Subscriber trait
+represents the functionality necessary to collect this trace
+data.  This crate contains tools for composing subscribers out of
+smaller units of behaviour, and batteries-included implementations of
+common subscriber functionality.
+
+Tracing-subscriber is intended for use by both Subscriber authors and
+application authors using tracing to instrument their applications.")
+    (license license:expat)))
+
 (define-public rust-traitobject-0.1
   (package
     (name "rust-traitobject")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0039-gnu-Add-rust-tracing-fmt-0.1.patch

From 1f26bdd7b78857918f8b31bb3b48bfd3580fff9e Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:56:22 -0700
Subject: [PATCH 39/57] gnu: Add rust-tracing-fmt-0.1.

* gnu/packages/crates-io.scm (rust-tracing-fmt-0.1): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index dc70efea4d..91d8e141c3 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27366,6 +27366,33 @@ serializing Rust str")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-tracing-fmt-0.1
+  (package
+    (name "rust-tracing-fmt")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tracing-fmt" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0wagcrd6w8d3k7zdvg6sy2bwfh8w87i6ndia69p54fc7p3z4f1c8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-tracing-subscriber" ,rust-tracing-subscriber-0.1))
+       #:cargo-development-inputs
+       (("rust-tracing" ,rust-tracing-0.1))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Tracing subscriber that formats and logs trace data")
+    (description
+     "This package provides a tracing subscriber that formats and logs trace
+data.  Moved to the tracing-subscriber crate.")
+    (license license:expat)))
+
 (define-public rust-tracing-log-0.1
   (package
     (name "rust-tracing-log")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0040-gnu-Add-rust-tracing-attributes-0.1.patch

From 4d9094a13ef499fdd84c9fd124948b40d332b899 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:56:51 -0700
Subject: [PATCH 40/57] gnu: Add rust-tracing-attributes-0.1.

* gnu/packages/crates-io.scm (rust-tracing-attributes-0.1): New variable.
---
 gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 91d8e141c3..15e304eb6b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27343,6 +27343,40 @@ Serialize/Deserialize traits for TOML data to facilitate deserializing and
 serializing Rust str")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-tracing-attributes-0.1
+  (package
+    (name "rust-tracing-attributes")
+    (version "0.1.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tracing-attributes" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1yly610mxhjs2078mrxn5vzx9r3jgxvhzpgw6r59zf8cbn1s2hsv"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-0.15))
+       #:cargo-development-inputs
+       (("rust-tracing" ,rust-tracing-0.1)
+        ("rust-tracing-core" ,rust-tracing-core-0.1)
+        ("rust-tracing-fmt" ,rust-tracing-fmt-0.1))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Procedural macro attributes for automatically instrumenting functions")
+    (description
+     "Tracing is a framework for instrumenting Rust programs to collect structured,
+event-based diagnostic information.  This crate provides the
+@code{#[instrument]} attribute for automatically instrumenting functions using
+tracing.
+
+Note that this macro is also re-exported by the main tracing crate.")
+    (license license:expat)))
+
 (define-public rust-tracing-core-0.1
   (package
     (name "rust-tracing-core")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: attachment;
 filename=0041-gnu-Add-rust-tracing-0.1.patch
Content-Transfer-Encoding: quoted-printable

From 341010a3b33a0462e05320a68f122cce7ccf6695 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:57:50 -0700
Subject: [PATCH 41/57] gnu: Add rust-tracing-0.1.

* gnu/packages/crates-io.scm (rust-tracing-0.1): New variable.
---
 gnu/packages/crates-io.scm | 48 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 15e304eb6b..0236e4d7e3 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27343,6 +27343,54 @@ Serialize/Deserialize traits for TOML data to faci=
litate deserializing and
 serializing Rust str")
     (license (list license:expat license:asl2.0))))
=20
+(define-public rust-tracing-0.1
+  (package
+    (name "rust-tracing")
+    (version "0.1.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tracing" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0r1yn5b1nssvi5kqj19rq4x8l6kh8s9s2hpd9vi7l6sda1d3a7vh"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-spin" ,rust-spin-0.5)
+        ("rust-tracing-attributes"
+         ,rust-tracing-attributes-0.1)
+        ("rust-tracing-core" ,rust-tracing-core-0.1))
+       #:cargo-development-inputs
+       (("rust-criterion" ,rust-criterion-0.2)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.4))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Application-level tracing for Rust")
+    (description
+     "Tracing is a framework for instrumenting Rust programs to collect
+structured, event-based diagnostic information.
+
+In asynchronous systems like Tokio, interpreting traditional log messages =
can
+often be quite challenging.  Since individual tasks are multiplexed on the=
 same
+thread, associated events and log lines are intermixed making it difficult=
 to
+trace the logic flow.  Tracing expands upon logging-style diagnostics by
+allowing libraries and applications to record structured events with
+additional information about temporality and causality =E2=80=94 unlike a =
log message,
+a span in tracing has a beginning and end time, may be entered and exited =
by
+the flow of execution, and may exist within a nested tree of similar spans=
.  In
+addition, tracing spans are structured, with the ability to record typed d=
ata
+as well as textual messages.
+
+The tracing crate provides the APIs necessary for instrumenting libraries =
and
+applications to emit trace data.")
+    (license license:expat)))
+
 (define-public rust-tracing-attributes-0.1
   (package
     (name "rust-tracing-attributes")
--=20
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0042-gnu-Add-rust-tokio-net-0.2.patch

From a4b84bf26300d8753c087d323c6ddf0baf6516ab Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 17:59:45 -0700
Subject: [PATCH 42/57] gnu: Add rust-tokio-net-0.2.

* gnu/packages/crates-io.scm (rust-tokio-net-0.2): New variable.
---
 gnu/packages/crates-io.scm | 49 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0236e4d7e3..a8bbddf689 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26842,6 +26842,55 @@ applications backed by buffers.")
 Tokio.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-tokio-net-0.2
+  (package
+    (name "rust-tokio-net")
+    (version "0.2.0-alpha.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-net" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "15vm0bndn6zcpkp1yb6v736rbhqgim5skc76rz299xd3y0pr249a"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-crossbeam-queue" ,rust-crossbeam-queue-0.1)
+        ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
+        ("rust-futures-core-preview"
+         ,rust-futures-core-preview-0.3)
+        ("rust-futures-sink-preview"
+         ,rust-futures-sink-preview-0.3)
+        ("rust-futures-util-preview"
+         ,rust-futures-util-preview-0.3)
+        ("rust-iovec" ,rust-iovec-0.1)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-mio" ,rust-mio-0.6)
+        ("rust-mio-named-pipes" ,rust-mio-named-pipes-0.1)
+        ("rust-mio-uds" ,rust-mio-uds-0.6)
+        ("rust-num-cpus" ,rust-num-cpus-1)
+        ("rust-parking-lot" ,rust-parking-lot-0.8)
+        ("rust-signal-hook-registry"
+         ,rust-signal-hook-registry-1)
+        ("rust-slab" ,rust-slab-0.4)
+        ("rust-tokio-codec" ,rust-tokio-codec-0.1)
+        ("rust-tokio-executor" ,rust-tokio-executor-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-sync" ,rust-tokio-sync-0.1)
+        ("rust-tracing" ,rust-tracing-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Event loop that drives Tokio I/O resources")
+    (description
+     "This package provides the event loop that drives Tokio I/O resources.")
+    (license license:expat)))
+
 (define-public rust-tokio-openssl-0.4
   (package
     (name "rust-tokio-openssl")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0043-gnu-Add-rust-tokio-tls-0.3.patch

From 2dff7edae54d27d5351ffc9d647a94aab8904c75 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:00:53 -0700
Subject: [PATCH 43/57] gnu: Add rust-tokio-tls-0.3.

* gnu/packages/crates-io.scm (rust-tokio-tls-0.3): New variable.
---
 gnu/packages/crates-io.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a8bbddf689..c0890d8443 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27223,6 +27223,42 @@ pool.")
     (description "Timer facilities for Tokio.")
     (license license:expat)))
 
+(define-public rust-tokio-tls-0.3
+  (package
+    (name "rust-tokio-tls")
+    (version "0.3.0-alpha.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-tls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1hcxgqqmg8v0lmw5hnfr5w2x7p2x97m50yisjrmxjcz89a8v2ay6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-tokio-io" ,rust-tokio-io-0.1))
+       #:cargo-development-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-schannel" ,rust-schannel-0.1)
+        ("rust-security-framework" ,rust-security-framework-0.3)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-net" ,rust-tokio-net-0.2)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "TLS/SSL streams for Tokio")
+    (description
+     "This package provides an implementation of TLS/SSL streams for Tokio
+giving an implementation of TLS for nonblocking I/O streams.")
+    (license license:expat)))
+
 (define-public rust-tokio-trace-core-0.2
   (package
     (name "rust-tokio-trace-core")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0044-gnu-Add-rust-trust-dns-native-tls-0.7.patch

From 4e97535b99a86c73583397baec3f4026589bf925 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:01:33 -0700
Subject: [PATCH 44/57] gnu: Add rust-trust-dns-native-tls-0.7.

* gnu/packages/crates-io.scm (rust-trust-dns-native-tls-0.7): New variable.
---
 gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c0890d8443..5c15c1104a 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27733,6 +27733,37 @@ application authors using tracing to instrument their applications.")
 extension for the Trust-DNS client to use DNS over HTTPS.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-trust-dns-native-tls-0.7
+  (package
+    (name "rust-trust-dns-native-tls")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-native-tls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0dkwfqxjjmbikm3mav71zjymgy8wmqr4mca64x49qzknvc4qwy6z"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-tokio-tls" ,rust-tokio-tls-0.3)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.8))
+       #:cargo-development-inputs
+       (("rust-tokio" ,rust-tokio-0.1))))
+    (home-page "http://www.trust-dns.org/index.html")
+    (synopsis
+     "Trust-DNS is a safe and secure DNS library")
+    (description
+     "Trust-DNS is a safe and secure DNS library.  This is an
+extension for the Trust-DNS client to use native-tls for TLS.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-trust-dns-openssl-0.7
   (package
     (name "rust-trust-dns-openssl")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0045-gnu-Add-rust-trust-dns-resolver-0.12.patch

From 02511fe7694c346fbcd63c4f5f4856c0a0b0494c Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:02:30 -0700
Subject: [PATCH 45/57] gnu: Add rust-trust-dns-resolver-0.12.

* gnu/packages/crates-io.scm (rust-trust-dns-resolver-0.12): New variable.
---
 gnu/packages/crates-io.scm | 52 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5c15c1104a..e40ad6fdf5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -27843,6 +27843,58 @@ extension for the Trust-DNS client to use tokio-openssl for TLS.")
 foundational DNS protocol library for all Trust-DNS projects.")
   (license (list license:asl2.0 license:expat))))
 
+(define-public rust-trust-dns-resolver-0.12
+  (package
+    (name "rust-trust-dns-resolver")
+    (version "0.12.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trust-dns-resolver" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0cjkz3rcisk7v354l5hqb3j5x9x389pjqd6da6h8skvqxr0kl6yb"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-ipconfig" ,rust-ipconfig-0.2)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-lru-cache" ,rust-lru-cache-0.1)
+        ("rust-resolv-conf" ,rust-resolv-conf-0.6)
+        ("rust-rustls" ,rust-rustls-0.16)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-smallvec" ,rust-smallvec-0.6)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-executor" ,rust-tokio-executor-0.1)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
+        ("rust-tokio-udp" ,rust-tokio-udp-0.1)
+        ("rust-trust-dns-https" ,rust-trust-dns-https-0.4)
+        ("rust-trust-dns-native-tls" ,rust-trust-dns-native-tls-0.7)
+        ("rust-trust-dns-openssl" ,rust-trust-dns-openssl-0.7)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.8)
+        ("rust-trust-dns-rustls" ,rust-trust-dns-rustls-0.7)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.17))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1))))
+    (home-page "http://www.trust-dns.org/index.html")
+    (synopsis
+     "Trust-DNS is a safe and secure DNS library")
+    (description
+     "Trust-DNS is a safe and secure DNS library.  This Resolver library uses
+the Client library to perform all DNS queries.  The Resolver is intended to be
+a high-level library for any DNS record resolution see Resolver and
+AsyncResolver for supported resolution types.  The Client can be used for
+other queries.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-trust-dns-rustls-0.7
   (package
     (name "rust-trust-dns-rustls")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0046-gnu-Add-rust-take-mut-0.2.patch

From de9487618db0aabe7b842fbd18c8c82a94460634 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:42:22 -0700
Subject: [PATCH 46/57] gnu: Add rust-take-mut-0.2.

* gnu/packages/crates-io.scm (rust-take-mut-0.2): New variable.
---
 gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e40ad6fdf5..8de3bfcb77 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -25510,6 +25510,41 @@ CPU, memory, disk, load, hostname, and other similar system information.")
     (description "Send log messages to syslog.")
     (license license:expat)))
 
+(define-public rust-take-mut-0.2
+  (package
+    (name "rust-take-mut")
+    (version "0.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "take-mut" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0q2d7w6nd5bl7bay5csq065sjg8fw0jcx6hl1983cpzf25fh0r7p"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/Sgeo/take_mut")
+    (synopsis "Take a T from a mutuble T temporarily")
+    (description
+    "This crate provides several functions for handling @code{&mut T}
+including @code{take()}.
+
+@code{take()} allows for taking @code{T} out of a @code{&mut T}, doing
+anything with it including consuming it, and producing another
+@code{T} to put back in the @code{&mut T}.
+
+During @code{take()}, if a panic occurs, the entire process will be
+aborted, as there's no valid @code{T} to put back into the @code{&mut
+T}. Use @code{take_or_recover()} to replace the @code{&mut T} with a
+recovery value before continuing the panic.
+
+Contrast with @code{std::mem::replace()}, which allows for putting a
+different @code{T} into a @code{&mut T}, but requiring the new
+@code{T} to be available before being able to consume the old
+@code{T}.")
+    (license license:expat)))
+
 (define-public rust-takeable-option-0.4
   (package
     (name "rust-takeable-option")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0047-gnu-Add-rust-libflate-0.1.patch

From 82532d7b21b33d28d48fa971b71f43747b354116 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:46:30 -0700
Subject: [PATCH 47/57] gnu: Add rust-libflate-0.1.

* gnu/package/crates-io.scm (rust-libflate-0.1): New variable.
---
 gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8de3bfcb77..8de2919a10 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -11990,6 +11990,36 @@ values of all the exported APIs match the platform that libc is compiled for.")
 macros on libc without stdlib.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-libflate-0.1
+  (package
+    (name "rust-libflate")
+    (version "0.1.27")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "libflate" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1p8z839c5lpl0g01mf8iglys9lgcjxw6xjw56crhwp8z7gs5s4yr"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-adler32" ,rust-adler32-1)
+        ("rust-crc32fast" ,rust-crc32fast-1.2)
+        ("rust-rle-decode-fast" ,rust-rle-decode-fast-1)
+        ("rust-take-mut" ,rust-take-mut-0.2))
+       #:cargo-development-inputs
+       (("rust-clap" ,rust-clap-2))))
+    (home-page "https://github.com/sile/libflate")
+    (synopsis
+     "Rust implementation of DEFLATE algorithm and formats")
+    (description
+     "This package provides a Rust implementation of DEFLATE algorithm and
+related formats including ZLIB and GZIP.")
+    (license license:expat)))
+
 (define-public rust-libgit2-sys-0.10
   (package
     (name "rust-libgit2-sys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0048-gnu-Add-rust-reqwest-0.9.patch

From 0be565f204062551faa6aba67381f5ea0e85f85d Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:03:24 -0700
Subject: [PATCH 48/57] gnu: Add rust-reqwest-0.9.

* gnu/packages/crates-io.scm (rust-reqwest-0.9): New variable.
---
 gnu/packages/crates-io.scm | 74 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 74 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8de2919a10..d524109fa2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -20156,6 +20156,80 @@ uses finite automata and guarantees linear time matching on all inputs.")
     (description "File reopening utility.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-reqwest-0.9
+  (package
+    (name "rust-reqwest")
+    (version "0.9.20")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "reqwest" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0y4wvzl3pspd8drr2hf9kk107cjw455cb6p529sh90x58dhqjv8g"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.9)
+        ("rust-bytes" ,rust-bytes-0.4)
+        ("rust-cookie" ,rust-cookie-0.12)
+        ("rust-cookie-store" ,rust-cookie-store-0.7)
+        ("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-flate2" ,rust-flate2-1.0)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-hyper" ,rust-hyper-0.12)
+        ("rust-hyper-old-types" ,rust-hyper-old-types-0.11)
+        ("rust-hyper-rustls" ,rust-hyper-rustls-0.18)
+        ("rust-hyper-tls" ,rust-hyper-tls-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-mime-guess" ,rust-mime-guess-2.0)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-rustls" ,rust-rustls-0.16)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.5)
+        ("rust-socks" ,rust-socks-0.3)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-executor" ,rust-tokio-executor-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.12)
+        ("rust-tokio-threadpool" ,rust-tokio-threadpool-0.1)
+        ("rust-tokio-timer" ,rust-tokio-timer-0.2)
+        ("rust-trust-dns-resolver" ,rust-trust-dns-resolver-0.12)
+        ("rust-url" ,rust-url-1.7)
+        ("rust-uuid" ,rust-uuid-0.7)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.17)
+        ("rust-winreg" ,rust-winreg-0.6))
+       #:cargo-development-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-doc-comment" ,rust-doc-comment-0.3)
+        ("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-libflate" ,rust-libflate-0.1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-tcp" ,rust-tokio-tcp-0.1))))
+    (home-page
+     "https://github.com/seanmonstar/reqwest")
+    (synopsis "Higher level HTTP client library")
+    (description
+     "This package provides an ergonomic, batteries-included HTTP Client for
+Rust. It features:
+
+@itemize
+@item Plain bodies, JSON, urlencoded, multipart
+@item Customizable redirect policy
+@item HTTP Proxies
+@item HTTPS via system-native TLS (or optionally, rustls)
+@item Cookie Store
+@item WASM
+@end itemize")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-resolv-conf-0.6
   (package
     (name "rust-resolv-conf")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0049-gnu-Add-rust-shell-escape-0.1.patch

From 3e0589bfc4a5f9aa498b12d1e152113e5323e943 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:05:58 -0700
Subject: [PATCH 49/57] gnu: Add rust-shell-escape-0.1.

* gnu/packages/crates-io.scm (rust-shell-escape-0.1): New variable.
---
 gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index d524109fa2..c13607c8fd 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23692,6 +23692,28 @@ picking compatible shaders.")
      "This package allows easy binding to, and loading of, shared libraries.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-shell-escape-0.1
+  (package
+    (name "rust-shell-escape")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "shell-escape" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1fgs1iyx3b124b7njjmhfn9q5ipmhxrafavh8mxbfl9a9zk162hp"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://github.com/sfackler/shell-escape")
+    (synopsis
+     "Escape characters that may have a special meaning in a shell")
+    (description
+     "Escape characters that may have a special meaning in a shell.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-shell-words-0.1
   (package
     (name "rust-shell-words")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0050-gnu-Add-rust-thrussh-libsodium-0.1.patch

From dec6e65419c64db489afc36ad757bda82a86ec02 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:08:39 -0700
Subject: [PATCH 50/57] gnu: Add rust-thrussh-libsodium-0.1.

* gnu/packages/crates-io.scm (rust-thrussh-libsodium-0.1): New variable.
---
 gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c13607c8fd..e1951cf8ef 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26484,6 +26484,32 @@ fixed set of worker threads.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-thrussh-libsodium-0.1
+  (package
+    (name "rust-thrussh-libsodium")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh-libsodium" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0fjssjiwnmbxjvajk37l7k0fcw1ys97j7n8bpn3q3bbnz2qfrphv"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-pkg-config" ,rust-pkg-config-0.3))))
+    (home-page
+     "https://nest.pijul.com/pijul_org/thrussh")
+    (synopsis
+     "Straightforward bindings to libsodium")
+    (description
+     "You can bind to libsodium from Rust with this crate.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-time-0.1
   (package
     (name "rust-time")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0051-gnu-Add-rust-yasna-0.1.patch

From f2c215729c571a7cdcf6acf3d09c0aa8a927c736 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:14:33 -0700
Subject: [PATCH 51/57] gnu: Add rust-yasna-0.1.

* gnu/packages/crates-io.scm (rust-yasna-0.1): New variable.
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e1951cf8ef..5c50416dee 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30649,6 +30649,35 @@ styles (bold, underline).  It is adapted from
 @code{fmt::Display and FnOnce(&mut fmt::Formatter) -> fmt::Result}")
     (license license:expat)))
 
+(define-public rust-yasna-0.1
+  (package
+    (name "rust-yasna")
+    (version "0.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "yasna" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1frcd79rzi6dlly7lldjn2avnhfmj6yxrjsgvb2p1k2zbxdzyc9s"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bit-vec" ,rust-bit-vec-0.4)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-num" ,rust-num-0.1)
+        ("rust-num-bigint" ,rust-num-bigint-0.1))
+       #:cargo-development-inputs
+       (("rust-num-traits" ,rust-num-traits-0.2))))
+    (home-page "https://github.com/qnighy/yasna.rs")
+    (synopsis "ASN.1 library for Rust")
+    (description
+     "To serialize ASN.1 data, you can use @code{construct_der}.
+To deserialize ASN.1 data, you can use parse_ber or @code{parse_der}."  )
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-zbase32-0.1
   (package
     (name "rust-zbase32")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0052-gnu-Add-rust-thrussh-keys-0.11.patch

From 180f4f6025809daea827685deff73bf01a0c5ac1 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:16:52 -0700
Subject: [PATCH 52/57] gnu: Add rust-thrussh-keys-0.11.

* gnu/packages/crates-io.scm (rust-thrussh-keys-0.11): New variable.
---
 gnu/packages/crates-io.scm | 45 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5c50416dee..03be1a82db 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26484,6 +26484,51 @@ fixed set of worker threads.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-thrussh-keys-0.11
+  (package
+    (name "rust-thrussh-keys")
+    (version "0.11.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh-keys" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0rkhkkav9kv1q9lgxgydnrkniq4ccrf107lcygimralnkwyzjwjy"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bit-vec" ,rust-bit-vec-0.4)
+        ("rust-byteorder" ,rust-byteorder-1.3)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-dirs" ,rust-dirs-2.0)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-num-bigint" ,rust-num-bigint-0.1)
+        ("rust-num-integer" ,rust-num-integer-0.1)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-thrussh-libsodium"
+         ,rust-thrussh-libsodium-0.1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-yasna" ,rust-yasna-0.1))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-tempdir" ,rust-tempdir-0.3)
+        ("rust-tokio-uds" ,rust-tokio-uds-0.2))))
+    (home-page "https://pijul.org/thrussh")
+    (synopsis
+     "Deal with SSH keys in Rust")
+    (description
+     "This package provides a rust library to deal with SSH keys.
+With it you can load them, decrypt them, and call an SSH agent.")
+    (license license:asl2.0)))
+
 (define-public rust-thrussh-libsodium-0.1
   (package
     (name "rust-thrussh-libsodium")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0053-gnu-Add-rust-thrussh-0.21.patch

From 8f1bca27876260ac8c2e4910cc06e570607a8dd7 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:18:13 -0700
Subject: [PATCH 53/57] gnu: Add rust-thrussh-0.21.

* gnu/packages/crates-io.scm (rust-thrussh-0.21): New variable.
---
 gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 03be1a82db..2392641768 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26484,6 +26484,41 @@ fixed set of worker threads.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-thrussh-0.21
+  (package
+    (name "rust-thrussh")
+    (version "0.21.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0k8ah3kx8q6vnkq3hi78s8acxdcws6yck0x989xzx2wi89nqflhl"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-byteorder" ,rust-byteorder-1.3)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-thrussh-keys" ,rust-thrussh-keys-0.11)
+        ("rust-thrussh-libsodium"
+         ,rust-thrussh-libsodium-0.1)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1))
+       #:cargo-development-inputs
+       (("rust-env-logger" ,rust-env-logger-0.6))))
+    (home-page "https://pijul.org/thrussh")
+    (synopsis "Client and server SSH library in Rust")
+    (description
+     "This package provides a client and server SSH library.")
+    (license license:asl2.0)))
+
 (define-public rust-thrussh-keys-0.11
   (package
     (name "rust-thrussh-keys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0054-gnu-Add-rust-thrussh-config-0.2.patch

From 8862a63ede0d661181c7663f1488faa0d0790cb5 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:19:52 -0700
Subject: [PATCH 54/57] gnu: Add rust-thrussh-config-0.2.

* gnu/packages/crates-io.scm (rust-thrussh-config-0.2): New variable.
---
 gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2392641768..251d3abef9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -26519,6 +26519,38 @@ fixed set of worker threads.")
      "This package provides a client and server SSH library.")
     (license license:asl2.0)))
 
+(define-public rust-thrussh-config-0.2
+  (package
+    (name "rust-thrussh-config")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "thrussh-config" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0h19qysnbdvv6z2y3ii3cxqn42yvjg73wnghx83kbwj6af6chryb"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-dirs" ,rust-dirs-2.0)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-thrussh" ,rust-thrussh-0.21)
+        ("rust-tokio" ,rust-tokio-0.1))))
+    (home-page
+     "https://nest.pijul.com/pijul_org/thrussh")
+    (synopsis
+     "Utilities to parse .ssh/config files, including helpers")
+    (description
+     "This package contains utilities to parse .ssh/config files,
+including helpers to implement ProxyCommand in Thrussh.")
+    (license license:asl2.0)))
+
 (define-public rust-thrussh-keys-0.11
   (package
     (name "rust-thrussh-keys")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0055-gnu-Add-rust-advapi32-sys-0.2.patch

From ba5d4024f49d8bd1019f82299ecf562180087a37 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:55:46 -0700
Subject: [PATCH 55/57] gnu: Add rust-advapi32-sys-0.2.

* gnu/package/crates-io.scm (rust-advapi32-sys-0.2): New variable.
---
 gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 251d3abef9..37dc64a02d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -180,6 +180,34 @@ the Rust programming language.")
     (license (list license:bsd-3
                    license:zlib))))
 
+(define-public rust-advapi32-sys-0.2
+  (package
+    (name "rust-advapi32-sys")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "advapi32-sys" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "16largvlrd1800vvdchml0ngnszjlnpqm01rcz5hm7di1h48hrg0"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-winapi" ,rust-winapi-0.3))
+       #:cargo-development-inputs
+       (("rust-winapi-build" ,rust-winapi-build-0.1))))
+    (home-page
+     "https://github.com/retep998/winapi-rs")
+    (synopsis
+     "Contains function definitions for the Windows API library advapi32")
+    (description
+     "Contains function definitions for the Windows API library advapi32.
+The winapi crate's types and constants has more details about this API.")
+    (license license:expat)))
+
 (define-public rust-afl-0.8
   (package
     (name "rust-afl")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0056-gnu-Add-rust-username-0.2.patch

From ad3c0d2a49d76dff6ad4ea3ac2c98c49ba59aaa4 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:23:06 -0700
Subject: [PATCH 56/57] gnu: Add rust-username-0.2.

* gnu/packages/crates-io.scm (rust-username-0.2): New variable.
---
 gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 37dc64a02d..9b7f849442 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -28978,6 +28978,32 @@ untrusted inputs in Rust.")
 See winapi for types and constants.")
     (license license:expat)))
 
+(define-public rust-username-0.2
+  (package
+    (name "rust-username")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "username" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "028s7gpsz17z6chy818bpkxldixfxhlvicvyvhdbrxr7cpgjbr4j"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-advapi32-sys" ,rust-advapi32-sys-0.2)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://pijul.org/darcs/user")
+    (synopsis
+     "Portably retrieve the username of the user running the current thread")
+    (description
+     "Portably retrieve the user name (and possibly other information in
+future versions) of the user running the current thread.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-users-0.10
   (package
     (name "rust-users")
-- 
2.28.0


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=0057-gnu-Add-pijul.patch

From cd2e19016bc0f7ce1979bb2e1ae4fc72e46682e7 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@HIDDEN>
Date: Wed, 17 Jun 2020 18:23:46 -0700
Subject: [PATCH 57/57] gnu: Add pijul.

* gnu/packages/rust-apps.scm (pijul): New variable.
---
 gnu/packages/rust-apps.scm | 113 +++++++++++++++++++++++++++++++++++++
 1 file changed, 113 insertions(+)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index f5501d67dd..3448ecb877 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -30,8 +30,11 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages crates-io)
   #:use-module (gnu packages crates-graphics)
+  #:use-module (gnu packages crypto)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages llvm)
+  #:use-module (gnu packages nettle)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -238,6 +241,116 @@ for distinguishing different kinds of bytes such as NULL bytes, printable ASCII
 characters, ASCII whitespace characters, other ASCII characters and non-ASCII.")
     (license (list license:expat license:asl2.0))))
 
+(define-public pijul
+  (package
+    (name "pijul")
+    (version "0.12.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pijul" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "12aqpfd2si70qbvfnn9kvznxyd5g5gsb1kk1q52wm077cd03yapr"))))
+    (build-system cargo-build-system)
+    (inputs
+     `(("clang" ,clang)
+       ("libressl" ,libressl)
+       ("libsodium" ,libsodium)
+       ("nettle" ,nettle)
+       ("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-atty" ,rust-atty-0.2)
+        ("rust-base64" ,rust-base64-0.10)
+        ("rust-bincode" ,rust-bincode-1)
+        ("rust-bs58" ,rust-bs58-0.2)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-clap" ,rust-clap-2)
+        ("rust-cryptovec" ,rust-cryptovec-0.4)
+        ("rust-dirs" ,rust-dirs-1.0)
+        ("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-flate2" ,rust-flate2-1.0)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-getch" ,rust-getch-0.2)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-ignore" ,rust-ignore-0.4)
+        ("rust-libpijul" ,rust-libpijul-0.12)
+        ("rust-line" ,rust-line-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-pathdiff" ,rust-pathdiff-0.1)
+        ("rust-progrs" ,rust-progrs-0.1)
+        ("rust-rand" ,rust-rand-0.6)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-reqwest" ,rust-reqwest-0.9)
+        ("rust-rpassword" ,rust-rpassword-2.1.0)
+        ("rust-sequoia-openpgp" ,rust-sequoia-openpgp-0.9)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-shell-escape" ,rust-shell-escape-0.1)
+        ("rust-tar" ,rust-tar-0.4)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-term" ,rust-term-0.5)
+        ("rust-thrussh" ,rust-thrussh-0.21)
+        ("rust-thrussh-config" ,rust-thrussh-config-0.2)
+        ("rust-thrussh-keys" ,rust-thrussh-keys-0.11)
+        ("rust-tokio" ,rust-tokio-0.1)
+        ("rust-tokio-uds" ,rust-tokio-uds-0.2)
+        ("rust-toml" ,rust-toml-0.4)
+        ("rust-username" ,rust-username-0.2))
+       #:cargo-development-inputs
+       (("rust-walkdir" ,rust-walkdir-2))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'set-clang-env
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv
+              "LIBCLANG_PATH"
+              (string-append (assoc-ref inputs "clang") "/lib"))
+             #t))
+         (add-after 'install 'install-completions
+           (lambda* (#:key outputs #:allow-other-keys)
+             (use-modules (ice-9 popen)
+                          (ice-9 textual-ports))
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin"))
+                    (share (string-append out "/share"))
+                    (bash (string-append
+                           share "/bash-completion/completions"))
+                    (zsh (string-append
+                          share "/zsh/site-functions"))
+                    (fish (string-append
+                           share "/fish/vendor_completions.d")))
+               (for-each
+                (lambda (x)
+                  (let ((dir (cddr x))
+                        (file (cadr x))
+                        (shell (car x)))
+                    (mkdir-p dir)
+                    (call-with-output-file (string-append dir "/" file)
+                      (lambda (f)
+                        (let* ((cmd (string-append
+                                     bin "/pijul generate-completions --"
+                                     shell))
+                               (pipe (open-input-pipe cmd))
+                               (completion (get-string-all pipe)))
+                          (format f "~A" completion)
+                          (close-pipe pipe)))) ))
+                `(("bash" . ("pijul" . ,bash))
+                  ("zsh" . ("_pijul" . ,zsh))
+                  ("fish" . ("pijul.fish" . ,fish))))
+               #t))))))
+    (home-page "https://pijul.org/")
+    (synopsis
+     "Patch-based distributed version control system")
+    (description
+     "This package provides a patch-based distributed version control
+system, easy to use and fast.  Command-line interface.")
+    (license license:gpl2+)))
+
 (define-public racer
   (package
     (name "racer")
-- 
2.28.0


--=-=-=--




Acknowledgement sent to John Soo <jsoo1@HIDDEN>:
New bug report received and forwarded. Copy sent to guix-patches@HIDDEN. Full text available.
Report forwarded to guix-patches@HIDDEN:
bug#43929; Package guix-patches. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Tue, 21 Sep 2021 10:15:01 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.