GNU bug report logs - #70772
[PATCH] gnu: Add rust-serialport

Previous Next

Package: guix-patches;

Reported by: Franz Geffke <m <at> f-a.nz>

Date: Sat, 4 May 2024 14:48:01 UTC

Severity: normal

Tags: patch

Done: Hilton Chain <hako <at> ultrarare.space>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 70772 in the body.
You can then email your comments to 70772 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to efraim <at> flashner.co.il, guix-patches <at> gnu.org:
bug#70772; Package guix-patches. (Sat, 04 May 2024 14:48:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Franz Geffke <m <at> f-a.nz>:
New bug report received and forwarded. Copy sent to efraim <at> flashner.co.il, guix-patches <at> gnu.org. (Sat, 04 May 2024 14:48:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Franz Geffke <m <at> f-a.nz>
To: guix-patches <at> gnu.org
Cc: Franz Geffke <m <at> f-a.nz>
Subject: [PATCH] gnu: Add rust-serialport
Date: Sat,  4 May 2024 15:46:33 +0100
Change-Id: I7935aab748ffd86569cac0af2e91da02323c4123
---
 gnu/packages/crates-io.scm                    | 132 ++++++++++++++++++
 .../rust-serialport-remove-macos.patch        |  17 +++
 2 files changed, 149 insertions(+)
 create mode 100644 gnu/packages/patches/rust-serialport-remove-macos.patch

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a67d3d74bb..35cb1028df 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -3862,6 +3862,24 @@ (define-public rust-assert2-macros-0.3
     (description "This package provides procedural macros for assert2.")
     (license license:bsd-2)))
 
+(define-public rust-assert-hex-0.4
+  (package
+    (name "rust-assert_hex")
+    (version "0.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "assert_hex" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "19xwlhz2swak1gw6rv38wai7d1xn9l3mspnv1fl8rz7h60a0y0gp"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/wcampbell0x2a/assert_hex")
+    (synopsis "Display assert panics in hexadecimal format")
+    (description
+     "Rust library to display assert panics in hexadecimal format")
+    (license license:expat)))
+
 (define-public rust-associative-cache-1
   (package
     (name "rust-associative-cache")
@@ -34763,6 +34781,64 @@ (define-public rust-libz-ng-sys-1
 high-performance zlib library.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-libudev-sys-0.1
+  (package
+    (name "rust-libudev-sys")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "libudev-sys" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "09236fdzlx9l0dlrsc6xx21v5x8flpfm3d5rjq9jr5ivlas6k11w"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2))
+       #:cargo-development-inputs
+       (("rust-pkg-config" ,rust-pkg-config-0.3))))
+    (native-inputs
+     (list pkg-config
+           eudev))
+    (home-page "https://github.com/dcuddeback/libudev-rs")
+    (synopsis "Rust wrapper for libudev")
+    (description
+     "This crate provides a safe wrapper around the native libudev library.")
+    (license license:expat)))
+
+(define-public rust-libudev-0.3
+  (package
+    (name "rust-libudev")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "libudev" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1q1my5alvdwyi8i9pc9gn2mcx5rhbsssmz5cjnxzfpd65laj9cvq"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           (substitute* "Cargo.toml"
+             (("0.1.3") "0.1.4"))))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-libudev-sys" ,rust-libudev-sys-0.1))
+       #:cargo-development-inputs
+        (("rust-pkg-config" ,rust-pkg-config-0.3))))
+    (native-inputs
+     (list pkg-config
+           eudev))
+    (home-page "https://github.com/dcuddeback/libudev-rs")
+    (synopsis "Rust wrapper for libudev")
+    (description
+     "This crate provides a safe wrapper around the native libudev library.")
+    (license license:expat)))
+
 (define-public rust-lifeguard-0.6
   (package
     (name "rust-lifeguard")
@@ -61303,6 +61379,41 @@ (define-public rust-serial-test-0.4
     (description "Serialising Rust tests")
     (license license:expat)))
 
+(define-public rust-serialport-4
+  (package
+    (name "rust-serialport")
+    (version "4.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serialport" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0a380655dqrl16wfqnr75zxk3f8h3fshjjr68r4gh3clpv81anlg"))
+       (patches (search-patches "rust-serialport-remove-macos.patch"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-2)
+        ("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-libudev" ,rust-libudev-0.3)
+        ("rust-nix" ,rust-nix-0.26)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-scopeguard" ,rust-scopeguard-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-unescaper" ,rust-unescaper-0.1))
+       #:cargo-development-inputs (("rust-assert-hex" ,rust-assert-hex-0.4)
+                                   ("rust-clap" ,rust-clap-3))))
+    (native-inputs
+     (list pkg-config
+           eudev))
+    (home-page "https://github.com/serialport/serialport-rs")
+    (synopsis "A cross-platform serial port library in Rust.")
+    (description
+     "A cross-platform serial port library in Rust. Provides a blocking I/O
+interface and port enumeration including USB device information.")
+    (license license:expat)))
+
 (define-public rust-servo-fontconfig-0.5
   (package
     (name "rust-servo-fontconfig")
@@ -74909,6 +75020,27 @@ (define-public rust-unescape-0.1
      "Unescapes strings with escape sequences written out as literal characters.")
     (license license:expat)))
 
