pijul: Fix the build (broke due to a more recent Rust version)

This uses an upstream patch [0] to fix a compatibility error with a new
version of Rust. Fix #79150.

Unfortunately patching Rust dependencies in Nixpkgs turned out to be way
more hacky than I expected (maybe there is a nicer way?), but it should
be fine for now.

A new release might follow soonish [1] so that we can drop the patches.

References:
- https://nest.pijul.com/pijul_org/pijul/discussions/401
- https://nest.pijul.com/pijul_org/thrussh/discussions/31

[0]: https://nest.pijul.com/pijul_org/thrussh:master/patches/AsyuWkJg4jAwNaG3H1yv1kbECx5E3GQAtjzXWBDB8yEGMswyfKbxKvYmAGWCohTVaTipdvF8mHh63yU5PTr5F9py
[1]: https://discourse.pijul.org/t/is-this-project-still-active-yes-it-is/451
This commit is contained in:
Michael Weiss 2020-02-04 13:55:36 +01:00
parent 4d676594ac
commit 434ff94e73
No known key found for this signature in database
GPG Key ID: 5BE487C4D4771D83
2 changed files with 21 additions and 0 deletions

View File

@ -20,6 +20,15 @@ in rustPlatform.buildRustPackage rec {
sha256 = "1rm787kkh3ya8ix0rjvj7sbrg9armm0rnpkga6gjmsbg5bx20y4q";
};
postPatch = ''
pushd ../${pname}-${version}-vendor/thrussh/
patch -p1 < ${./thrussh-build-fix.patch}
substituteInPlace .cargo-checksum.json --replace \
9696ed2422a483cd8de48ac241178a0441be6636909c76174c536b8b1cba9d45 \
a199f2bba520d56e11607b77be4dde0cfae576c90badb9fbd39af4784e8120d1
popd
'';
nativeBuildInputs = [ pkgconfig clang ];
postInstall = ''

View File

@ -0,0 +1,12 @@
--- a/src/client/connection.rs 2020-02-04 12:48:43.845299096 +0100
+++ b/src/client/connection.rs 2020-02-04 12:50:00.140329310 +0100
@@ -546,8 +546,8 @@
&[msg::NEWKEYS],
&mut session.0.write_buffer,
);
- session.0.kex = Some(Kex::NewKeys(newkeys));
newkeys.sent = true;
+ session.0.kex = Some(Kex::NewKeys(newkeys));
}
Ok(())
}