aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHanketsu <hanketsu@egregore.fun>2024-12-25 15:02:54 +0100
committerHanketsu <hanketsu@egregore.fun>2025-02-01 17:53:21 +0100
commit543c50c41caabae96eb94c374a254bb426935fc4 (patch)
tree1b7062d8017e9d1805523a503b7228e7b12a3f9c
parent0010263f5bfb2e6e6453495734f01158544d29fe (diff)
battering: Add rust-solana-wen-restart-2.
* battering/packages/solana/crates-io.scm (rust-solana-wen-restart-2): New variable.
-rw-r--r--battering/packages/solana/crates-io.scm75
1 files changed, 75 insertions, 0 deletions
diff --git a/battering/packages/solana/crates-io.scm b/battering/packages/solana/crates-io.scm
index 7bc8e72..fcf591a 100644
--- a/battering/packages/solana/crates-io.scm
+++ b/battering/packages/solana/crates-io.scm
@@ -213,6 +213,81 @@
elliptic curve used in Solana programs.")
(license license:asl2.0)))
+(define-public rust-solana-wen-restart-2
+ (package
+ (name "rust-solana-wen-restart")
+ (version "2.1.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "solana-wen-restart" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0b8kacb3pxbccxkkkpjx14f1908j8q4ai4q5bqqwmq4na62zw3mg"))
+ (snippet
+ #~(begin
+ (use-modules (guix build utils))
+ ;; Remove dependency on vendor protobuf source.
+ (substitute* "Cargo.toml"
+ ;; This is a dirty trick that removes the protobuf line and
+ ;; comments the next (with the version).
+ (("^\\[.*protobuf-src\\]\n$") "# "))
+ (substitute* "build.rs"
+ ;; We replace the protoc() call with the absolute path of protoc.
+ (("protobuf_src::protoc\\(\\)")
+ (format #f "~s" #$(file-append protobuf "/bin/protoc"))))))))
+ (build-system cargo-build-system)
+ (native-inputs
+ (list pkg-config protobuf))
+ (inputs
+ (list openssl `(,zstd "lib") clang))
+ (arguments
+ `(#:cargo-test-flags
+ `("--release" "--"
+ ,@(map
+ (lambda (test)
+ (format #f "--skip=wen_restart::tests::test_~a" test))
+ ;; These tests need to change the file descriptor limit (is it possible?)
+ '("aggregate_heaviest_fork"
+ "find_heaviest_fork_failures"
+ "generate_snapshot"
+ "return_ok_after_wait_is_done"
+ "wen_restart_aggregate_last_voted_fork_stop_and_restart"
+ "wen_restart_divergence_across_epoch_boundary"
+ "wen_restart_initialize"
+ "wen_restart_normal_flow"
+ "wen_restart_send_last_voted_fork_failures"
+ "write_wen_restart_records_failure")))
+ #:cargo-inputs (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-prost" ,rust-prost-0.11)
+ ("rust-prost-build" ,rust-prost-build-0.11)
+ ("rust-prost-types" ,rust-prost-types-0.11)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-solana-entry" ,rust-solana-entry-2)
+ ("rustsolana-gossip" ,rust-solana-gossip-2)
+ ("rust-solana-ledger" ,rust-solana-ledger-2)
+ ("rust-solana-program" ,rust-solana-program-2)
+ ("rust-solana-runtime" ,rust-solana-runtime-2)
+ ("rust-solana-sdk" ,rust-solana-sdk-2)
+ ("rust-solana-timings" ,rust-solana-timings-2)
+ ("rust-solana-vote-program" ,rust-solana-vote-program-2))
+ #:cargo-development-inputs (("rust-assert-matches" ,rust-assert-matches-1)
+ ("rust-rand" ,rust-rand-0.8)
+ ("rust-serial-test" ,rust-serial-test-2)
+ ("rust-solana-accounts-db" ,rust-solana-accounts-db-2)
+ ("rust-solana-entry" ,rust-solana-entry-2)
+ ("rust-solana-logger" ,rust-solana-logger-2)
+ ("rust-solana-runtime" ,rust-solana-runtime-2)
+ ("rust-solana-streamer" ,rust-solana-streamer-2)
+ ("rust-solana-vote" ,rust-solana-vote-2)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (home-page "https://anza.xyz/")
+ (synopsis "Automatic repair and restart protocol")
+ (description
+ "This package provides an automatic repair and restart protocol for Solana.")
+ (license license:asl2.0)))
+
(define rust-aes-gcm-siv-0.11
(package
(name "rust-aes-gcm-siv")