[PATCH 0/4] Add heic-to-dynamic-gnome-wallpaper and its dependencies

  • Open
  • quality assurance status badge
Details
One participant
  • Sergio Pastor Pérez
Owner
unassigned
Submitted by
Sergio Pastor Pérez
Severity
normal
S
S
Sergio Pastor Pérez wrote on 5 May 16:32 +0200
(address . guix-patches@gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
PAXP251MB03483E5D3C1A13DD5277FE3BF31D2@PAXP251MB0348.EURP251.PROD.OUTLOOK.COM
Hello, I've packaged this tool to convert from MacOs HEIC wallpapers to gnome
XML wallpapers.

This package adds 3 Rust dependencies and the
`heic-to-dynamic-gnome-wallpaper` app.

Thanks,
Sergio.

Sergio Pastor Pérez (4):
gnu: Add rust-enumn-0.1.
gnu: Add rust-libheif-sys-1.
gnu: Add rust-libheif-rs-0.15.
gnu: Add heic-to-dynamic-gnome-wallpaper.

gnu/packages/crates-io.scm | 67 ++++++++++++++++++++++++++++++++++++++
gnu/packages/rust-apps.scm | 34 +++++++++++++++++++
2 files changed, 101 insertions(+)


base-commit: da9f509b0300f1b6b979c68a52d8669f9bcb89a7
--
2.41.0
S
S
Sergio Pastor Pérez wrote on 5 May 16:44 +0200
[PATCH 1/4] gnu: Add rust-enumn-0.1.
(address . 70787@debbugs.gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
PAXP251MB034866CF104AF0BC8C1E8CF6F31D2@PAXP251MB0348.EURP251.PROD.OUTLOOK.COM
* gnu/packages/crates-io.scm (rust-enumn-0.1): New variable.

Change-Id: I904a65ecb8010042cde0ed05f5f6d78f378e653e
---
gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a67d3d74bb..8391e51535 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21228,6 +21228,28 @@ (define-public rust-entities-1
from HTML entities.")
(license license:expat)))
+(define-public rust-enumn-0.1
+ (package
+ (name "rust-enumn")
+ (version "0.1.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "enumn" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0hnvrp440hwjfd4navbni2mhcjd63adxp8ryk6z3prw8d7yh1l3g"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-2))))
+ (home-page "https://github.com/dtolnay/enumn")
+ (synopsis "Convert number to enum")
+ (description "Convert number to enum")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-enum-as-inner-0.6
(package
(name "rust-enum-as-inner")
--
2.41.0
S
S
Sergio Pastor Pérez wrote on 5 May 16:44 +0200
[PATCH 2/4] gnu: Add rust-libheif-sys-1.
(address . 70787@debbugs.gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
PAXP251MB034848823356F148D216074AF31D2@PAXP251MB0348.EURP251.PROD.OUTLOOK.COM
* gnu/packages/crates-io.scm (rust-libheif-sys-1): New variable.

Change-Id: Ibdcebc3a8866732319da55802a1a789f8ccfb46e
---
gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8391e51535..5fff81c265 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33761,6 +33761,29 @@ (define-public rust-libfuzzer-sys-0.3
(("rust-arbitrary" ,rust-arbitrary-0.4)
("rust-cc" ,rust-cc-1))))))
+(define-public rust-libheif-sys-1
+ (package
+ (name "rust-libheif-sys")
+ (version "1.16.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libheif-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "072mw23fv5nb2xmx7xa4g2ciafwvalfxqrms3wwr4n5rrqbrdv1g"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-bindgen" ,rust-bindgen-0.66)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3)
+ ("rust-vcpkg" ,rust-vcpkg-0.2))))
+ (home-page "https://github.com/cykooz/libheif-sys")
+ (synopsis "Rust bindings for libheif")
+ (description "This package provides rust libheif bindings.")
+ (license license:expat)))
+
(define-public rust-libloading-0.8
(package
(name "rust-libloading")
--
2.41.0
S
S
Sergio Pastor Pérez wrote on 5 May 16:44 +0200
[PATCH 3/4] gnu: Add rust-libheif-rs-0.15.
(address . 70787@debbugs.gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
PAXP251MB0348A6861A5879D22D6EB604F31D2@PAXP251MB0348.EURP251.PROD.OUTLOOK.COM
* gnu/packages/crates-io.scm (rust-libheif-rs-0.15): New variable.

Change-Id: I14c4bfa1d3792f948687c199812da3be20ea6096
---
gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5fff81c265..8a894ffeee 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33761,6 +33761,28 @@ (define-public rust-libfuzzer-sys-0.3
(("rust-arbitrary" ,rust-arbitrary-0.4)
("rust-cc" ,rust-cc-1))))))
+(define-public rust-libheif-rs-0.15
+ (package
+ (name "rust-libheif-rs")
+ (version "0.15.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libheif-rs" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0mhhyak12ysnv9f6s0mp99i8z15z7qv5x9z28va1777w059qpxgd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-enumn" ,rust-enumn-0.1)
+ ("rust-libheif-sys" ,rust-libheif-sys-1))))
+ (home-page "https://github.com/cykooz/libheif-rs")
+ (synopsis "Wrapper around libheif-sys")
+ (description "This package provides a safe wrapper around the libheif-sys
+crate for parsing heif/heic files.")
+ (license license:expat)))
+
(define-public rust-libheif-sys-1
(package
(name "rust-libheif-sys")
--
2.41.0
S
S
Sergio Pastor Pérez wrote on 5 May 16:44 +0200
[PATCH 4/4] gnu: Add heic-to-dynamic-gnome-wallpaper.
(address . 70787@debbugs.gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
PAXP251MB0348297FF6C3AAC9482BA4B4F31D2@PAXP251MB0348.EURP251.PROD.OUTLOOK.COM
* gnu/packages/rust-apps.scm (heic-to-dynamic-gnome-wallpaper): New variable.

Change-Id: I74b87a11e7f77d6a40262c6298bdf9c95a9c9438
---
gnu/packages/rust-apps.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index d73bd1a030..41d8c4efac 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -723,6 +723,40 @@ (define-public fd
defaults for 80% of the use cases.")
(license (list license:expat license:asl2.0))))
+(define-public heic-to-dynamic-gnome-wallpaper
+ (package
+ (name "heic-to-dynamic-gnome-wallpaper")
+ (version "0.1.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "heic-to-dynamic-gnome-wallpaper" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0k94nxbyvxr1ls3myfn2k8in466wdlgd5f5kv7vyrb3dm298ycf8"))))
+ (build-system cargo-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list libheif))
+ (arguments
+ `(#:cargo-inputs (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-base64" ,rust-base64-0.13)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-clap" ,rust-clap-3)
+ ("rust-colored" ,rust-colored-2)
+ ("rust-indicatif" ,rust-indicatif-0.16)
+ ("rust-libheif-rs" ,rust-libheif-rs-0.15)
+ ("rust-plist" ,rust-plist-1)
+ ("rust-png" ,rust-png-0.17)
+ ("rust-quick-xml" ,rust-quick-xml-0.22)
+ ("rust-serde" ,rust-serde-1))))
+ (home-page "https://github.com/jwuensche/heic-to-dynamic-gnome-wallpaper")
+ (synopsis
+ "Convert MacOS's dynamic wallpapers to dynamic gnome xml wallpapers")
+ (description
+ "CLI tool to convert heic image containers used in
+@code{MacOS's} dynamic wallpapers to dynamic gnome xml wallpapers.")
+ (license license:gpl3)))
+
(define-public hexyl
(package
(name "hexyl")
--
2.41.0
?