+(define-public rust-unescaper-0.1
+  (package
+    (name "rust-unescaper")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "unescaper" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0d4xi16mindhksi3lqvn0kzzgj5az9qbgxqmz7gwmcxm5v9nmpqa"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-thiserror" ,rust-thiserror-1))))
+    (home-page "https://github.com/hack-ink/unescaper")
+    (synopsis "Unescape strings with escape sequences.")
+    (description
+     "Unescape strings with escape sequences written out as literal characters.")
+    (license license:expat)))
+
 (define-public rust-ungrammar-1
   (package
     (name "rust-ungrammar")
diff --git a/gnu/packages/patches/rust-serialport-remove-macos.patch b/gnu/packages/patches/rust-serialport-remove-macos.patch
new file mode 100644
index 0000000000..5f779a78df
--- /dev/null
+++ b/gnu/packages/patches/rust-serialport-remove-macos.patch
@@ -0,0 +1,17 @@
+--- serialport-4.3.0/Cargo.toml	2024-05-01 16:01:21.986121155 +0100
++++ serialport-4.3.0/Cargo.toml	2024-05-01 16:00:38.874019301 +0100
+@@ -57,15 +57,6 @@ optional = true
+ [target."cfg(all(target_os = \"linux\", not(target_env = \"musl\")))".dependencies.unescaper]
+ version = "0.1.3"
+
+-[target."cfg(any(target_os = \"ios\", target_os = \"macos\"))".dependencies.core-foundation-sys]
+-version = "0.8.4"
+-
+-[target."cfg(any(target_os = \"ios\", target_os = \"macos\"))".dependencies.io-kit-sys]
+-version = "0.4.0"
+-
+-[target."cfg(any(target_os = \"ios\", target_os = \"macos\"))".dependencies.mach2]
+-version = "0.4.1"
+-
+ [target."cfg(unix)".dependencies.bitflags]
+ version = "2.4.0"
\ No newline at end of file

base-commit: 9e184d5e54d1fee98c75bcb577a98456a77ae015
-- 
2.41.0





Information forwarded to guix-patches <at> gnu.org:
bug#70772; Package guix-patches. (Mon, 13 May 2024 07:14:02 GMT) Full text and rfc822 format available.

Message #8 received at 70772 <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Graves <ngraves <at> ngraves.fr>
To: 70772 <at> debbugs.gnu.org
Subject: [PATCH] gnu: Add rust-serialport
Date: Mon, 13 May 2024 09:13:18 +0200
Hi Franck,

guix lint complains about quite a few warnings on QA :
https://qa.guix.gnu.org/issue/70772

Could you address them and send a new patch?

Thanks.
-- 
Best regards,
Nicolas Graves




Information forwarded to guix-patches <at> gnu.org:
bug#70772; Package guix-patches. (Wed, 12 Feb 2025 20:47:02 GMT) Full text and rfc822 format available.

Message #11 received at 70772 <at> debbugs.gnu.org (full text, mbox):

From: Steve George <steve <at> futurile.net>
To: 70772 <at> debbugs.gnu.org, 70772-submitter <at> debbugs.gnu.org
Subject: RE: Add rust-serialport
Date: Wed, 12 Feb 2025 20:46:42 +0000
Hi Franz,

Are you interested in contributing this package still? 

It's been a while so it's not on QA, but it sounds like you'd need to update the patch from Nicolas' comment. If you don't have the time or interest, then please email 70772-done <at> debbugs.gnu.org to close it just so we know. Thanks for sending the first version!

Steve / Futurile






Message sent on to Franz Geffke <m <at> f-a.nz>:
bug#70772. (Wed, 12 Feb 2025 20:48:02 GMT) Full text and rfc822 format available.

Reply sent to Hilton Chain <hako <at> ultrarare.space>:
You have taken responsibility. (Mon, 16 Jun 2025 11:34:01 GMT) Full text and rfc822 format available.

Notification sent to Franz Geffke <m <at> f-a.nz>:
bug acknowledged by developer. (Mon, 16 Jun 2025 11:34:02 GMT) Full text and rfc822 format available.

Message #19 received at 70772-close <at> debbugs.gnu.org (full text, mbox):

From: Hilton Chain <hako <at> ultrarare.space>
To: 70772-close <at> debbugs.gnu.org
Subject: Re: [PATCH] gnu: Add rust-serialport
Date: Mon, 16 Jun 2025 02:50:04 +0800
Closing since crates-io module will be removed.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 15 Jul 2025 11:24:11 GMT) Full text and rfc822 format available.

This bug report was last modified 31 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.