Subject: [PATCHv2 rust-team 16/27] gnu: Add rust-gio-0.20.

From: Giacomo Leidi <[email-masked]>
Date: Wed, 6 Nov 2024 21:41:20 +0100

* gnu/packages/crates-gtk.scm (rust-gio-0.20): New variable;
(rust-gio-0.19): inherit from rust-gio-0.20.

Change-Id: I152073e6b8d9892bd58e1f5ffc0b56b7ff562058
---
 gnu/packages/crates-gtk.scm | 43 ++++++++++++++++++++++++++++++++-----
 1 file changed, 38 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 27fd2a2bcf..e93db8e7f6 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1155,17 +1155,17 @@ (define-public rust-gdk4-sys-0.7
     (description "This package provides FFI bindings of GDK 4.")
     (license license:expat)))
 
-(define-public rust-gio-0.19
+(define-public rust-gio-0.20
   (package
     (name "rust-gio")
-    (version "0.19.8")
+    (version "0.20.4")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "gio" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "1znz5ngfvv3gbndf6lzz3hs27hlb8ysls4axlfccrzvkscbz2jac"))))
+        (base32 "0g6l7a1n63a8myjpcv10mn214w0ypijf6rq812b3wn09zgl9kndq"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-test-flags
@@ -1176,8 +1176,8 @@ (define-public rust-gio-0.19
                        ("rust-futures-core" ,rust-futures-core-0.3)
                        ("rust-futures-io" ,rust-futures-io-0.3)
                        ("rust-futures-util" ,rust-futures-util-0.3)
-                       ("rust-gio-sys" ,rust-gio-sys-0.19)
-                       ("rust-glib" ,rust-glib-0.19)
+                       ("rust-gio-sys" ,rust-gio-sys-0.20)
+                       ("rust-glib" ,rust-glib-0.20)
                        ("rust-libc" ,rust-libc-0.2)
                        ("rust-pin-project-lite" ,rust-pin-project-lite-0.2)
                        ("rust-smallvec" ,rust-smallvec-1)
@@ -1194,6 +1194,39 @@ (define-public rust-gio-0.19
     (description "This package provides Rust bindings for the Gio library.")
     (license license:expat)))
 
+(define-public rust-gio-0.19
+  (package
+    (inherit rust-gio-0.20)
+    (name "rust-gio")
+    (version "0.19.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "gio" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1znz5ngfvv3gbndf6lzz3hs27hlb8ysls4axlfccrzvkscbz2jac"))))
+    (arguments
+     `(#:cargo-test-flags
+       '("--release" "--"
+         "--skip=settings::test::bool_set_get"
+         "--skip=settings::test::string_get")
+       #:cargo-inputs (("rust-futures-channel" ,rust-futures-channel-0.3)
+                       ("rust-futures-core" ,rust-futures-core-0.3)
+                       ("rust-futures-io" ,rust-futures-io-0.3)
+                       ("rust-futures-util" ,rust-futures-util-0.3)
+                       ("rust-gio-sys" ,rust-gio-sys-0.19)
+                       ("rust-glib" ,rust-glib-0.19)
+                       ("rust-libc" ,rust-libc-0.2)
+                       ("rust-pin-project-lite" ,rust-pin-project-lite-0.2)
+                       ("rust-smallvec" ,rust-smallvec-1)
+                       ("rust-thiserror" ,rust-thiserror-1))
+       #:cargo-development-inputs
+       (("rust-futures" ,rust-futures-0.3)
+        ("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-gir-format-check" ,rust-gir-format-check-0.1)
+        ("rust-serial-test" ,rust-serial-test-3))))))
+
 (define-public rust-gio-0.18
   (package
     (inherit rust-gio-0.19)
-- 
2.46.0