Subject: [bug#71076] [PATCH 29/81] gnu: Add rust-ruma-0.9-1.5495b85.

From: Herman Rimm <[email-masked]>
Date: Mon, 20 May 2024 10:58:34 +0200

* gnu/packages/matrix.scm (rust-ruma-0.9-1.5495b85): Add variable.

Change-Id: I3b8b64559945bf311d05add33b06e8c84bf0eb5b
---
 gnu/packages/matrix.scm | 92 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 92 insertions(+)

diff --git a/gnu/packages/matrix.scm b/gnu/packages/matrix.scm
index 32ae62fcb4..7a29100d3f 100644
--- a/gnu/packages/matrix.scm
+++ b/gnu/packages/matrix.scm
@@ -25,6 +25,10 @@ (define-module (gnu packages matrix)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (gnu packages check)
   #:use-module (gnu packages crypto)
+  #:use-module (gnu packages crates-crypto)
+  #:use-module (gnu packages crates-graphics)
+  #:use-module (gnu packages crates-io)
+  #:use-module (gnu packages crates-web)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages monitoring)
@@ -34,6 +38,7 @@ (define-module (gnu packages matrix)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages xml)
+  #:use-module (guix build-system cargo)
   #:use-module (guix build-system pyproject)
   #:use-module (guix build-system python)
   #:use-module (guix download)
@@ -91,6 +96,93 @@ (define-public python-matrix-synapse-ldap3
 an LDAP server.")
     (license license:asl2.0)))
 
+(define rust-ruma-0.9-1.5495b85
+  (let ((commit "5495b85aa311c2805302edb0a7de40399e22b397"))
+    (package
+      (name "rust-ruma")
+      (version (git-version "0.9.4" "1" commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+                (url "https://github.com/ruma/ruma.git")
+                (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+            "0q0vx1qk7rmg2ss6phr97b87m01gjfsh8lvpnfl0sp3q5wrgcb10"))))
+      (build-system cargo-build-system)
+      (arguments
+       (list #:skip-build? #t  ;; From the workspace Cargo.toml.
+             #:cargo-inputs (list rust-as-variant-1
+                                  rust-assert-matches2-0.1
+                                  rust-assign-1
+                                  rust-base64-0.21
+                                  rust-criterion-0.5
+                                  rust-http-0.2
+                                  rust-js-int-0.2
+                                  rust-maplit-1
+                                  rust-serde-1
+                                  rust-serde-html-form-0.2
+                                  rust-serde-json-1
+                                  rust-thiserror-1
+                                  rust-tracing-0.1
+                                  ;; client
+                                  rust-async-stream-0.3
+                                  rust-bytes-1
+                                  rust-futures-core-0.3
+                                  rust-futures-lite-1
+                                  rust-hyper-0.14
+                                  rust-hyper-rustls-0.24
+                                  rust-isahc-1
+                                  rust-reqwest-0.11
+                                  ;; client-api
+                                  rust-js-option-0.1
+                                  ;; common
+                                  rust-form-urlencoded-1
+                                  rust-konst-0.3
+                                  rust-percent-encoding-2
+                                  rust-time-0.3
+                                  rust-url-2
+                                  rust-uuid-1
+                                  rust-web-time-1
+                                  rust-wildmatch-2
+                                  ;; html
+                                  rust-html5ever-0.26
+                                  rust-phf-0.11
+                                  ;; macros
+                                  rust-once-cell-1
+                                  rust-proc-macro-crate-2
+                                  rust-proc-macro2-1
+                                  rust-quote-1
+                                  rust-syn-2
+                                  rust-toml-0.8
+                                  ;; server-util
+                                  rust-headers-0.3
+                                  rust-yap-0.11
+                                  ;; signatures
+                                  rust-ed25519-dalek-2
+                                  rust-pkcs8-0.10
+                                  rust-rand-0.8
+                                  rust-sha2-0.10
+                                  rust-subslice-0.2
+                                  ;; state-res
+                                  rust-itertools-0.11)
+             #:phases
+             #~(modify-phases %standard-phases
+                 ;; Invoke 'cargo package' even when #:skip-build? #t,
+                 ;; to package workspace members individually.
+                 (replace 'package
+                   (lambda _
+                     (invoke "cargo" "package" "--no-metadata"
+                             "--no-verify"))))))
+      (home-page "https://github.com/ruma/ruma/")
+      (synopsis "Ruma workspace checkout for matrix-conduit")
+      (description
+        "This package provides the ruma workspace checkout used by the
+matrix-conduit package.")
+      (license license:expat))))
+
 (define-public synapse
   (package
     (name "synapse")
-- 
2.41.0