Subject: [bug#78150] [PATCH] gnu: Add rust-cbindgen-0.28.

From: Tomas Volf <[email-masked]>
Date: Tue, 29 Apr 2025 22:12:53 +0200

* gnu/packages/rust-apps.scm (rust-cbindgen-0.28): New variable.

Change-Id: I22f4cf9d725ab026d8c469126db2d32755409a23
---
 gnu/packages/rust-apps.scm | 36 +++++++++++++++++++++++++++++++++++-
 1 file changed, 35 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 4d9430e5da..3e8e1886c9 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -29,7 +29,7 @@
 ;;; Copyright © 2023 Steve George <[email-masked]>
 ;;; Copyright © 2024 Troy Figiel <[email-masked]>
 ;;; Copyright © 2024 Herman Rimm <[email-masked]>
-;;; Copyright © 2024 Tomas Volf <[email-masked]>
+;;; Copyright © 2024, 2025 Tomas Volf <[email-masked]>
 ;;; Copyright © 2024 Suhail Singh <[email-masked]>
 ;;; Copyright © 2024 Jordan Moore <[email-masked]>
 ;;; Copyright © 2024 normally_js <[email-masked]>
@@ -3006,6 +3006,40 @@ (define-public procs
 support, watch support (like @command{top}) and a tree view.")
     (license license:expat)))
 
+(define-public rust-cbindgen-0.28
+  (package
+    (name "rust-cbindgen")
+    (version "0.28.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cbindgen" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1zyiaifg6mcd4wwhhbxk8adzhph6qz4wxzgagvg3ijp95j58dpga"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs (("rust-clap" ,rust-clap-4)
+                       ("rust-heck" ,rust-heck-0.4)
+                       ("rust-indexmap" ,rust-indexmap-2)
+                       ("rust-log" ,rust-log-0.4)
+                       ("rust-proc-macro2" ,rust-proc-macro2-1)
+                       ("rust-quote" ,rust-quote-1)
+                       ("rust-serde" ,rust-serde-1)
+                       ("rust-serde-json" ,rust-serde-json-1)
+                       ("rust-syn" ,rust-syn-2)
+                       ("rust-tempfile" ,rust-tempfile-3)
+                       ("rust-toml" ,rust-toml-0.8))
+       #:cargo-development-inputs
+       (("rust-pretty-assertions" ,rust-pretty-assertions-1)
+        ("rust-serial-test" ,rust-serial-test-2))))
+    (native-inputs (list python-cython))
+    (home-page "https://github.com/eqrion/cbindgen")
+    (synopsis "Tool for generating C bindings to Rust code")
+    (description
+     "This package provides a tool for generating C/C++ bindings to Rust code.")
+    (license license:mpl2.0)))
+
 (define-public rust-cbindgen-0.27
   (package
     (name "rust-cbindgen")
-- 
2.49.0