diff mbox series

[bug#60603] gnu: Add rust-uom

Message ID 878rifbmcn.fsf@gmail.com
State New
Headers show
Series [bug#60603] gnu: Add rust-uom | expand

Commit Message

Artyom V. Poptsov Jan. 6, 2023, 5:32 p.m. UTC
Hello,

this patch series adds "uom"[1] Rust package.
The "uom" package is used by the number of other Rust packages, namely
"heim-common"[2] which I'm planning to try to package later.

Thanks,
- avp

References:
1. https://crates.io/crates/uom
2. https://crates.io/crates/heim-common
diff mbox series

Patch

From 1a5c0e5f0af8b4de981b2f174634dbcabe0f77c5 Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <poptsov.artyom@gmail.com>
Date: Fri, 6 Jan 2023 19:43:20 +0300
Subject: [PATCH 2/2] gnu: Add rust-uom-0.33.0 and rust-uom-0.30.0.

* gnu/packages/crates-io.scm (rust-uom-0.33.0, rust-uom-0.30.0): New
  variables.
---
 gnu/packages/crates-io.scm | 58 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 58 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ea20401c65..13f50b9155 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13023,6 +13023,64 @@  (define-public rust-cpuprofiler-0.0
     (description "This package provides bindings to Google's cpu profiler.")
     (license license:bsd-2)))
 
+(define-public rust-uom-0.33.0
+  (package
+    (name "rust-uom")
+    (version "0.33.0")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "uom" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0385hbx8i15izs9ss0cvwv6kdf4mqbfcbzhfxxn0mkyspzh8zrjk"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs (("rust-num-complex" ,rust-num-complex-0.4)
+                       ("rust-num-rational" ,rust-num-rational-0.4)
+                       ("rust-num-traits" ,rust-num-traits-0.2)
+                       ("rust-typenum" ,rust-typenum-1.13.0)
+                       ("rust-serde" ,rust-serde-1)
+                       ("rust-num-bigint" ,rust-num-bigint-0.4))
+       #:cargo-development-inputs (("rust-approx" ,rust-approx-0.5)
+                                   ("rust-quickcheck" ,rust-quickcheck-0.8)
+                                   ("rust-serde-json" ,rust-serde-json-1)
+                                   ("rust-static-assertions" ,rust-static-assertions-1))))
+    (home-page "https://github.com/iliekturtles/uom")
+    (synopsis "Units of measurement")
+    (description
+     "@code{uom} (Units of measurement) is a crate that does automatic type-safe
+zero-cost dimensional analysis.  You can create your own systems or use the pre-built
+International System of Units (SI) which is based on the International System of
+Quantities (ISQ) and includes numerous quantities (length, mass, time, ...) with
+conversion factors for even more numerous measurement units (meter, kilometer, foot,
+mile, ...).")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-uom-0.30.0
+  (package
+    (inherit rust-uom-0.33.0)
+    (name "rust-uom")
+    (version "0.30.0")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "uom" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1vg59hnb7hh0p8kjjhgmrsnn3597722lkfdkp481wksq6vk06rg7"))))
+    (arguments
+     `(#:cargo-inputs (("rust-num-complex" ,rust-num-complex-0.4)
+                       ("rust-num-rational" ,rust-num-rational-0.4)
+                       ("rust-num-traits" ,rust-num-traits-0.2)
+                       ("rust-typenum" ,rust-typenum-1)
+                       ("rust-serde" ,rust-serde-1)
+                       ("rust-num-bigint" ,rust-num-bigint-0.4))
+       #:cargo-development-inputs (("rust-approx" ,rust-approx-0.3)
+                                   ("rust-quickcheck" ,rust-quickcheck-0.8)
+                                   ("rust-serde-json" ,rust-serde-json-1)
+                                   ("rust-static-assertions" ,rust-static-assertions-1))))))
+
 (define-public rust-crates-index-0.18
   (package
     (name "rust-crates-index")
-- 
2.34.1