Subject: [PATCH 29/64] gnu: Add rust-gstreamer-0.18.

From: Steve George <[email-masked]>
Date: Mon, 23 Oct 2023 23:21:14 +0100

* gnu/packages/crates-io.scm (rust-gstreamer-0.18): 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 90dff03fa5..5ba39826f1 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30267,6 +30267,51 @@ (define-public rust-gstreamer-sys-0.18
      "Foreign Function Interface (FFI) bindings to libgstreamer-1.0.")
     (license license:expat)))
 
+(define-public rust-gstreamer-0.18
+  (package
+    (name "rust-gstreamer")
+    (version "0.18.8")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "gstreamer" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0mjlnw9917j3wwij8225bjp54k7408lxqjjnh6r6wksyryx66qyn"))))
+    (build-system cargo-build-system)
+    (arguments
+     (list ; https://github.com/gtk-rs/gtk3-rs/issues/768
+           #:tests? #f
+           #:cargo-inputs `(("rust-bitflags" ,rust-bitflags-1)
+                            ("rust-cfg-if" ,rust-cfg-if-1)
+                            ("rust-futures-channel" ,rust-futures-channel-0.3)
+                            ("rust-futures-core" ,rust-futures-core-0.3)
+                            ("rust-futures-util" ,rust-futures-util-0.3)
+                            ("rust-glib" ,rust-glib-0.15)
+                            ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.18)
+                            ("rust-libc" ,rust-libc-0.2)
+                            ("rust-muldiv" ,rust-muldiv-1)
+                            ("rust-num-integer" ,rust-num-integer-0.1)
+                            ("rust-num-rational" ,rust-num-rational-0.4)
+                            ("rust-once-cell" ,rust-once-cell-1)
+                            ("rust-option-operations" ,rust-option-operations-0.4)
+                            ("rust-paste" ,rust-paste-1)
+                            ("rust-pretty-hex" ,rust-pretty-hex-0.3)
+                            ("rust-serde" ,rust-serde-1)
+                            ("rust-serde-bytes" ,rust-serde-bytes-0.11)
+                            ("rust-thiserror" ,rust-thiserror-1))
+           #:cargo-development-inputs
+            `(("rust-futures-executor" ,rust-futures-executor-0.3)
+              ("rust-gir-format-check" ,rust-gir-format-check-0.1)
+              ("rust-ron" ,rust-ron-0.7)
+              ("rust-serde-json" ,rust-serde-json-1))))
+    (native-inputs (list pkg-config))
+    (inputs (list glib gstreamer))
+    (home-page "https://gstreamer.freedesktop.org")
+    (synopsis "Rust bindings for GStreamer")
+    (description "Rust bindings for GStreamer.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-gumdrop-0.8
   (package
     (name "rust-gumdrop")
-- 
2.41.0