summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorJaeme Sifat <jaeme@runbox.com>2024-01-20 18:30:20 -0500
committerEfraim Flashner <efraim@flashner.co.il>2024-02-20 13:58:27 +0200
commitea4ff3c912f8537efc3afe5d62d87117cf24df0d (patch)
treed381b0634a8a83d14653e539bc2d96796c19ed26 /gnu
parent292b46e619d9d8fc0dc6e1a16aee16f9234ae729 (diff)
downloadguix-ea4ff3c912f8537efc3afe5d62d87117cf24df0d.tar.gz
gnu: Add rust-keyframe-1.
* gnu/packages/crates-graphics.scm (rust-keyframe-1): New variable.

Change-Id: I67721b97a744d82ac6df38e17ed84e628ff4687a
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/crates-graphics.scm29
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/packages/crates-graphics.scm b/gnu/packages/crates-graphics.scm
index 8ebd33faba..caeb8d93bc 100644
--- a/gnu/packages/crates-graphics.scm
+++ b/gnu/packages/crates-graphics.scm
@@ -2260,6 +2260,35 @@ pixel buffers with width, height and stride.")
         ("rust-png" ,rust-png-0.14)
         ("rust-walkdir" ,rust-walkdir-2))))))
 
+(define-public rust-keyframe-1
+  (package
+    (name "rust-keyframe")
+    (version "1.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "keyframe" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1afr5ffns3k79xaqnw6rw3qn8sngwly6gxfnjn8d060mk3vqnw30"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t ; Done to avoid dev dependency on ggez, a game engine.
+       #:cargo-inputs (("rust-mint" ,rust-mint-0.5)
+                       ("rust-num-traits" ,rust-num-traits-0.2))))
+    (home-page "https://github.com/HannesMann/keyframe")
+    (synopsis "Simple library for animation in Rust")
+    (description
+     "This package provides a simple library for animation in Rust.
+It's features include:
+
+@enumerate
+@item Several easing functions, including user-defined Bézier curves and keyframable curves.
+@item Animation sequences (like CSS keyframes).
+@item @code{mint} integration for 2D/3D/4D support (points, rectangles, colors, etc).
+@end enumerate")
+    (license license:expat)))
+
 (define-public rust-libdav1d-sys-0.6
   (package
     (name "rust-libdav1d-sys")