[PATCH] Add fractal.

  • Open
  • quality assurance status badge
Details
4 participants
  • Efraim Flashner
  • Leo Prikler
  • Christopher Baines
  • Nicolas Goaziou
Owner
unassigned
Submitted by
Christopher Baines
Severity
normal
C
C
Christopher Baines wrote on 6 Nov 2020 22:47
(address . guix-patches@gnu.org)
87tuu2p37n.fsf@cbaines.net
Tags: moreinfo

So, I made an attempt at packaging fractal, and I did end up with a
working package, but there's quite a bit of neat packaging to do before
this can be submitted.

There's a branch here currently [1], although some of the stuff in that
branch is superfluous and some of the versions I picked aren't great.


I think the next step to take is to tackle some of the larger groups of
missing rust dependencies, and get packages merged for them. I'm not
sure when I'm going to get back around to doing that.
-----BEGIN PGP SIGNATURE-----

iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAl+lxHxfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh
aW5lcy5uZXQACgkQXiijOwuE9Xdm3g/+OMMVNEVE4T4CpB10zzxmR9+DVAYcYDOT
D6jZHGcJIWfjUz2SP99xgKqW4bCZkT+zuEb/IUnmJ49peOGEt4P3T2iMSoN1+IVF
RzJspUEZKqoAOPeVOVSFI3MbqeMvmd+LmEJpe70CkjA74NT9geMW2zYdYt/Civ4k
PLWHgCYgtexkVemS3np36UxJJ+Sw77jFclQNc8POAffzBBN9CY4I7pXdVZQkyUAO
YMfu3Mf2vE3ipsuph5AogwTGPOe9CbGQhiyV7afinuEelt1vc+VwwosLJefMAvR/
LizCkoKsOKj2BgHLTfwYsBLS13nbDQMDQakc7FB9PSRXxbHfs7kWd3jX94KWFHv3
nw6Gw2FN6kRsw42qmeVdsL43WqTFnPcDIEWPg70o8bbNQ/jnRYbzHyVuCAbwn81Z
3TsSLN5UT/QLmPbPHLzsmahh222vdjayBxtviNj2dSkMKzNNUqumIIzuVxXJvVUF
RMg7oLTie/UKF+YtGFkqJXhdEoTj3YKGaMGOInksLs7RrfIbTQ+MKzulInhB84lX
A5I6k5SkvEkm3dqOWGpv1WeUNNiLvOwYKKZMmgTamonDqborTPa10Ub73HeP2rMn
H2CnOvTDgSfKKc327biTgrI0oYur4+k4+NVNW4fNlDRY2oFa1eP6gc9g9u5Q5iwR
it31YVVjY3k=
=6/OI
-----END PGP SIGNATURE-----

L
L
Leo Prikler wrote on 24 Feb 2021 01:24
0e1001712034f0717ba6504b0c4cda27f5e42e94.camel@student.tugraz.at
Hi Christopher,

I really wish I had seen your patch set earlier. It would have saved
me a lot of trouble while packaging 4.4.0 – or at least I think so.

My patches live over at [2], apart from the licenses I'm fairly certain
that they're correct. Should I git:send-email them, so that patchwork
can pick them up?

Regards,
Leo

C
C
Christopher Baines wrote on 24 Feb 2021 01:51
(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)(address . 44492@debbugs.gnu.org)
87im6il24c.fsf@cbaines.net
Leo Prikler <leo.prikler@student.tugraz.at> writes:

Toggle quote (7 lines)
> I really wish I had seen your patch set earlier. It would have saved
> me a lot of trouble while packaging 4.4.0 – or at least I think so.
>
> My patches live over at [2], apart from the licenses I'm fairly certain
> that they're correct. Should I git:send-email them, so that patchwork
> can pick them up?

Looks like you've got less commits at least, which is probably good.

As for sending them, sure, I'd suggest to continue to use this bug.
-----BEGIN PGP SIGNATURE-----

iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAmA1owNfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh
aW5lcy5uZXQACgkQXiijOwuE9Xf8qxAAmfAFKMcpHqAAu4FDwFT8wKfNvjzPUjXg
P4lBGh75olWvKpQCcw6IjE0cIEhArDGS1WGnyGNKcNSdXd635dNq1zvmDJahEIqy
9+0PXM0MyP9SngrmAsd99NnmO8D59XEZGz0DfKU8ODxKmi7rW+3cNrYXEVTxzNYM
4X9efQPXQEVpNYlyD9DKmZlgSqxIrH0XZ2QDS6FZ2Scz2Y7MkqjdlIfjPuztfNMV
1E6xdthr15XCMPUEzQNyol1PuatmmgN4c/ems+V1hnmaUZtL9mAr1tm4RTrENi6v
wP8wYiXHsgfyvgHC2ldhlmyETI6oCQI6cQdw63yIeWSSrNFKonHpnyZbMbS/vpH3
4Fgq6OuFstM6GpHfztq4Ahk+6clH5CPfHH25yZL/kgEr03Xj5Xp8y30vqArXnn+q
FBDcBKts7D4+t1esFQw8xvEasGHhxnSQPriNMO1qkQY/w+p75AcvqqlWjoGATieP
vk1/igLeZ6tr/QErVrM0wyPMdzzlCJmKolo1U0/9zgeboQAns4WbRw2t/xGRdKUJ
awl8nobyDMG9GDXTqYCpwtXwpl6ZtTi1wHv/ZziK9ygoTibj5UA65D+1aKzWw9sN
ftyH5/Htrc8VaCpKDdOFA26F8rbpHONrb7Wr42pacBwCIj5DREBo+fGVBvd2hilE
GkLZR7bbCG4=
=dm0D
-----END PGP SIGNATURE-----

L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 01/52] gnu: Add rust-ruma-identifiers-validation-0.1.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-0.1): New
variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ac38d1180d..409ddbcfed 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32655,6 +32655,31 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-validation-0.1
+ (package
+ (name "rust-ruma-identifiers-validation")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-validation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nv0zqsq5lhybckvfr5wmcp8pipqfs2hjgn9kvn9w33xacfzs4n1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))))
+ (home-page "https://www.ruma.io/")
+ (synopsis
+ "Validation logic for ruma-identifiers and ruma-identifiers-macros")
+ (description
+ "Validation logic for ruma-identifiers and ruma-identifiers-macros")
+ (license license:expat)))
+
(define-public rust-runtime-0.3
(package
(name "rust-runtime")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 02/52] gnu: Add rust-ruma-identifiers-macros-0.17.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-macros-0.17): New variable.
---
gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 409ddbcfed..0f15ea4be4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32655,6 +32655,34 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-macros-0.17
+ (package
+ (name "rust-ruma-identifiers-macros")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-macros" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "03p3qp12h4aajixcyk44q2bcid6fa4nmipysvcpy4w5cbak7wvwq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis
+ "Procedural macros for creating Matrix identifiers.")
+ (description
+ "Procedural macros for creating Matrix identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-validation-0.1
(package
(name "rust-ruma-identifiers-validation")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 03/52] gnu: Add rust-ruma-identifiers-0.17.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-0.17): New variable.
---
gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0f15ea4be4..a51bedb3f0 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32655,6 +32655,39 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-0.17
+ (package
+ (name "rust-ruma-identifiers")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vjxws5yw1c8lmwc5p036319vwwna1sxb7pkl6lw1pl8rwp0j5sr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-either" ,rust-either-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-ruma-identifiers-macros"
+ ,rust-ruma-identifiers-macros-0.17)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))
+ #:cargo-development-inputs
+ (("rust-matches" ,rust-matches-0.1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Resource identifiers for Matrix.")
+ (description "Resource identifiers for Matrix.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-macros-0.17
(package
(name "rust-ruma-identifiers-macros")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 04/52] gnu: Add rust-entities-1.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-entities-1): New variable.
---
gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a51bedb3f0..8a1d18de33 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12622,6 +12622,27 @@ Standard.")
"Streaming transcoding for encoding_rs.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-entities-1
+ (package
+ (name "rust-entities")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "entities" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnpr0zvj97wm9pnh7fnl74rzaar39hhg65p03cm08bqqgj0lcmm"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page "https://github.com/p-jackson/entities")
+ (synopsis "Raw data for converting HTML entities.")
+ (description "This package provides the raw data needed to convert to and
+from HTML entities.")
+ (license license:expat)))
+
(define-public rust-enum-as-inner-0.3
(package
(name "rust-enum-as-inner")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 05/52] gnu: Add rust-twoway-0.2.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-twoway-0.2): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8a1d18de33..f5538550cc 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -44855,6 +44855,35 @@ design abstracts away all the internals of the WebSocket protocol but still
makes them accessible for those who wants full control over the network.")
(license (list license:expat license:asl2.0))))
+(define-public rust-twoway-0.2
+ (package
+ (name "rust-twoway")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "twoway" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g55kf4rx0q682fvzxdixqihmlbamn5ms2yqvcm92fny21chfh3b"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
+ ("rust-jetscii" ,rust-jetscii-0.3)
+ ("rust-memchr" ,rust-memchr-2)
+ ("rust-unchecked-index"
+ ,rust-unchecked-index-0.2))))
+ (home-page "https://github.com/bluss/twoway")
+ (synopsis "Fast substring search for strings and byte strings")
+ (description
+ "This package provides a fast substring search for strings and byte
+strings.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-twoway-0.1
(package
(name "rust-twoway")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 06/52] gnu: Add rust-unicode-categories-0.1.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-6-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-unicode-categories-0.1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f5538550cc..e4857f09d5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -45452,6 +45452,26 @@ Unicode and Internationalization Crates (UNIC) project.")
"Implementation of the Unicode Bidirectional Algorithm.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-unicode-categories-0.1
+ (package
+ (name "rust-unicode-categories")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "unicode_categories" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0kp1d7fryxxm7hqywbk88yb9d1avsam9sg76xh36k5qx2arj9v1r"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/swgillespie/unicode-categories")
+ (synopsis "Query Unicode category membership")
+ (description "This package provides functions to query whether or not
+a character is a member of a certain category of unicode characters.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-unicode-normalization-0.1
(package
(name "rust-unicode-normalization")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 07/52] gnu: Add rust-comrak-0.7.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-comrak-0.7): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e4857f09d5..25c8a7ff3c 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -7601,6 +7601,40 @@ harness.")
("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-comrak-0.7
+ (package
+ (name "rust-comrak")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "comrak" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07026j0ghwgv5z61fc4l893wwc30krxpsy487rb91wkcag65hw71"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-entities" ,rust-entities-1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-twoway" ,rust-twoway-0.2)
+ ("rust-typed-arena" ,rust-typed-arena-1)
+ ("rust-unicode-categories"
+ ,rust-unicode-categories-0.1))
+ #:cargo-development-inputs
+ (("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/kivikakk/comrak")
+ (synopsis "Markdown parser and formatter")
+ (description "This package provides a parser and formatter for Github
+Flavored Markdown, that is compatible with CommonMark.")
+ (license license:bsd-2)))
+
(define-public rust-concurrent-queue-1
(package
(name "rust-concurrent-queue")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 08/52] gnu: Add rust-fragile-1.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-fragile-1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 25c8a7ff3c..2729bedee3 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14298,6 +14298,26 @@ implementation that is more efficient for smaller hash keys.")
syntax, as used by HTML forms.")
(license (list license:expat license:asl2.0))))
+(define-public rust-fragile-1
+ (package
+ (name "rust-fragile")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fragile" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wlihmkjyhvl5rckal32p010piy1l15s6l81h7z31jcd971kk839"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/mitsuhiko/rust-fragile")
+ (synopsis "Wrapper types for sending non-send values to other threads")
+ (description "This package provides wrapper types for sending non-send
+values to other threads.")
+ (license license:asl2.0)))
+
(define-public rust-fragile-0.3
(package
(name "rust-fragile")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 09/52] gnu: rust-either-1: Update to 1.6.1.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-either-1): Update to 1.6.1.
---
gnu/packages/crates-io.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2729bedee3..a398ae326d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12310,7 +12310,7 @@ signing, and verification in pure Rust.")
(define-public rust-either-1
(package
(name "rust-either")
- (version "1.5.3")
+ (version "1.6.1")
(source
(origin
(method url-fetch)
@@ -12319,7 +12319,7 @@ signing, and verification in pure Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1qyz1b1acad6w0k5928jw5zaq900zhsk7p8dlcp4hh61w4f6n7xv"))))
+ "0mwl9vngqf5jvrhmhn9x60kr5hivxyjxbmby2pybncxfqhf4z3g7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 10/52] gnu: Add rust-gspell-sys-0.4.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 48 ++++++++++++++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index ebe2a4e45b..232d186cc8 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -26,7 +26,8 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
- #:use-module (gnu packages gtk))
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages pkg-config))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -887,6 +888,51 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-gspell-sys-0.4
+ (package
+ (name "rust-gspell-sys")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Raw C-FFI bindings for the gspell library")
+ (description "Raw C-FFI bindings for the gspell library")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 11/52] gnu: Add rust-gspell-0.4.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-11-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 65 ++++++++++++++++++++++++++++++++++++-
1 file changed, 64 insertions(+), 1 deletion(-)

Toggle diff (89 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 232d186cc8..a6d534fcca 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -23,11 +23,13 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
+ #:use-module (gnu packages aspell)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
- #:use-module (gnu packages pkg-config))
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -933,6 +935,67 @@
(description "Raw C-FFI bindings for the gspell library")
(license license:gpl3+)))
+(define-public rust-gspell-0.4
+ (package
+ (name "rust-gspell")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10wi6p6dhdqypfqlih18mrl7vgni7y64mrhdh5ymayp4d07djshk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gspell-sys" ,rust-gspell-sys-0.4)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+
+ ;; Allow Enchant and its Aspell backend to find the en_US
+ ;; dictionary.
+ (setenv "ASPELL_DICT_DIR"
+ (string-append (assoc-ref inputs "aspell-dict-en")
+ "/lib/aspell"))
+ #t)))))
+ (native-inputs
+ `(("aspell-dict-en" ,aspell-dict-en)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Rust bindings for gspell")
+ (description "Rust bindings for gspell")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 12/52] gnu: Add rust-muldiv-0.2.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-12-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-muldiv-0.2): New variable.
---
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 a398ae326d..c6c902c512 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23425,6 +23425,29 @@ checking.")
"Chaining APIs for both self -> Self and &mut self methods.")
(license license:expat)))
+(define-public rust-muldiv-0.2
+ (package
+ (name "rust-muldiv")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "muldiv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "014jlry2l2ph56mp8knw65637hh49q7fmrraim2bx9vz0a638684"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.9))))
+ (home-page "https://github.com/sdroege/rust-muldiv")
+ (synopsis "Perform combined multiplication and division")
+ (description "This package provides a trait for numeric types to perform
+combined multiplication and division with overflow protection.")
+ (license license:expat)))
+
(define-public rust-multi-default-trait-impl-0.1
(package
(name "rust-multi-default-trait-impl")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 13/52] gnu: Add rust-gstreamer-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-13-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index a6d534fcca..2343dde97a 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -27,6 +27,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg))
@@ -996,6 +997,46 @@
(description "Rust bindings for gspell")
(license license:gpl3+)))
+(define-public rust-gstreamer-sys-0.8
+ (package
+ (name "rust-gstreamer-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nsk802vlcyi9p93sg60wv8fzb2mq7j52lfdda4va2kxp40xl60x"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstreamer-1.0")
+ (description "FFI bindings to libgstreamer-1.0")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 14/52] gnu: Add rust-gstreamer-0.15.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-14-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 50 +++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 2343dde97a..6e3b7158ac 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -997,6 +997,56 @@
(description "Rust bindings for gspell")
(license license:gpl3+)))
+(define-public rust-gstreamer-0.15
+ (package
+ (name "rust-gstreamer")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qx1fhr9ajms0128ixmi2ncr35llwppdb0z7ximw2vnd2jhn91nf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-muldiv" ,rust-muldiv-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-bytes" ,rust-serde-bytes-0.11)
+ ("rust-serde-derive" ,rust-serde-derive-1))
+ #:cargo-development-inputs
+ (("rust-futures-executor"
+ ,rust-futures-executor-0.3)
+ ("rust-ron" ,rust-ron-0.5)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer")
+ (description "Rust bindings for GStreamer")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 15/52] gnu: Add rust-gstreamer-base-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-15-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 6e3b7158ac..280a8b43fc 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1047,6 +1047,47 @@
(description "Rust bindings for GStreamer")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-sys-0.8
+ (package
+ (name "rust-gstreamer-base-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v9v09jqjrwz87c4r7za3yb6g7had112d8zwjdjmhg2b2x94yf5s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstbase-1.0")
+ (description "FFI bindings to libgstbase-1.0")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:10
[PATCH 16/52] gnu: Add rust-gstreamer-video-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-16-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 280a8b43fc..765a790fca 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1128,6 +1128,50 @@
(description "FFI bindings to libgstreamer-1.0")
(license license:expat)))
+(define-public rust-gstreamer-video-sys-0.8
+ (package
+ (name "rust-gstreamer-video-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k5prjimlrm5c68vk6wq1l9y440p5vskrq862rcb9x22z2c44pv1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; TODO: ABI mismatch
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstvideo-1.0")
+ (description "FFI bindings to libgstvideo-1.0")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 17/52] gnu: Add rust-gstreamer-player-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-17-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 765a790fca..adad535cde 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1088,6 +1088,50 @@
(description "FFI bindings to libgstbase-1.0")
(license license:expat)))
+(define-public rust-gstreamer-player-sys-0.8
+ (package
+ (name "rust-gstreamer-player-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g21c7yk1855k5qdyn0hcwa6v1dy9admipy8s7544d7d19rqmhww"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstplayer-1.0")
+ (description "FFI bindings to libgstplayer-1.0")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 18/52] gnu: Add rust-gstreamer-base-0.15.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-18-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)

Toggle diff (49 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index adad535cde..471bd674b4 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1047,6 +1047,42 @@
(description "Rust bindings for GStreamer")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-0.15
+ (package
+ (name "rust-gstreamer-base")
+ (version "0.15.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04hwa85j3w959i025il908bvsx6dyiawkmc0w45hn9kcrisjyma2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Base library")
+ (description "Rust bindings for GStreamer Base library")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-base-sys-0.8
(package
(name "rust-gstreamer-base-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 19/52] gnu: Add rust-gstreamer-video-0.15.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-19-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 43 +++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)

Toggle diff (56 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 471bd674b4..5cc1667d99 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1208,6 +1208,49 @@
(description "FFI bindings to libgstreamer-1.0")
(license license:expat)))
+(define-public rust-gstreamer-video-0.15
+ (package
+ (name "rust-gstreamer-video")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jaday8gsmhixv5k78wxcsricmvqfsip486750ad8ih2jjdfdmqa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base" ,rust-gstreamer-base-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Video library")
+ (description "Rust bindings for GStreamer Video library")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-video-sys-0.8
(package
(name "rust-gstreamer-video-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 20/52] gnu: Add rust-gstreamer-player-0.15.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-20-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 39 +++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)

Toggle diff (52 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 5cc1667d99..278df4202a 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1124,6 +1124,45 @@
(description "FFI bindings to libgstbase-1.0")
(license license:expat)))
+(define-public rust-gstreamer-player-0.15
+ (package
+ (name "rust-gstreamer-player")
+ (version "0.15.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167nv3s6pwr746gjm2i0vd6ygfmbp80hi4wm46lly3jgciy4kcq4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-player-sys"
+ ,rust-gstreamer-player-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video"
+ ,rust-gstreamer-video-0.15)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad))) ; for -lgstplayer-1.0
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Player library")
+ (description "Rust bindings for GStreamer Player library")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-player-sys-0.8
(package
(name "rust-gstreamer-player-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 21/52] gnu: Add rust-gstreamer-audio-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-21-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-audio-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 278df4202a..10ad306fff 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1047,6 +1047,51 @@
(description "Rust bindings for GStreamer")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-audio-sys-0.8
+ (package
+ (name "rust-gstreamer-audio-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-audio-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rxw1s57yrw1zsbindaf2sj05df4qh17bshadqfw77y4xr9izjdv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build?
+ #t
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstaudio-1.0")
+ (description "FFI bindings to libgstaudio-1.0")
+ (license license:expat)))
+
(define-public rust-gstreamer-base-0.15
(package
(name "rust-gstreamer-base")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 22/52] gnu: Add rust-gstreamer-pbutils-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-22-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 10ad306fff..71fc2b76ed 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1169,6 +1169,51 @@
(description "FFI bindings to libgstbase-1.0")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-sys-0.8
+ (package
+ (name "rust-gstreamer-pbutils-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1s4dgmq9ai1jz5w5vllji8087khw7hja97hii4lgl29figkakdsf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-audio-sys"
+ ,rust-gstreamer-audio-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstpbutils-1.0")
+ (description "FFI bindings to libgstpbutils-1.0")
+ (license license:expat)))
+
(define-public rust-gstreamer-player-0.15
(package
(name "rust-gstreamer-player")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 23/52] gnu: Add rust-gstreamer-pbutils-0.15.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-23-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)

Toggle diff (49 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 71fc2b76ed..ed3cfe68ef 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1169,6 +1169,42 @@
(description "FFI bindings to libgstbase-1.0")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-0.15
+ (package
+ (name "rust-gstreamer-pbutils")
+ (version "0.15.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q8hv8i41mwhr84ydwlv7qspf49s5i7pz3lnjwl0l9gyp2anq97d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils-sys"
+ ,rust-gstreamer-pbutils-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Base Utils library")
+ (description "Rust bindings for GStreamer Base Utils library")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-pbutils-sys-0.8
(package
(name "rust-gstreamer-pbutils-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 24/52] gnu: Add rust-markup5ever-rcdom-0.1.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-24-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-markup5ever-rcdom-0.1): New variable.
---
gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c6c902c512..90baa8b682 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22174,6 +22174,36 @@ platform-independently.")
(base32
"08ayl9aqjnmf7ly1ipy6dk3wjvyfn4w51l40jzh1fh984ykldbzi"))))))
+(define-public rust-markup5ever-rcdom-0.1
+ (package
+ (name "rust-markup5ever-rcdom")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "markup5ever_rcdom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0axf6vrms8579lvhbjaj0v7bhs8xb7s26d4sam2g3m6qpi1xl5gh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test files not included in release.
+ #:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-markup5ever" ,rust-markup5ever-0.10)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-xml5ever" ,rust-xml5ever-0.16))
+ #:cargo-development-inputs
+ (("rust-rustc-test" ,rust-rustc-test-0.3))))
+ (home-page "https://github.com/servo/html5ever")
+ (synopsis
+ "Basic, unsupported DOM structure for use by tests in html5ever/xml5ever")
+ (description
+ "Basic, unsupported DOM structure for use by tests in html5ever/xml5ever")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-match-cfg-0.1
(package
(name "rust-match-cfg")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 25/52] gnu: Add rust-ammonia-3.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-25-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ammonia-3): New variable.
---
gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 90baa8b682..3a6b3a0120 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1700,6 +1700,37 @@ options to use calloc or a mutable global variable for pre-zeroed memory.")
be used with the stdlib.")
(license license:bsd-3)))
+(define-public rust-ammonia-3
+ (package
+ (name "rust-ammonia")
+ (version "3.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ammonia" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fzaj1fx3yhz2qd47gfvz7n8xjrnn37w2hp4qlyzpczlf18wisl9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-matches" ,rust-matches-0.1)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-version-sync" ,rust-version-sync-0.8))))
+ (home-page "https://github.com/rust-ammonia/ammonia")
+ (synopsis "HTML Sanitization")
+ (description "HTML Sanitization")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-android-glue-0.2
(package
(name "rust-android-glue")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 26/52] gnu: Add rust-html2pango-0.3.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-26-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-html2pango-0.3): New variable.
---
gnu/packages/crates-gtk.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index ed3cfe68ef..939b2c8bf6 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1564,6 +1564,40 @@
(description "This package provides FFI bindings to libgtk-3.")
(license license:expat)))
+(define-public rust-html2pango-0.3
+ (package
+ (name "rust-html2pango")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "html2pango" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0f0phim3bgmq0gcsvm9q8674190d5v5idlsqyxykxjf36d02i6s6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ammonia" ,rust-ammonia-3)
+ ("rust-anyhow" ,rust-anyhow-1)
+ ("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-linkify" ,rust-linkify-0.4)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-regex" ,rust-regex-1))
+ #:cargo-development-inputs
+ (("rust-pretty-assertions"
+ ,rust-pretty-assertions-0.6))))
+ (home-page "https://gitlab.gnome.org/World/html2pango")
+ (synopsis "Convert HTML to pango.")
+ (description "html2pango converts html tags to Pango markup. It also
+converts raw links to http links and strips unwanted tags.")
+ (license license:gpl3)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 27/52] gnu: Add rust-pangocairo-sys-0.11.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-27-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-sys-0.11): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 939b2c8bf6..8c54e26a46 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1800,6 +1800,51 @@ converts raw links to http links and strips unwanted tags.")
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+(define-public rust-pangocairo-sys-0.11
+ (package
+ (name "rust-pangocairo-sys")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167b1z6ns3lw1dqfq3mnhmknf7isi5vacp2fp0rh4bwcd5zwkk4l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to pangocairo")
+ (description "This package provides FFI bindings to pangocairo.")
+ (license license:expat)))
+
(define-public rust-pangocairo-sys-0.10
(package
(name "rust-pangocairo-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 28/52] gnu: Add rust-pangocairo-0.10.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-28-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 52 +++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)

Toggle diff (65 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 8c54e26a46..d562b07480 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1733,6 +1733,58 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-pangocairo-0.10
+ (package
+ (name "rust-pangocairo")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10z8hlc82984nwvy5pnyh95ls9s5r1qrlkpn14zh4pjsl1ksxx80"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.11))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the PangoCairo library")
+ (description
+ "Rust bindings for the PangoCairo library.")
+ (license license:expat)))
+
(define-public rust-pangocairo-0.9
(package
(name "rust-pangocairo")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 29/52] gnu: Add rust-letter-avatar-1.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-29-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-1): New variable.
---
gnu/packages/crates-gtk.scm | 42 +++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)

Toggle diff (55 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index d562b07480..8e521cadd6 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1598,6 +1598,48 @@
converts raw links to http links and strips unwanted tags.")
(license license:gpl3)))
+(define-public rust-letter-avatar-1
+ (package
+ (name "rust-letter-avatar")
+ (version "1.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0if2mihpxn4xissv68qciqn5vywy0kl0sx9hcyrhd70s2fyn09k6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pangocairo" ,rust-pangocairo-0.10)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/jsparber/letter-avatar")
+ (synopsis "Generates user avatars using username initials")
+ (description "Generates user avatars using username initials")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 30/52] gnu: Add rust-libhandy-sys-0.5.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-30-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-sys-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 47 +++++++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)

Toggle diff (60 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 8e521cadd6..606aaf1463 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1640,6 +1640,53 @@ converts raw links to http links and strips unwanted tags.")
(description "Generates user avatars using username initials")
(license license:gpl3+)))
+(define-public rust-libhandy-sys-0.5
+ (package
+ (name "rust-libhandy-sys")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ih4ws1d9n4qp4rwgsfilklgchqq3prnrb7h3avik1wi5s2ay1yp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis
+ "The sys part of the rust bindings for libhandy")
+ (description
+ "The sys part of the rust bindings for libhandy")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 31/52] gnu: Add rust-libhandy-0.5.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-31-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 606aaf1463..58255dda12 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1687,6 +1687,60 @@ converts raw links to http links and strips unwanted tags.")
"The sys part of the rust bindings for libhandy")
(license license:gpl3+)))
+(define-public rust-libhandy-0.5
+ (package
+ (name "rust-libhandy")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "01zska4i6641pj8d9gcc2kclx5vvsbbyfpv4rn5kahs11rigba9a"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-libhandy-sys" ,rust-libhandy-sys-0.5)
+ ("rust-pango" ,rust-pango-0.8))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "Rust bindings for libhandy")
+ (description "Rust bindings for libhandy")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 32/52] gnu: Add rust-loggerv-0.7.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-32-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-loggerv-0.7): New variable.
---
gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 3a6b3a0120..9391a6dfea 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21686,6 +21686,41 @@ by inspecting the system for user preference.")
`(#:cargo-inputs
(("rust-log" ,rust-log-0.4))))))
+(define-public rust-loggerv-0.7
+ (package
+ (name "rust-loggerv")
+ (version "0.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "loggerv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0x6k903wpm557fkcbr5isgh4yqkkbzw4fm7hwyy61rvimqaxxn30"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ansi-term" ,rust-ansi-term-0.12)
+ ("rust-atty" ,rust-atty-0.2)
+ ("rust-log" ,rust-log-0.4))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "src/lib.rs"
+ (("assert_eq!\\(logger\\.colors, DEFAULT_COLORS\\);" all)
+ (string-append "// " all)))
+ #t)))))
+ (home-page "https://github.com/clux/loggerv")
+ (synopsis "Logger with colors")
+ (description "This package provides a simple log implementation that logs
+to stdout and stderr with colors")
+ (license license:expat)))
+
(define-public rust-logtest-2
(package
(name "rust-logtest")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 33/52] gnu: Add rust-lmdb-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-33-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-sys-0.8): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9391a6dfea..0432a32cb9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21433,6 +21433,30 @@ punctuation.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-lmdb-sys-0.8
+ (package
+ (name "rust-lmdb-sys")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1scc28phjcywr9jq78d01g35rig8l2bwydxcdzl5i27yij1r5cym"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cc" ,rust-cc-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "Rust bindings for liblmdb.")
+ (description "Rust bindings for liblmdb.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 34/52] gnu: Add rust-lmdb-0.8.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-34-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-0.8): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0432a32cb9..24c4110dcf 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21457,6 +21457,35 @@ punctuation.")
(description "Rust bindings for liblmdb.")
(license license:asl2.0)))
+(define-public rust-lmdb-0.8
+ (package
+ (name "rust-lmdb")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fc54in9i27v1gpxncay5s85lqx27m0r2vyrfylnljfnnpphh2av"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; use of unstable feature
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-lmdb-sys" ,rust-lmdb-sys-0.8))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-rand" ,rust-rand-0.8)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "Idiomatic and safe LMDB wrapper.")
+ (description "Idiomatic and safe LMDB wrapper.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 35/52] gnu: Add rust-mdl-1.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-35-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-mdl-1): New variable.
---
gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 24c4110dcf..775242d832 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22581,6 +22581,34 @@ compression function.")
(supported-systems '("x86_64-linux" "i686-linux"))
(license license:expat)))
+(define-public rust-mdl-1
+ (package
+ (name "rust-mdl")
+ (version "1.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "mdl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mavphw0ynhggm310rbldzifcrc507jax1nzwrmj4cz1xv7vw24l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-bincode" ,rust-bincode-1)
+ ("rust-lmdb" ,rust-lmdb-0.8)
+ ("rust-serde" ,rust-serde-1))))
+ (home-page "https://gitlab.gnome.org/danigm/mdl")
+ (synopsis "Data model library")
+ (description "This package provides a data model library to share app state
+between threads and process and persist the data in the filesystem. It
+implements a way to store structs instances in an LMDB database and other
+methods like BTreeMap.")
+ (license license:gpl3)))
+
(define-public rust-measureme-0.7
(package
(name "rust-measureme")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 36/52] gnu: Add rust-aes-soft-0.6.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-36-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-soft-0.6): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 775242d832..0aa77264c3 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1238,6 +1238,30 @@ acceleration.")
("rust-subtle" ,rust-subtle-2)
("rust-zeroize" ,rust-zeroize-1))))))
+(define-public rust-aes-soft-0.6
+ (package
+ (name "rust-aes-soft")
+ (version "0.6.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes-soft" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0wj0fi2pvmlw09yvb1aqf0mfkzrfxmjsf90finijh255ir4wf55y"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Bit-sliced implementation of AES (Rijndael) block ciphers")
+ (description "This package provides a bit-sliced implementation of
+AES (Rijndael) block ciphers.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-soft-0.4
(package
(name "rust-aes-soft")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 37/52] gnu: Add rust-aesni-0.10.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-37-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aesni-0.10): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0aa77264c3..285d27f080 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1307,6 +1307,31 @@ AES (Rijndael) block ciphers.")
("rust-byteorder" ,rust-byteorder-1)
("rust-opaque-debug" ,rust-opaque-debug-0.2))))))
+(define-public rust-aesni-0.10
+ (package
+ (name "rust-aesni")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aesni" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1kmh07fp9hbi1aa8dr2rybbgw8vqz6hjmk34c4w7sbscx7si2bpa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "AES (Rijndael) block ciphers implementation using AES-NI")
+ (description "This package provides an implementation of AES (Rijndael)
+block ciphers using AES-NI.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aesni-0.7
(package
(name "rust-aesni")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 38/52] gnu: Add rust-aes-0.6.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-38-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-0.6): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 285d27f080..81e4869e84 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1137,6 +1137,31 @@ with Associated Data (AEAD) algorithms.")
(("rust-generic-array" ,rust-generic-array-0.12)
("rust-heapless" ,rust-heapless-0.5))))))
+(define-public rust-aes-0.6
+ (package
+ (name "rust-aes")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0q85mw70mgr4glza9y9lrs9nxfa1cdcqzfk6wx0smb3623pr2hw8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-aes-soft" ,rust-aes-soft-0.6)
+ ("rust-aesni" ,rust-aesni-0.10)
+ ("rust-cipher" ,rust-cipher-0.2))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Facade for AES (Rijndael) block ciphers implementations")
+ (description "This package provides a facade for AES (Rijndael) block
+ciphers implementations.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-0.4
(package
(name "rust-aes")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 39/52] gnu: Add rust-block-modes-0.7.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-39-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-block-modes-0.7): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 81e4869e84..88963f9fc4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -5091,6 +5091,33 @@ algorithms. This package is deprecated. Please use block-cipher instead.")
`(#:cargo-inputs
(("rust-generic-array" ,rust-generic-array-0.8))))))
+(define-public rust-block-modes-0.7
+ (package
+ (name "rust-block-modes")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "block-modes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1w3jc3n7k4xq98b9mfina4wwpg1fq1s3b0mm5whqialb7q3yi82p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-padding" ,rust-block-padding-0.2)
+ ("rust-cipher" ,rust-cipher-0.2))
+ #:cargo-development-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-hex-literal" ,rust-hex-literal-0.2)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Block cipher modes of operation")
+ (description "Block cipher modes of operation")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-block-padding-0.2
(package
(name "rust-block-padding")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 40/52] gnu: Add rust-hmac-0.10.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-40-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hmac-0.10): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 88963f9fc4..d84e185049 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17685,6 +17685,35 @@ Derivation Function (HKDF).")
(("rust-digest" ,rust-digest-0.8)
("rust-hmac" ,rust-hmac-0.7))))))
+(define-public rust-hmac-0.10
+ (package
+ (name "rust-hmac")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hmac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "058yxq54x7xn0gk2vy9bl51r32c9z7qlcl2b80bjh3lk3rmiqi61"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.10)
+ ("rust-digest" ,rust-digest-0.9))
+ #:cargo-development-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.8)
+ ("rust-md-5" ,rust-md-5-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))
+ (home-page "https://github.com/RustCrypto/MACs")
+ (synopsis "Generic implementation of Hash-based Message Authentication Code")
+ (description
+ "This package provides a generic implementation of @acronym{HMAC,
+Hash-based Message Authentication Code}.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-hmac-0.8
(package
(name "rust-hmac")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 41/52] gnu: Add rust-hkdf-0.10.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-41-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hkdf-0.10): New variable.
---
gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index d84e185049..47f8bfc6af 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17638,6 +17638,36 @@ compile time.")
`(#:cargo-inputs
(("rust-proc-macro-hack" ,rust-proc-macro-hack-0.4))))))
+(define-public rust-hkdf-0.10
+ (package
+ (name "rust-hkdf")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hkdf" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0kwn3scjvv2x8zc6nz3wrnzxp9shpsdxnjqiyv2r65r3kiijzasi"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-digest" ,rust-digest-0.9)
+ ("rust-hmac" ,rust-hmac-0.10))
+ #:cargo-development-inputs
+ (("rust-bencher" ,rust-bencher-0.1)
+ ("rust-crypto-tests" ,rust-crypto-tests-0.5)
+ ("rust-hex" ,rust-hex-0.4)
+ ("rust-sha-1" ,rust-sha-1-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))
+ (home-page "https://github.com/RustCrypto/KDFs/")
+ (synopsis "HMAC-based Extract-and-Expand Key Derivation Function (HKDF)")
+ (description "This package provides a HMAC-based Extract-and-Expand Key
+Derivation Function (HKDF).")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-hkdf-0.9
(package
(name "rust-hkdf")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 42/52] gnu: Add rust-dbus-0.2.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-42-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-dbus-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 58255dda12..bad7376076 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -228,6 +228,46 @@
("rust-x11" ,rust-x11-2)
("rust-pkg-config" ,rust-pkg-config-0.3))))))
+(define-public rust-dbus-0.2
+ (package
+ (name "rust-dbus")
+ (version "0.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dbus" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0b85dl7y396g8xh1xh89wxnb1fvvf840dar9axavfhhhlq7c385l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: fatal warnings are still fatal
+ #:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-tempdir" ,rust-tempdir-0.3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/diwic/dbus-rs")
+ (synopsis "Rust bindings to D-Bus")
+ (description "This package provides Rust bindings to D-Bus, a bus commonly
+used for inter-process communication.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-gdk-0.13
(package
(name "rust-gdk")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 43/52] gnu: Add rust-secret-service-1.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-43-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-secret-service-1): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index bad7376076..b18cfe49b3 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2110,3 +2110,47 @@ converts raw links to http links and strips unwanted tags.")
(synopsis "FFI bindings to libgtk-3")
(description "This package provides FFI bindings to libgtk-3.")
(license license:expat)))
+
+(define-public rust-secret-service-1
+ (package
+ (name "rust-secret-service")
+ (version "1.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "secret-service" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "12hxz35i7sw5xsdldz1c6776fmz98z4dwh5779jis98w61020xbd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: see rust-dbus
+ #:cargo-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-block-modes" ,rust-block-modes-0.7)
+ ("rust-dbus" ,rust-dbus-0.2)
+ ("rust-hkdf" ,rust-hkdf-0.10)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-num" ,rust-num-0.3)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-sha2" ,rust-sha2-0.9))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/hwchen/secret-service-rs.git")
+ (synopsis "Library to interface with Secret Service API")
+ (description "Library to interface with Secret Service API")
+ (license (list license:expat license:asl2.0))))
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 45/52] gnu: Add rust-atk-0.9.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-45-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-atk-0.9): New variable.
---
gnu/packages/crates-gtk.scm | 46 +++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)

Toggle diff (59 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index cfeb1f5e0c..96dc0682ed 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -109,6 +109,52 @@
(description "FFI bindings to libatk-1")
(license license:expat)))
+(define-public rust-atk-0.9
+ (package
+ (name "rust-atk")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atk" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "09n46zp8jgxspdzhmi93cag79jjnr0ila94n8nr53g8hw88ljaw1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atk-sys" ,rust-atk-sys-0.10)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the ATK library")
+ (description "Rust bindings for the ATK library")
+ (license license:expat)))
+
(define-public rust-atk-0.8
(package
(name "rust-atk")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 44/52] gnu: Add rust-atk-sys-0.10.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-44-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-atk-sys-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 43 +++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)

Toggle diff (56 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index b18cfe49b3..cfeb1f5e0c 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -36,6 +36,49 @@
;;; Please: Try to add new module packages in alphabetic order.
;;;
+(define-public rust-atk-sys-0.10
+ (package
+ (name "rust-atk-sys")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atk-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1knzvq2jdkx1nav619jbqsx2ivzh901rsp2wl57wr50x2fpy8c7m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libatk-1")
+ (description "FFI bindings to libatk-1")
+ (license license:expat)))
+
(define-public rust-atk-sys-0.9
(package
(name "rust-atk-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 46/52] gnu: Add rust-gtk-sys-0.10.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-46-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gtk-sys-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 53 +++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)

Toggle diff (66 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 96dc0682ed..8c6afef91e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1658,6 +1658,59 @@ used for inter-process communication.")
"LGPL-licensed docs for Gtk-rs crates.")
(license license:lgpl2.0)))
+(define-public rust-gtk-sys-0.10
+ (package
+ (name "rust-gtk-sys")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gtk-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0mq4i161kk6dwiz19ayxgm9fhx7n3r5lm9lbjiyk0qs811pxmb49"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; TODO: ABI mismatch
+ #:cargo-inputs
+ (("rust-atk-sys" ,rust-atk-sys-0.10)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libgtk-3")
+ (description "This package provides FFI bindings to libgtk-3.")
+ (license license:expat)))
+
(define-public rust-gtk-sys-0.9
(package
(name "rust-gtk-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 47/52] gnu: Add rust-gtk-0.9.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-47-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gtk-0.9): New variable.
---
gnu/packages/crates-gtk.scm | 64 +++++++++++++++++++++++++++++++++++++
1 file changed, 64 insertions(+)

Toggle diff (77 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 8c6afef91e..5b4f85949e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1589,6 +1589,70 @@ used for inter-process communication.")
(description "FFI bindings to libgstvideo-1.0")
(license license:expat)))
+(define-public rust-gtk-0.9
+ (package
+ (name "rust-gtk")
+ (version "0.9.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gtk" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0smdll32vlamp4kvxa6sg5m653icas21jd36fvq3laq7ahh2y0ig"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atk" ,rust-atk-0.9)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-cc" ,rust-cc-1)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the GTK+ 3 library")
+ (description
+ "Rust bindings for the GTK+ 3 library")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 48/52] gnu: Add rust-sourceview4-sys-0.2.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-48-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-sys-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 53 +++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 5b4f85949e..7781236458 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2360,3 +2360,56 @@ converts raw links to http links and strips unwanted tags.")
(synopsis "Library to interface with Secret Service API")
(description "Library to interface with Secret Service API")
(license (list license:expat license:asl2.0))))
+
+(define-public rust-sourceview4-sys-0.2
+ (package
+ (name "rust-sourceview4-sys")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "146l7fni9zc68rr1aim5di4mzrk22r8jxb96ww8fgp6f51np690v"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "FFI bindings for GtkSourceView 4")
+ (description "FFI bindings for GtkSourceView 4")
+ (license license:lgpl2.1+)))
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 49/52] gnu: Add rust-sourceview4-0.2.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-49-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 58 +++++++++++++++++++++++++++++++++++++
1 file changed, 58 insertions(+)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7781236458..0238a31edb 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2413,3 +2413,61 @@ converts raw links to http links and strips unwanted tags.")
(synopsis "FFI bindings for GtkSourceView 4")
(description "FFI bindings for GtkSourceView 4")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-0.2
+ (package
+ (name "rust-sourceview4")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1c35bm98gmn93qralgjlippdjm2d6199j811qgrn1zd4iv3j3kv7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk" ,rust-gtk-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-sourceview4-sys"
+ ,rust-sourceview4-sys-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "API bindings for GtkSourceView 4")
+ (description "API bindings for GtkSourceView 4")
+ (license license:lgpl2.1+)))
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 12:11
[PATCH 50/52] gnu: Add rust-sourceview4-for-fractal.
(address . 44492@debbugs.gnu.org)
20210224111135.28883-50-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0238a31edb..e27ff0704b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -20,6 +20,7 @@
(define-module (gnu packages crates-gtk)
#:use-module (guix build-system cargo)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
@@ -2471,3 +2472,31 @@ converts raw links to http links and strips unwanted tags.")
(synopsis "API bindings for GtkSourceView 4")
(description "API bindings for GtkSourceView 4")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-for-fractal
+ (package
+ (inherit rust-sourceview4-0.2)
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/World/Rust/sourceview4-rs/")
+ (commit "fa8819fa7ecbe56f44d951656d3825f468915754")))
+ (file-name "rust-sourceview4-0.2.0.tar.gz")
+ (sha256
+ (base32
+ "0aib8385fxdpw79sasfzn6q11sqx3wigkb267if9fb12bagycgpk"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.8))))
+ (properties `((hidden? . #t)))))
--
2.30.1
N
N
Nicolas Goaziou wrote on 24 Feb 2021 12:46
Re: [bug#44492] [PATCH 01/52] gnu: Add rust-ruma-identifiers-validation-0.1.
(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)(address . 44492@debbugs.gnu.org)
87sg5lhemw.fsf@nicolasgoaziou.fr
Hello,

Leo Prikler <leo.prikler@student.tugraz.at> writes:

Toggle quote (3 lines)
> * gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-0.1): New
> variable.

Thank you! I have a few general comments about the patch set.

Nitpicks: some synopses end with a full stop, and most descriptions are
not full sentences.

If you introduce a new version of an existing package, the old package
should inherit from the new one.

More generally, I still think intermediate packages should use
#:skip-build #t. Building them brings very little information, if any:

- A crate failing to build, for various reasons, is still correct as an
input to another crate
- Even if all intermediate crates have "#:skip-build #t", building the
top-level crate locates accurately any missing Cargo input in the
dependency graph.

Not using #:skip-build, OTOH, costs a lot of resources and time for the
CI, for users and developers.

Of course, this last remark is not specific to your patch set. I wish we
can converge towards common Rust packaging guidelines.

Regards,
--
Nicolas Goaziou
L
L
Leo Prikler wrote on 24 Feb 2021 13:30
[PATCH 51/52] gnu: Add rust-letter-avatar-for-fractal.
(address . 44492@debbugs.gnu.org)
20210224123047.31315-51-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index e27ff0704b..fd6850e447 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1887,6 +1887,30 @@ converts raw links to http links and strips unwanted tags.")
(description "Generates user avatars using username initials")
(license license:gpl3+)))
+(define-public rust-letter-avatar-for-fractal
+ (package
+ (inherit rust-letter-avatar-1)
+ (name "rust-letter-avatar")
+ (version "1.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00hnlyckr25h5hvisk90vf88diww6cds140s8cpfhjx4p33kxnm8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.8)
+ ("rust-pango" ,rust-pango-0.8)
+ ("rust-pangocairo" ,rust-pangocairo-0.9)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))))
+ (properties '((hidden? . #t)))))
+
(define-public rust-libhandy-sys-0.5
(package
(name "rust-libhandy-sys")
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 13:30
[PATCH 52/52] gnu: Add fractal.
(address . 44492@debbugs.gnu.org)
20210224123047.31315-52-leo.prikler@student.tugraz.at
* gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/gnome.scm (fractal): New variable.
---
gnu/local.mk | 1 +
gnu/packages/gnome.scm | 141 +++++++++++++++++
...ractal-switch-from-failure-to-anyhow.patch | 143 ++++++++++++++++++
3 files changed, 285 insertions(+)
create mode 100644 gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch

Toggle diff (312 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index ae5a65cfcf..0f2c4f9f1d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -996,6 +996,7 @@ dist_patch_DATA = \
%D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/fpc-reproducibility.patch \
%D%/packages/patches/fplll-std-fenv.patch \
+ %D%/packages/patches/fractal-switch-from-failure-to-anyhow.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freebayes-devendor-deps.patch \
%D%/packages/patches/freeimage-unbundle.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index b8634d712a..5342858470 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -12097,3 +12097,144 @@ for the GNOME 3.x platform with many features. It aims to be a very complete
editing environment for translation issues within the GNU gettext/GNOME desktop
world.")
(license license:gpl3+)))
+
+(define-public fractal
+ (package
+ (name "fractal")
+ (version "4.4.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/GNOME/fractal")
+ (commit version)))
+ (file-name (string-append "fractal-" version))
+ (sha256
+ (base32
+ "1v2aw41gfmixki6g7j7mcav7i7qkn17k7zndvvfv08rgsrvma8qd"))
+ (patches
+ (search-patches
+ "fractal-switch-from-failure-to-anyhow.patch"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:imported-modules
+ (,@%cargo-build-system-modules
+ ,@%meson-build-system-modules)
+ #:modules
+ ((guix build cargo-build-system)
+ (guix build utils)
+ ((guix build meson-build-system) #:prefix meson:))
+ #:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-comrak" ,rust-comrak-0.7)
+ ("rust-directories" ,rust-directories-2)
+ ("rust-dirs" ,rust-dirs-2)
+ ("rust-either" ,rust-either-1)
+ ("rust-fragile" ,rust-fragile-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gettext" ,rust-gettext-rs-0.4)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gspell" ,rust-gspell-0.4)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils" ,rust-gstreamer-pbutils-0.15)
+ ("rust-gstreamer-player" ,rust-gstreamer-player-0.15)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-html2pango" ,rust-html2pango-0.3)
+ ("rust-letter-avatar" ,rust-letter-avatar-for-fractal)
+ ("rust-libhandy" ,rust-libhandy-0.5)
+ ("rust-loggerv" ,rust-loggerv-0.7)
+ ("rust-md5" ,rust-md5-0.7)
+ ("rust-mdl" ,rust-mdl-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-reqwest" ,rust-reqwest-0.10)
+ ("rust-ruma-identifiers" ,rust-ruma-identifiers-0.17)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-secret-service" ,rust-secret-service-1)
+ ("rust-sourceview4" ,rust-sourceview4-for-fractal))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-cargo
+ (lambda* (#:key vendor-dir #:allow-other-keys)
+ (substitute* "fractal-gtk/Cargo.toml"
+ (("git = .*") "")
+ ;; rust-gettext-rs
+ (("branch = \"no-gettext\"") "version = \"0.4.0\"")
+ ;; rust-sourceview4
+ (("rev = \"fa8819fa7ecbe56f44d951656d3825f468915754\"")
+ "version = \"0.2.0\"")
+ ;; rust-either
+ (("rev = \"60c99bc0723491e2dfd42bbe9b485c5f9323e96b\"")
+ "version = \"1.6.0\"")
+ (("\"serde_untagged\"") "\"serde\""))
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ (substitute* "meson.build"
+ (("'Cargo.lock',") ""))
+ (substitute* "scripts/cargo.sh"
+ (("export CARGO_HOME=.*" all)
+ (string-append all "\
+mkdir -p $CARGO_HOME
+cp $1/.cargo/config $CARGO_HOME
+")))
+
+ #t))
+ (add-after 'unpack 'skip-gtk-update-icon-cache
+ (lambda _
+ (substitute* "scripts/meson_post_install.py"
+ (("gtk-update-icon-cache") (which "true")))
+ #t))
+ (add-after 'configure 'configure-harder
+ (lambda* (#:key vendor-dir inputs #:allow-other-keys)
+ (for-each
+ (lambda (d)
+ (copy-recursively
+ (string-append (assoc-ref inputs "rust-sourceview4") "/" d)
+ (string-append vendor-dir "/rust-" d "-0.2.0")))
+ '("sourceview4" "sourceview4-sys"))
+ (delete-file-recursively
+ (car (find-files vendor-dir "fractal.*" #:directories? #t)))
+ #t))
+ (add-after 'patch-cargo-checksums 'really-configure
+ (lambda args
+ (apply (assoc-ref meson:%standard-phases 'configure)
+ #:build-type "release"
+ #:configure-flags '()
+ args)))
+ (replace 'build (assoc-ref meson:%standard-phases 'build))
+ (replace 'check
+ (lambda args
+ ((assoc-ref meson:%standard-phases 'check)
+ #:test-target "test"
+ #:parallel-tests? #t
+ #:tests? #t)))
+ (replace 'install (assoc-ref meson:%standard-phases 'install)))))
+ (native-inputs
+ `(("glib:bin" ,glib "bin")
+ ("gettext" ,gettext-minimal)
+ ("meson" ,meson-for-build)
+ ("ninja" ,ninja)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,gspell)
+ ("gst-editing-services" ,gst-editing-services)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("libhandy" ,libhandy-0.0)
+ ("openssl" ,openssl)))
+ (synopsis "Matrix messaging app for GNOME")
+ (description "Fractal is a Matrix messaging app for GNOME written in Rust.
+Its interface is optimized for collaboration in large groups, such as free
+software projects.")
+ (home-page "https://wiki.gnome.org/Apps/Fractal")
+ (license license:gpl3)))
diff --git a/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
new file mode 100644
index 0000000000..6b830ecf94
--- /dev/null
+++ b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
@@ -0,0 +1,143 @@
+From e4ca9dc5c0f4401f350338e4cd9b0734db9371bf Mon Sep 17 00:00:00 2001
+From: Yuki Okushi <huyuumi.dev@gmail.com>
+Date: Thu, 13 Aug 2020 14:41:50 +0900
+Subject: [PATCH] Switch from failure to anyhow
+
+---
+ Cargo.lock | 8 +++++++-
+ fractal-gtk/Cargo.toml | 2 +-
+ fractal-gtk/src/appop/attach.rs | 2 +-
+ fractal-gtk/src/cache/mod.rs | 2 +-
+ fractal-gtk/src/cache/state.rs | 7 +++----
+ fractal-gtk/src/util.rs | 8 ++++----
+ 6 files changed, 17 insertions(+), 12 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index c0b5e5e2..f26d9787 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -88,6 +88,12 @@ dependencies = [
+ "winapi 0.3.9",
+ ]
+
++[[package]]
++name = "anyhow"
++version = "1.0.32"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6b602bfe940d21c130f3895acd65221e8a61270debe89d628b9cb4e3ccb8569b"
++
+ [[package]]
+ name = "arrayref"
+ version = "0.3.6"
+@@ -580,6 +586,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+ name = "fractal-gtk"
+ version = "4.4.0"
+ dependencies = [
++ "anyhow",
+ "cairo-rs",
+ "chrono",
+ "clap",
+@@ -587,7 +594,6 @@ dependencies = [
+ "directories",
+ "dirs",
+ "either 1.5.99",
+- "failure",
+ "fractal-matrix-api",
+ "fragile",
+ "gdk",
+diff --git a/fractal-gtk/Cargo.toml b/fractal-gtk/Cargo.toml
+index 960f64b5..e1c6a33d 100644
+--- a/fractal-gtk/Cargo.toml
++++ b/fractal-gtk/Cargo.toml
+@@ -6,11 +6,11 @@ workspace = "../"
+ edition = "2018"
+
+ [dependencies]
++anyhow = "1.0.32"
+ clap = "2.33.0"
+ comrak = "0.7.0"
+ directories = "2.0.2"
+ dirs = "2.0.2"
+-failure = "0.1.6"
+ fragile = "1.0.0"
+ gspell = "0.4.0"
+ gdk = "0.12.1"
+diff --git a/fractal-gtk/src/appop/attach.rs b/fractal-gtk/src/appop/attach.rs
+index 3f0813aa..3b5bff4c 100644
+--- a/fractal-gtk/src/appop/attach.rs
++++ b/fractal-gtk/src/appop/attach.rs
+@@ -6,7 +6,7 @@ use std::io::prelude::*;
+ use std::path::PathBuf;
+ use std::sync::{Arc, Mutex};
+
+-use failure::Error;
++use anyhow::Error;
+
+ use gtk::prelude::*;
+
+diff --git a/fractal-gtk/src/cache/mod.rs b/fractal-gtk/src/cache/mod.rs
+index 76942866..8943eac6 100644
+--- a/fractal-gtk/src/cache/mod.rs
++++ b/fractal-gtk/src/cache/mod.rs
+@@ -12,7 +12,7 @@ use std::thread;
+
+ use crate::types::Room;
+ use crate::types::RoomList;
+-use failure::Error;
++use anyhow::Error;
+ use fractal_api::identifiers::{DeviceId, UserId};
+ use std::collections::HashMap;
+ use std::hash::Hash;
+diff --git a/fractal-gtk/src/cache/state.rs b/fractal-gtk/src/cache/state.rs
+index 7cb5372a..0e62c59b 100644
+--- a/fractal-gtk/src/cache/state.rs
++++ b/fractal-gtk/src/cache/state.rs
+@@ -4,8 +4,7 @@ use mdl::Model;
+ use mdl::Store;
+ use serde::{Deserialize, Serialize};
+
+-use failure::err_msg;
+-use failure::Error;
++use anyhow::{anyhow, Error};
+
+ use std::cell::RefCell;
+ use std::fs::remove_dir_all;
+@@ -127,8 +126,8 @@ impl FCache {
+ guard.take();
+
+ let fname = cache_dir_path(None, "cache.mdl")
+- .or_else(|_| Err(err_msg("Can't remove cache file")))?;
+- remove_dir_all(fname).or_else(|_| Err(err_msg("Can't remove cache file")))
++ .or_else(|_| Err(anyhow!("Can't remove cache file")))?;
++ remove_dir_all(fname).or_else(|_| Err(anyhow!("Can't remove cache file")))
+ }
+
+ #[allow(dead_code)]
+diff --git a/fractal-gtk/src/util.rs b/fractal-gtk/src/util.rs
+index 764a8e8e..b2feb12c 100644
+--- a/fractal-gtk/src/util.rs
++++ b/fractal-gtk/src/util.rs
+@@ -1,6 +1,6 @@
+ use crate::globals::CACHE_PATH;
+-use failure::format_err;
+-use failure::Error as FailError;
++use anyhow::anyhow;
++use anyhow::Error as AnyhowError;
+ use gdk::prelude::*;
+ use gdk_pixbuf::Pixbuf;
+ use gio::{Settings, SettingsExt, SettingsSchemaSource};
+@@ -21,9 +21,9 @@ pub fn cache_dir_path(dir: Option<&str>, name: &str) -> Result<PathBuf, IoError>
+ Ok(path.join(name))
+ }
+
+-pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, FailError> {
++pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, AnyhowError> {
+ let image = cairo::ImageSurface::create(cairo::Format::ARgb32, pb.get_width(), pb.get_height())
+- .or_else(|_| Err(format_err!("Cairo Error")))?;
++ .or_else(|_| Err(anyhow!("Cairo Error")))?;
+
+ let g = cairo::Context::new(&image);
+ g.set_source_pixbuf(pb, 0.0, 0.0);
+--
+2.30.1
+
--
2.30.1
L
L
Leo Prikler wrote on 24 Feb 2021 14:13
Re: [bug#44492] [PATCH 01/52] gnu: Add rust-ruma-identifiers-validation-0.1.
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)(address . 44492@debbugs.gnu.org)
a3684298dfe6e3cf68e79a8bc8701f26716c3c49.camel@student.tugraz.at
Hello,

Am Mittwoch, den 24.02.2021, 12:46 +0100 schrieb Nicolas Goaziou:
Toggle quote (13 lines)
> Hello,
>
> Leo Prikler <leo.prikler@student.tugraz.at> writes:
>
> > * gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-
> > 0.1): New
> > variable.
>
> Thank you! I have a few general comments about the patch set.
>
> Nitpicks: some synopses end with a full stop, and most descriptions
> are
> not full sentences.
Indeed, for most of them I merely copied the output of `guix import
cargo`. I was hoping a reviewer could help me find better synopses and
descriptions, as well as cross-check licenses.

Toggle quote (3 lines)
> If you introduce a new version of an existing package, the old
> package
> should inherit from the new one.
I was afraid this would cause rebuilds for the existing package. Was
that fear unfounded?

Toggle quote (15 lines)
> More generally, I still think intermediate packages should use
> #:skip-build #t. Building them brings very little information, if
> any:
>
> - A crate failing to build, for various reasons, is still correct as
> an
> input to another crate
> - Even if all intermediate crates have "#:skip-build #t", building
> the
> top-level crate locates accurately any missing Cargo input in the
> dependency graph.
>
> Not using #:skip-build, OTOH, costs a lot of resources and time for
> the
> CI, for users and developers.
I personally disagree. The only reason a crate failing to build is a
"valid input" to another is because that other crate can decide to
completely disregard it, which sounds neither "reliable" nor
"efficient" for a programming language, that prides itself as both.

I will only skip builds for dead crates, i.e. crates I can reasonably
assume to only contain dead code due to their build failures. This
does not seem to cost much when building dependant packages, as I've
found that in order to actually build the crates I have to explicitly
invoke `guix build <crate>`.

Of course, there's still the problem of CI. Long-term, I think we
should find a way for this efficient programming language to reliably
produce reusable build artifacts. Short term, hitting non-leaf
packages, that have cargo-build-system anywhere with a priority of
negative infinity sounds like a better workaround. I want to be able
(as a developer) to explicitly build crates and determine where they
fail.

Toggle quote (3 lines)
> Of course, this last remark is not specific to your patch set. I wish
> we
> can converge towards common Rust packaging guidelines.
I believe we should not cowtow to Rust and Cargo, but instead force
them to adhere to our principles; principles of building applications
*and* libraries reproducibly without encoding hashes in a huge ass-lock
file.

Sorry for the off-topic rant. Dealing with Rust for five days straight
has been somewhat damaging to my mental health, and to be very clear,
that is Rust's fault and not the fault of cargo-build-system.

Regards,
Leo
N
N
Nicolas Goaziou wrote on 24 Feb 2021 16:41
(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)(address . 44492@debbugs.gnu.org)
87ft1lh4vh.fsf@nicolasgoaziou.fr
Leo Prikler <leo.prikler@student.tugraz.at> writes:

Toggle quote (3 lines)
> I was afraid this would cause rebuilds for the existing package. Was
> that fear unfounded?

I don't think it would change anything. It is what we usually do in
"crates-io.scm".

Toggle quote (5 lines)
> I personally disagree. The only reason a crate failing to build is a
> "valid input" to another is because that other crate can decide to
> completely disregard it, which sounds neither "reliable" nor
> "efficient" for a programming language, that prides itself as both.

Probably, but the problem at hand is not to fix how Rust builds its
crates, but rather optimize Rust packaging.

Toggle quote (6 lines)
> I will only skip builds for dead crates, i.e. crates I can reasonably
> assume to only contain dead code due to their build failures. This
> does not seem to cost much when building dependant packages, as I've
> found that in order to actually build the crates I have to explicitly
> invoke `guix build <crate>`.

There's much more work involved. You have to take care of development
inputs which increases drastically the number of crates to package.
Moreover, you need to try building each of them, which takes time. Not
skipping builds makes de facto some packages impossible to package.

Toggle quote (8 lines)
> Of course, there's still the problem of CI. Long-term, I think we
> should find a way for this efficient programming language to reliably
> produce reusable build artifacts. Short term, hitting non-leaf
> packages, that have cargo-build-system anywhere with a priority of
> negative infinity sounds like a better workaround. I want to be able
> (as a developer) to explicitly build crates and determine where they
> fail.

As a packager, you don't need to build the crate to fix any issue
arising at a higher level, as I pointed out already. If you're
developing the crate, that's another story. But then, you can quickly
write your own package definition.

I think the real questions about building intermediate crates, from
a packager point of view, are:
- does that make the packages reproducible?
- does that make the packages more secure?
- does that make the packages easier to define?

From my experience, the answer is "no" to any of these. This is a net
loss.

Toggle quote (5 lines)
> I believe we should not cowtow to Rust and Cargo, but instead force
> them to adhere to our principles; principles of building applications
> *and* libraries reproducibly without encoding hashes in a huge ass-lock
> file.

I don't think it is worth focusing of this. We currently do a good job
in Rust packaging, really. But it doesn't make much sense to have some
packages skipping builds and not some others.

What saddens me a bit is that individuals (including me, of course) are
currently doing as they see fit, but we haven't so far decided, as
a group, how to deal with the question uniformly. I hope we can converge
quickly.


Regards,
L
L
Leo Prikler wrote on 24 Feb 2021 20:19
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)(address . 44492@debbugs.gnu.org)
3d7c689d5d0278b715dc3c2dc39a708b14e392e1.camel@student.tugraz.at
Am Mittwoch, den 24.02.2021, 16:41 +0100 schrieb Nicolas Goaziou:
Toggle quote (9 lines)
> Leo Prikler <leo.prikler@student.tugraz.at> writes:
>
> > I was afraid this would cause rebuilds for the existing package.
> > Was
> > that fear unfounded?
>
> I don't think it would change anything. It is what we usually do in
> "crates-io.scm".

Fair enough, I'll do so when I get to it.

Toggle quote (9 lines)
> > I personally disagree. The only reason a crate failing to build is
> > a
> > "valid input" to another is because that other crate can decide to
> > completely disregard it, which sounds neither "reliable" nor
> > "efficient" for a programming language, that prides itself as both.
>
> Probably, but the problem at hand is not to fix how Rust builds its
> crates, but rather optimize Rust packaging.

I think those two issues are related, but that's a discussion for guix-
devel. So is the rest of this, but I might as well make my case here.

Toggle quote (15 lines)
> > I will only skip builds for dead crates, i.e. crates I can
> > reasonably
> > assume to only contain dead code due to their build failures. This
> > does not seem to cost much when building dependant packages, as
> > I've
> > found that in order to actually build the crates I have to
> > explicitly
> > invoke `guix build <crate>`.
>
> There's much more work involved. You have to take care of development
> inputs which increases drastically the number of crates to package.
> Moreover, you need to try building each of them, which takes time.
> Not
> skipping builds makes de facto some packages impossible to package.

We could work developer inputs into the recursive importer, that should
not be an issue.

Honestly, it is a greater waste of time to recompile every dependency,
have the build fail, change some minor thing in the package and
recompile everything again. Yes, `guix build -K` helps to an extent,
but it doesn't help if I made a typo in my build phase and got a guile
backtrace.

If cargo inputs worked like normal inputs, they'd be built reliably
once and no time would be wasted rebuilding them over and over in any
packages using them.

Toggle quote (16 lines)
> > Of course, there's still the problem of CI. Long-term, I think we
> > should find a way for this efficient programming language to
> > reliably
> > produce reusable build artifacts. Short term, hitting non-leaf
> > packages, that have cargo-build-system anywhere with a priority of
> > negative infinity sounds like a better workaround. I want to be
> > able
> > (as a developer) to explicitly build crates and determine where
> > they
> > fail.
>
> As a packager, you don't need to build the crate to fix any issue
> arising at a higher level, as I pointed out already. If you're
> developing the crate, that's another story. But then, you can quickly
> write your own package definition.

Maybe there'd be an argument if we had --no-skip-build, but I think
we're working our way backwards here; trying work around a workaround.

Toggle quote (8 lines)
> I think the real questions about building intermediate crates, from
> a packager point of view, are:
> - does that make the packages reproducible?
> - does that make the packages more secure?
> - does that make the packages easier to define?
>
> From my experience, the answer is "no" to any of these. This is a net
> loss.
I don't think there is any influence on the ease of definition, since
either one would be handled by the recursive importer. The difficulty
for packagers currently would be to manually undo the automatic build
skipping done through the importer.

As for reproducibility/security, there is yet little to gain, because
the leaf crate can simply ignore its inputs and do whatever, but if we
built the crates ahead of time, and disallowed the automatic building
of dependencies, we would get efficient *and* reproducible Rust
packages.

Another thing that bugs me as a packager is that cargo inputs don't
work for `guix refresh`, so I can't even be sure whether to put my
patch to master or core-updates.

Toggle quote (12 lines)
> > I believe we should not cowtow to Rust and Cargo, but instead force
> > them to adhere to our principles; principles of building
> > applications
> > *and* libraries reproducibly without encoding hashes in a huge ass-
> > lock
> > file.
>
> I don't think it is worth focusing of this. We currently do a good
> job
> in Rust packaging, really. But it doesn't make much sense to have
> some
> packages skipping builds and not some others.
If skipping only some builds is not an option, you are either left with
skipping all builds or skipping none, one of which is certainly silly.

Toggle quote (6 lines)
> What saddens me a bit is that individuals (including me, of course)
> are
> currently doing as they see fit, but we haven't so far decided, as
> a group, how to deal with the question uniformly. I hope we can
> converge
> quickly.
I personally hope that some of the issues resulting from this "wild
west" approach to packaging will be alleviated by #46399. Having
crates as regular inputs also increases the value of #:skip-build? #f.

Regards,
Leo
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 01/52] gnu: Add rust-ruma-identifiers-validation-0.1.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-0.1): New
variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ac38d1180d..c414e05685 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32655,6 +32655,30 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-validation-0.1
+ (package
+ (name "rust-ruma-identifiers-validation")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-validation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nv0zqsq5lhybckvfr5wmcp8pipqfs2hjgn9kvn9w33xacfzs4n1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Validation logic for RUMA")
+ (description "This package provides the validation logic needed by other
+rust-ruma packages.")
+ (license license:expat)))
+
(define-public rust-runtime-0.3
(package
(name "rust-runtime")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 00/52] gnu: Add fractal.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-1-leo.prikler@student.tugraz.at
I'll send the revised patches in batches of size 10, so as to not cause too many
trouble to mailservers around the world.

Leo Prikler (52):
gnu: Add rust-ruma-identifiers-validation-0.1.
gnu: Add rust-ruma-identifiers-macros-0.17.
gnu: Add rust-ruma-identifiers-0.17.
gnu: Add rust-entities-1.
gnu: Add rust-twoway-0.2.
gnu: Add rust-unicode-categories-0.1.
gnu: Add rust-comrak-0.7.
gnu: Add rust-fragile-1.
gnu: rust-either-1: Update to 1.6.1.
gnu: Add rust-gspell-sys-0.4.
gnu: Add rust-gspell-0.4.
gnu: Add rust-muldiv-0.2.
gnu: Add rust-gstreamer-sys-0.8.
gnu: Add rust-gstreamer-0.15.
gnu: Add rust-gstreamer-base-sys-0.8.
gnu: Add rust-gstreamer-video-sys-0.8.
gnu: Add rust-gstreamer-player-sys-0.8.
gnu: Add rust-gstreamer-base-0.15.
gnu: Add rust-gstreamer-video-0.15.
gnu: Add rust-gstreamer-player-0.15.
gnu: Add rust-gstreamer-audio-sys-0.8.
gnu: Add rust-gstreamer-pbutils-sys-0.8.
gnu: Add rust-gstreamer-pbutils-0.15.
gnu: Add rust-markup5ever-rcdom-0.1.
gnu: Add rust-ammonia-3.
gnu: Add rust-html2pango-0.3.
gnu: Add rust-pangocairo-sys-0.11.
gnu: Add rust-pangocairo-0.10.
gnu: Add rust-letter-avatar-1.
gnu: Add rust-libhandy-sys-0.5.
gnu: Add rust-libhandy-0.5.
gnu: Add rust-loggerv-0.7.
gnu: Add rust-lmdb-sys-0.8.
gnu: Add rust-lmdb-0.8.
gnu: Add rust-mdl-1.
gnu: Add rust-aes-soft-0.6.
gnu: Add rust-aesni-0.10.
gnu: Add rust-aes-0.6.
gnu: Add rust-block-modes-0.7.
gnu: Add rust-hmac-0.10.
gnu: Add rust-hkdf-0.10.
gnu: Add rust-dbus-0.2.
gnu: Add rust-secret-service-1.
gnu: Add rust-atk-sys-0.10.
gnu: Add rust-atk-0.9.
gnu: Add rust-gtk-sys-0.10.
gnu: Add rust-gtk-0.9.
gnu: Add rust-sourceview4-sys-0.2.
gnu: Add rust-sourceview4-0.2.
gnu: Add rust-sourceview4-for-fractal.
gnu: Add rust-letter-avatar-for-fractal.
gnu: Add fractal.

gnu/local.mk | 2 +
gnu/packages/crates-gtk.scm | 1527 +++++++++++++++--
gnu/packages/crates-io.scm | 613 ++++++-
gnu/packages/gnome.scm | 142 +-
...ractal-switch-from-failure-to-anyhow.patch | 143 ++
.../rust-comrak-0.7-rustsec-2021-0026.patch | 41 +
6 files changed, 2318 insertions(+), 150 deletions(-)
create mode 100644 gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
create mode 100644 gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch

--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 02/52] gnu: Add rust-ruma-identifiers-macros-0.17.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-macros-0.17): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c414e05685..640a90b01b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32655,6 +32655,33 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-macros-0.17
+ (package
+ (name "rust-ruma-identifiers-macros")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-macros" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "03p3qp12h4aajixcyk44q2bcid6fa4nmipysvcpy4w5cbak7wvwq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Create Matrix identifiers")
+ (description "This package provides procedural macros for creating Matrix
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-validation-0.1
(package
(name "rust-ruma-identifiers-validation")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 03/52] gnu: Add rust-ruma-identifiers-0.17.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-0.17): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 640a90b01b..dd6cac96b6 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32655,6 +32655,40 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-0.17
+ (package
+ (name "rust-ruma-identifiers")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vjxws5yw1c8lmwc5p036319vwwna1sxb7pkl6lw1pl8rwp0j5sr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-either" ,rust-either-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-ruma-identifiers-macros"
+ ,rust-ruma-identifiers-macros-0.17)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))
+ #:cargo-development-inputs
+ (("rust-matches" ,rust-matches-0.1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Rust types for Matrix resource identifiers")
+ (description "This package provides Rust type bindings for Matrix resource
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-macros-0.17
(package
(name "rust-ruma-identifiers-macros")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 04/52] gnu: Add rust-entities-1.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-entities-1): New variable.
---
gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index dd6cac96b6..8f38e22880 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12622,6 +12622,27 @@ Standard.")
"Streaming transcoding for encoding_rs.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-entities-1
+ (package
+ (name "rust-entities")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "entities" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnpr0zvj97wm9pnh7fnl74rzaar39hhg65p03cm08bqqgj0lcmm"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page "https://github.com/p-jackson/entities")
+ (synopsis "Raw data for converting HTML entities")
+ (description "This package provides the raw data needed to convert to and
+from HTML entities.")
+ (license license:expat)))
+
(define-public rust-enum-as-inner-0.3
(package
(name "rust-enum-as-inner")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 05/52] gnu: Add rust-twoway-0.2.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-6-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-twoway-0.2): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8f38e22880..74f61f402b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -44854,8 +44854,38 @@ design abstracts away all the internals of the WebSocket protocol but still
makes them accessible for those who wants full control over the network.")
(license (list license:expat license:asl2.0))))
+(define-public rust-twoway-0.2
+ (package
+ (name "rust-twoway")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "twoway" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g55kf4rx0q682fvzxdixqihmlbamn5ms2yqvcm92fny21chfh3b"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
+ ("rust-jetscii" ,rust-jetscii-0.3)
+ ("rust-memchr" ,rust-memchr-2)
+ ("rust-unchecked-index"
+ ,rust-unchecked-index-0.2))))
+ (home-page "https://github.com/bluss/twoway")
+ (synopsis "Fast substring search for strings and byte strings")
+ (description
+ "This package provides a fast substring search for strings and byte
+strings.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-twoway-0.1
(package
+ (inherit rust-twoway-0.2)
(name "rust-twoway")
(version "0.1.8")
(source
@@ -44865,20 +44895,13 @@ makes them accessible for those who wants full control over the network.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
("rust-jetscii" ,rust-jetscii-0.3)
("rust-memchr" ,rust-memchr-2)
- ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
- (home-page "https://github.com/bluss/twoway")
- (synopsis "Fast substring search for strings and byte strings")
- (description
- "This package provides a fast substring search for strings and byte
-strings.")
- (license (list license:expat license:asl2.0))))
+ ("rust-unchecked-index" ,rust-unchecked-index-0.2))))))
(define-public rust-typeable-0.1
(package
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 06/52] gnu: Add rust-unicode-categories-0.1.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-unicode-categories-0.1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 74f61f402b..e40862aa70 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -45445,6 +45445,26 @@ Unicode and Internationalization Crates (UNIC) project.")
"Implementation of the Unicode Bidirectional Algorithm.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-unicode-categories-0.1
+ (package
+ (name "rust-unicode-categories")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "unicode_categories" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0kp1d7fryxxm7hqywbk88yb9d1avsam9sg76xh36k5qx2arj9v1r"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/swgillespie/unicode-categories")
+ (synopsis "Query Unicode category membership")
+ (description "This package provides functions to query whether or not
+a character is a member of a certain category of unicode characters.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-unicode-normalization-0.1
(package
(name "rust-unicode-normalization")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 07/52] gnu: Add rust-comrak-0.7.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-8-leo.prikler@student.tugraz.at
* gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/crates-io.scm (rust-comrak-0.7): New variable.
---
gnu/local.mk | 1 +
gnu/packages/crates-io.scm | 44 +++++++++++++++++++
.../rust-comrak-0.7-rustsec-2021-0026.patch | 41 +++++++++++++++++
3 files changed, 86 insertions(+)
create mode 100644 gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch

Toggle diff (116 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 83753e6b4e..4f6b85c69c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1604,6 +1604,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-1.45-linker-locale.patch \
%D%/packages/patches/rust-1.48-linker-locale.patch \
%D%/packages/patches/rust-bootstrap-stage0-test.patch \
+ %D%/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch \
%D%/packages/patches/rust-coresimd-doctest.patch \
%D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \
%D%/packages/patches/rust-nettle-disable-vendor.patch \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e40862aa70..2c39c8249e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -7601,6 +7601,50 @@ harness.")
("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-comrak-0.7
+ (package
+ (name "rust-comrak")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "comrak" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07026j0ghwgv5z61fc4l893wwc30krxpsy487rb91wkcag65hw71"))
+ (patches
+ (search-patches
+ "rust-comrak-0.7-rustsec-2021-0026.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "src/tests.rs"
+ (("data:(png|jpeg|gif|webp)" all what)
+ (string-append "data:image/" what)))
+ #t))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-entities" ,rust-entities-1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-twoway" ,rust-twoway-0.2)
+ ("rust-typed-arena" ,rust-typed-arena-1)
+ ("rust-unicode-categories"
+ ,rust-unicode-categories-0.1))
+ #:cargo-development-inputs
+ (("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/kivikakk/comrak")
+ (synopsis "Markdown parser and formatter")
+ (description "This package provides a parser and formatter for Github
+Flavored Markdown, that is compatible with CommonMark.")
+ (license license:bsd-2)))
+
(define-public rust-concurrent-queue-1
(package
(name "rust-concurrent-queue")
diff --git a/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
new file mode 100644
index 0000000000..9a74b7b971
--- /dev/null
+++ b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
@@ -0,0 +1,41 @@
+From 285e9647c6d2f90d8cb7af543b14c986a8efa631 Mon Sep 17 00:00:00 2001
+From: Asherah Connor <ashe@kivikakk.ee>
+Date: Fri, 12 Feb 2021 21:15:29 +1100
+Subject: [PATCH] SECURITY: match unsafe prefixes case-insensitively
+
+Many thanks to Kouhei Morita for reporting this.
+
+Co-authored-by: Kouhei Morita <mrtc0@ssrf.in>
+---
+ src/lexer.pest | 2 +-
+ src/tests.rs | 146 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 147 insertions(+), 1 deletion(-)
+
+diff --git a/src/lexer.pest b/src/lexer.pest
+index e97647c..7f6cd3f 100644
+--- a/src/lexer.pest
++++ b/src/lexer.pest
+@@ -55,4 +55,4 @@ table_start = { "|"? ~ table_marker ~ ("|" ~ table_marker)* ~ "|"? ~ table_space
+ table_cell_end = { "|" ~ table_spacechar* ~ table_newline? }
+ table_row_end = { table_spacechar* ~ table_newline }
+
+-dangerous_url = { "data:" ~ !("png" | "gif" | "jpeg" | "webp") | "javascript:" | "vbscript:" | "file:" }
++dangerous_url = { ^"data:" ~ !(^"image/" ~ (^"png" | ^"gif" | ^"jpeg" | ^"webp")) | ^"javascript:" | ^"vbscript:" | ^"file:" }
+diff --git a/src/tests.rs b/src/tests.rs
+index c61a493..5f3e0cc 100644
+--- a/src/tests.rs
++++ b/src/tests.rs
+@@ -998,3 +998,11 @@ fn description_lists() {
+ ),
+ );
+ }
++
++#[test]
++fn case_insensitive_safety() {
++ html(
++ "[a](javascript:a) [b](Javascript:b) [c](jaVascript:c) [d](data:xyz) [e](Data:xyz) [f](vbscripT:f) [g](FILE:g)\n",
++ "<p><a href=\"\">a</a> <a href=\"\">b</a> <a href=\"\">c</a> <a href=\"\">d</a> <a href=\"\">e</a> <a href=\"\">f</a> <a href=\"\">g</a></p>\n",
++ );
++}
+--
+2.30.1
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 08/52] gnu: Add rust-fragile-1.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-fragile-1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2c39c8249e..a48e64bc14 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14308,6 +14308,26 @@ implementation that is more efficient for smaller hash keys.")
syntax, as used by HTML forms.")
(license (list license:expat license:asl2.0))))
+(define-public rust-fragile-1
+ (package
+ (name "rust-fragile")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fragile" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wlihmkjyhvl5rckal32p010piy1l15s6l81h7z31jcd971kk839"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/mitsuhiko/rust-fragile")
+ (synopsis "Wrapper types for sending non-send values to other threads")
+ (description "This package provides wrapper types for sending non-send
+values to other threads.")
+ (license license:asl2.0)))
+
(define-public rust-fragile-0.3
(package
(name "rust-fragile")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 19:46
[PATCH v2 09/52] gnu: rust-either-1: Update to 1.6.1.
(address . 44492@debbugs.gnu.org)
20210228184655.5159-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-either-1): Update to 1.6.1.
---
gnu/packages/crates-io.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a48e64bc14..beb9234b47 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12320,7 +12320,7 @@ signing, and verification in pure Rust.")
(define-public rust-either-1
(package
(name "rust-either")
- (version "1.5.3")
+ (version "1.6.1")
(source
(origin
(method url-fetch)
@@ -12329,7 +12329,7 @@ signing, and verification in pure Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1qyz1b1acad6w0k5928jw5zaq900zhsk7p8dlcp4hh61w4f6n7xv"))))
+ "0mwl9vngqf5jvrhmhn9x60kr5hivxyjxbmby2pybncxfqhf4z3g7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 10/52] gnu: Add rust-gspell-sys-0.4.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 48 ++++++++++++++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index ebe2a4e45b..4f61d52649 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -26,7 +26,8 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
- #:use-module (gnu packages gtk))
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages pkg-config))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -887,6 +888,51 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-gspell-sys-0.4
+ (package
+ (name "rust-gspell-sys")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Raw C-FFI bindings for gspell")
+ (description "This package provides raw C-FFI bindings for the gspell library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 11/52] gnu: Add rust-gspell-0.4.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 66 ++++++++++++++++++++++++++++++++++++-
1 file changed, 65 insertions(+), 1 deletion(-)

Toggle diff (90 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 4f61d52649..e65bd4e46b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -23,11 +23,13 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
+ #:use-module (gnu packages aspell)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
- #:use-module (gnu packages pkg-config))
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -933,6 +935,68 @@
(description "This package provides raw C-FFI bindings for the gspell library.")
(license license:gpl3+)))
+(define-public rust-gspell-0.4
+ (package
+ (name "rust-gspell")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10wi6p6dhdqypfqlih18mrl7vgni7y64mrhdh5ymayp4d07djshk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gspell-sys" ,rust-gspell-sys-0.4)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+
+ ;; Allow Enchant and its Aspell backend to find the en_US
+ ;; dictionary.
+ (setenv "ASPELL_DICT_DIR"
+ (string-append (assoc-ref inputs "aspell-dict-en")
+ "/lib/aspell"))
+ #t)))))
+ (native-inputs
+ `(("aspell-dict-en" ,aspell-dict-en)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Rust bindings for gspell")
+ (description "This package provides Rust bindings for the gspell spell
+checking library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 12/52] gnu: Add rust-muldiv-0.2.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-muldiv-0.2): New variable.
---
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 beb9234b47..162251457f 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23435,6 +23435,29 @@ checking.")
"Chaining APIs for both self -> Self and &mut self methods.")
(license license:expat)))
+(define-public rust-muldiv-0.2
+ (package
+ (name "rust-muldiv")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "muldiv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "014jlry2l2ph56mp8knw65637hh49q7fmrraim2bx9vz0a638684"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.9))))
+ (home-page "https://github.com/sdroege/rust-muldiv")
+ (synopsis "Perform combined multiplication and division")
+ (description "This package provides a trait for numeric types to perform
+combined multiplication and division with overflow protection.")
+ (license license:expat)))
+
(define-public rust-multi-default-trait-impl-0.1
(package
(name "rust-multi-default-trait-impl")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 13/52] gnu: Add rust-gstreamer-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index e65bd4e46b..9f80896db9 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -27,6 +27,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg))
@@ -997,6 +998,46 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-sys-0.8
+ (package
+ (name "rust-gstreamer-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nsk802vlcyi9p93sg60wv8fzb2mq7j52lfdda4va2kxp40xl60x"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to GStreamer")
+ (description "This package provides FFI bindings to libgstreamer-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 14/52] gnu: Add rust-gstreamer-0.15.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 50 +++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9f80896db9..b8ccc3238e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -998,6 +998,56 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-0.15
+ (package
+ (name "rust-gstreamer")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qx1fhr9ajms0128ixmi2ncr35llwppdb0z7ximw2vnd2jhn91nf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-muldiv" ,rust-muldiv-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-bytes" ,rust-serde-bytes-0.11)
+ ("rust-serde-derive" ,rust-serde-derive-1))
+ #:cargo-development-inputs
+ (("rust-futures-executor"
+ ,rust-futures-executor-0.3)
+ ("rust-ron" ,rust-ron-0.5)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer")
+ (description "This package provides Rust bindings for GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 15/52] gnu: Add rust-gstreamer-base-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-6-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index b8ccc3238e..3cea5d80da 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,47 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-sys-0.8
+ (package
+ (name "rust-gstreamer-base-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v9v09jqjrwz87c4r7za3yb6g7had112d8zwjdjmhg2b2x94yf5s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to glibgstbase-1.0")
+ (description "This package provides FFI bindings to libgstbase-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 16/52] gnu: Add rust-gstreamer-video-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 3cea5d80da..7541377e15 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1129,6 +1129,50 @@ checking library.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-sys-0.8
+ (package
+ (name "rust-gstreamer-video-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k5prjimlrm5c68vk6wq1l9y440p5vskrq862rcb9x22z2c44pv1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: ABI mismatch
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstvideo-1.0")
+ (description "This package provides FFI bindings to libgstvideo-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 17/52] gnu: Add rust-gstreamer-player-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7541377e15..7d8378847a 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1089,6 +1089,50 @@ checking library.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-sys-0.8
+ (package
+ (name "rust-gstreamer-player-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g21c7yk1855k5qdyn0hcwa6v1dy9admipy8s7544d7d19rqmhww"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstplayer-1.0")
+ (description "This package provides FFI bindings to libgstplayer-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 18/52] gnu: Add rust-gstreamer-base-0.15.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7d8378847a..463862567d 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,43 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-0.15
+ (package
+ (name "rust-gstreamer-base")
+ (version "0.15.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04hwa85j3w959i025il908bvsx6dyiawkmc0w45hn9kcrisjyma2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Base")
+ (description "This package provides Rust bindings for the base library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-base-sys-0.8
(package
(name "rust-gstreamer-base-sys")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 20:33
[PATCH v2 19/52] gnu: Add rust-gstreamer-video-0.15.
(address . 44492@debbugs.gnu.org)
20210228193334.6427-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 463862567d..50f8725fbb 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1210,6 +1210,50 @@ GStreamer.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-0.15
+ (package
+ (name "rust-gstreamer-video")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jaday8gsmhixv5k78wxcsricmvqfsip486750ad8ih2jjdfdmqa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base" ,rust-gstreamer-base-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer video")
+ (description "This package provides Rust bindings for the video library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-video-sys-0.8
(package
(name "rust-gstreamer-video-sys")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 20/52] gnu: Add rust-gstreamer-player-0.15.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 50f8725fbb..6b1e7b0715 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1126,6 +1126,46 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-0.15
+ (package
+ (name "rust-gstreamer-player")
+ (version "0.15.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167nv3s6pwr746gjm2i0vd6ygfmbp80hi4wm46lly3jgciy4kcq4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-player-sys"
+ ,rust-gstreamer-player-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video"
+ ,rust-gstreamer-video-0.15)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad))) ; for -lgstplayer-1.0
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer player")
+ (description "This package provides Rust bindings for the player library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-player-sys-0.8
(package
(name "rust-gstreamer-player-sys")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 21/52] gnu: Add rust-gstreamer-audio-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-audio-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 6b1e7b0715..9f127b3893 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,51 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-audio-sys-0.8
+ (package
+ (name "rust-gstreamer-audio-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-audio-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rxw1s57yrw1zsbindaf2sj05df4qh17bshadqfw77y4xr9izjdv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build?
+ #t
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstaudio-1.0")
+ (description "This package provides FFI bindings to libgstaudio-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-base-0.15
(package
(name "rust-gstreamer-base")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 22/52] gnu: Add rust-gstreamer-pbutils-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9f127b3893..3469e4e697 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,51 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-sys-0.8
+ (package
+ (name "rust-gstreamer-pbutils-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1s4dgmq9ai1jz5w5vllji8087khw7hja97hii4lgl29figkakdsf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-audio-sys"
+ ,rust-gstreamer-audio-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstpbutils-1.0")
+ (description "This package provides FFI bindings to libgstpbutils-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-player-0.15
(package
(name "rust-gstreamer-player")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 23/52] gnu: Add rust-gstreamer-pbutils-0.15.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 3469e4e697..c65b2aea12 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,43 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-0.15
+ (package
+ (name "rust-gstreamer-pbutils")
+ (version "0.15.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q8hv8i41mwhr84ydwlv7qspf49s5i7pz3lnjwl0l9gyp2anq97d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils-sys"
+ ,rust-gstreamer-pbutils-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer base utils")
+ (description "This package provides Rust bindings for the pb_utils library
+of GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-pbutils-sys-0.8
(package
(name "rust-gstreamer-pbutils-sys")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 24/52] gnu: Add rust-markup5ever-rcdom-0.1.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-markup5ever-rcdom-0.1): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 162251457f..b741e6c7c1 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22184,6 +22184,35 @@ platform-independently.")
(base32
"08ayl9aqjnmf7ly1ipy6dk3wjvyfn4w51l40jzh1fh984ykldbzi"))))))
+(define-public rust-markup5ever-rcdom-0.1
+ (package
+ (name "rust-markup5ever-rcdom")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "markup5ever_rcdom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0axf6vrms8579lvhbjaj0v7bhs8xb7s26d4sam2g3m6qpi1xl5gh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test files not included in release.
+ #:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-markup5ever" ,rust-markup5ever-0.10)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-xml5ever" ,rust-xml5ever-0.16))
+ #:cargo-development-inputs
+ (("rust-rustc-test" ,rust-rustc-test-0.3))))
+ (home-page "https://github.com/servo/html5ever")
+ (synopsis "html5ever test DOM structure")
+ (description "This package provides a basic DOM structure for use by tests
+in html5ever/xml5ever. It is not supposed to be used in user-facing code.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-match-cfg-0.1
(package
(name "rust-match-cfg")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 25/52] gnu: Add rust-ammonia-3.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-6-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ammonia-3): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index b741e6c7c1..78f6a2d8d8 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1700,6 +1700,40 @@ options to use calloc or a mutable global variable for pre-zeroed memory.")
be used with the stdlib.")
(license license:bsd-3)))
+(define-public rust-ammonia-3
+ (package
+ (name "rust-ammonia")
+ (version "3.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ammonia" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fzaj1fx3yhz2qd47gfvz7n8xjrnn37w2hp4qlyzpczlf18wisl9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-matches" ,rust-matches-0.1)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-version-sync" ,rust-version-sync-0.8))))
+ (home-page "https://github.com/rust-ammonia/ammonia")
+ (synopsis "HTML Sanitization")
+ (description "Ammonia is a whitelist-based HTML sanitization library.
+It is designed to prevent cross-site scripting, layout breaking, and
+clickjacking caused by untrusted user-provided HTML being mixed into a larger
+web page.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-android-glue-0.2
(package
(name "rust-android-glue")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 26/52] gnu: Add rust-html2pango-0.3.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-html2pango-0.3): New variable.
---
gnu/packages/crates-gtk.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index c65b2aea12..b7eb62b0d3 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1569,6 +1569,40 @@ GStreamer.")
(description "This package provides FFI bindings to libgtk-3.")
(license license:expat)))
+(define-public rust-html2pango-0.3
+ (package
+ (name "rust-html2pango")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "html2pango" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0f0phim3bgmq0gcsvm9q8674190d5v5idlsqyxykxjf36d02i6s6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ammonia" ,rust-ammonia-3)
+ ("rust-anyhow" ,rust-anyhow-1)
+ ("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-linkify" ,rust-linkify-0.4)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-regex" ,rust-regex-1))
+ #:cargo-development-inputs
+ (("rust-pretty-assertions"
+ ,rust-pretty-assertions-0.6))))
+ (home-page "https://gitlab.gnome.org/World/html2pango")
+ (synopsis "Convert HTML to pango.")
+ (description "html2pango converts html tags to Pango markup. It also
+converts raw links to http links and strips unwanted tags.")
+ (license license:gpl3)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 27/52] gnu: Add rust-pangocairo-sys-0.11.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-sys-0.11): New variable.
---
gnu/packages/crates-gtk.scm | 53 ++++++++++++++++++++++++++++++++-----
1 file changed, 47 insertions(+), 6 deletions(-)

Toggle diff (79 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index b7eb62b0d3..42bfadb54b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1805,8 +1805,54 @@ converts raw links to http links and strips unwanted tags.")
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+(define-public rust-pangocairo-sys-0.11
+ (package
+ (name "rust-pangocairo-sys")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167b1z6ns3lw1dqfq3mnhmknf7isi5vacp2fp0rh4bwcd5zwkk4l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to pangocairo")
+ (description "This package provides FFI bindings to pangocairo.")
+ (license license:expat)))
+
(define-public rust-pangocairo-sys-0.10
(package
+ (inherit rust-pangocairo-sys-0.11)
(name "rust-pangocairo-sys")
(version "0.10.1")
(source
@@ -1818,7 +1864,6 @@ converts raw links to http links and strips unwanted tags.")
(sha256
(base32
"1zlyf5vajarnxg5034b8qa5w5zajv96lfvlgiki26svpmcqip4m3"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
@@ -1830,8 +1875,4 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))
(inputs
- `(("gtk+" ,gtk+)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libgtk-3")
- (description "This package provides FFI bindings to libgtk-3.")
- (license license:expat)))
+ `(("gtk+" ,gtk+)))))
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 28/52] gnu: Add rust-pangocairo-0.10.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 61 ++++++++++++++++++++++++++++++++-----
1 file changed, 54 insertions(+), 7 deletions(-)

Toggle diff (90 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 42bfadb54b..d187b098c7 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1738,8 +1738,61 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-pangocairo-0.10
+ (package
+ (name "rust-pangocairo")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10z8hlc82984nwvy5pnyh95ls9s5r1qrlkpn14zh4pjsl1ksxx80"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.11))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the PangoCairo library")
+ (description
+ "Rust bindings for the PangoCairo library.")
+ (license license:expat)))
+
(define-public rust-pangocairo-0.9
(package
+ (inherit rust-pangocairo-0.10)
(name "rust-pangocairo")
(version "0.9.0")
(source
@@ -1751,7 +1804,6 @@ converts raw links to http links and strips unwanted tags.")
(sha256
(base32
"0bap3h78hdqdyln58349qjjbcv45m8a0a16c4n9fprdj1my0gldx"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
@@ -1768,12 +1820,7 @@ converts raw links to http links and strips unwanted tags.")
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))
(inputs
- `(("gtk+" ,gtk+)))
- (home-page "http://gtk-rs.org/")
- (synopsis "Rust bindings for the PangoCairo library")
- (description
- "Rust bindings for the PangoCairo library.")
- (license license:expat)))
+ `(("gtk+" ,gtk+)))))
(define-public rust-pangocairo-0.8
(package
--
2.30.1
L
L
Leo Prikler wrote on 28 Feb 2021 23:37
[PATCH v2 29/52] gnu: Add rust-letter-avatar-1.
(address . 44492@debbugs.gnu.org)
20210228223749.12444-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-1): New variable.
---
gnu/packages/crates-gtk.scm | 43 +++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)

Toggle diff (56 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index d187b098c7..c847535ec2 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1603,6 +1603,49 @@ GStreamer.")
converts raw links to http links and strips unwanted tags.")
(license license:gpl3)))
+(define-public rust-letter-avatar-1
+ (package
+ (name "rust-letter-avatar")
+ (version "1.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0if2mihpxn4xissv68qciqn5vywy0kl0sx9hcyrhd70s2fyn09k6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pangocairo" ,rust-pangocairo-0.10)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/jsparber/letter-avatar")
+ (synopsis "Generate user avatars")
+ (description "This package provides a user avatar generator based, that
+renders username initials.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 30/52] gnu: Add rust-libhandy-sys-0.5.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-sys-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index c847535ec2..d43669c9da 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1646,6 +1646,50 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-libhandy-sys-0.5
+ (package
+ (name "rust-libhandy-sys")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ih4ws1d9n4qp4rwgsfilklgchqq3prnrb7h3avik1wi5s2ay1yp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "FFI bindings for libhandy")
+ (description "This package provides raw FFI bindings to libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 31/52] gnu: Add rust-libhandy-0.5.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index d43669c9da..69277fd208 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1690,6 +1690,60 @@ renders username initials.")
(description "This package provides raw FFI bindings to libhandy.")
(license license:gpl3+)))
+(define-public rust-libhandy-0.5
+ (package
+ (name "rust-libhandy")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "01zska4i6641pj8d9gcc2kclx5vvsbbyfpv4rn5kahs11rigba9a"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-libhandy-sys" ,rust-libhandy-sys-0.5)
+ ("rust-pango" ,rust-pango-0.8))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "Rust bindings for libhandy")
+ (description "This package provides Rust bindings for libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 33/52] gnu: Add rust-lmdb-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-sys-0.8): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f806afa5a7..78b4c0b903 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21446,6 +21446,30 @@ punctuation.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-lmdb-sys-0.8
+ (package
+ (name "rust-lmdb-sys")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1scc28phjcywr9jq78d01g35rig8l2bwydxcdzl5i27yij1r5cym"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cc" ,rust-cc-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "Rust bindings for liblmdb")
+ (description "This package provides Rust bindings for liblmdb.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 34/52] gnu: Add rust-lmdb-0.8.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-0.8): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 78b4c0b903..144e8ad3b7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21470,6 +21470,35 @@ punctuation.")
(description "This package provides Rust bindings for liblmdb.")
(license license:asl2.0)))
+(define-public rust-lmdb-0.8
+ (package
+ (name "rust-lmdb")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fc54in9i27v1gpxncay5s85lqx27m0r2vyrfylnljfnnpphh2av"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; use of unstable feature
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-lmdb-sys" ,rust-lmdb-sys-0.8))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-rand" ,rust-rand-0.8)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "LMDB wrapper")
+ (description "This package provides an idiomatic Rust wrapper for LMDB.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 32/52] gnu: Add rust-loggerv-0.7.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-loggerv-0.7): New variable.
---
gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 78f6a2d8d8..f806afa5a7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21699,6 +21699,41 @@ by inspecting the system for user preference.")
`(#:cargo-inputs
(("rust-log" ,rust-log-0.4))))))
+(define-public rust-loggerv-0.7
+ (package
+ (name "rust-loggerv")
+ (version "0.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "loggerv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0x6k903wpm557fkcbr5isgh4yqkkbzw4fm7hwyy61rvimqaxxn30"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ansi-term" ,rust-ansi-term-0.12)
+ ("rust-atty" ,rust-atty-0.2)
+ ("rust-log" ,rust-log-0.4))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "src/lib.rs"
+ (("assert_eq!\\(logger\\.colors, DEFAULT_COLORS\\);" all)
+ (string-append "// " all)))
+ #t)))))
+ (home-page "https://github.com/clux/loggerv")
+ (synopsis "Logger with colors")
+ (description "This package provides a simple log implementation that logs
+to stdout and stderr with colors.")
+ (license license:expat)))
+
(define-public rust-logtest-2
(package
(name "rust-logtest")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 35/52] gnu: Add rust-mdl-1.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-6-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-mdl-1): New variable.
---
gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 144e8ad3b7..9c57cb9728 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22593,6 +22593,34 @@ compression function.")
(supported-systems '("x86_64-linux" "i686-linux"))
(license license:expat)))
+(define-public rust-mdl-1
+ (package
+ (name "rust-mdl")
+ (version "1.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "mdl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mavphw0ynhggm310rbldzifcrc507jax1nzwrmj4cz1xv7vw24l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-bincode" ,rust-bincode-1)
+ ("rust-lmdb" ,rust-lmdb-0.8)
+ ("rust-serde" ,rust-serde-1))))
+ (home-page "https://gitlab.gnome.org/danigm/mdl")
+ (synopsis "Data model library")
+ (description "This package provides a data model library to share app state
+between threads and process and persist the data in the filesystem. It
+implements a way to store structs instances in an LMDB database and other
+methods like BTreeMap.")
+ (license license:gpl3)))
+
(define-public rust-measureme-0.7
(package
(name "rust-measureme")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 36/52] gnu: Add rust-aes-soft-0.6.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-soft-0.6): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9c57cb9728..23e75184e9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1238,6 +1238,30 @@ acceleration.")
("rust-subtle" ,rust-subtle-2)
("rust-zeroize" ,rust-zeroize-1))))))
+(define-public rust-aes-soft-0.6
+ (package
+ (name "rust-aes-soft")
+ (version "0.6.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes-soft" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0wj0fi2pvmlw09yvb1aqf0mfkzrfxmjsf90finijh255ir4wf55y"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Bit-sliced implementation of AES (Rijndael) block ciphers")
+ (description "This package provides a bit-sliced implementation of
+AES (Rijndael) block ciphers.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-soft-0.4
(package
(name "rust-aes-soft")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 37/52] gnu: Add rust-aesni-0.10.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aesni-0.10): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 23e75184e9..9f63b5ae82 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1307,6 +1307,31 @@ AES (Rijndael) block ciphers.")
("rust-byteorder" ,rust-byteorder-1)
("rust-opaque-debug" ,rust-opaque-debug-0.2))))))
+(define-public rust-aesni-0.10
+ (package
+ (name "rust-aesni")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aesni" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1kmh07fp9hbi1aa8dr2rybbgw8vqz6hjmk34c4w7sbscx7si2bpa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "AES (Rijndael) block ciphers implementation using AES-NI")
+ (description "This package provides an implementation of AES (Rijndael)
+block ciphers using AES-NI.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aesni-0.7
(package
(name "rust-aesni")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 38/52] gnu: Add rust-aes-0.6.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-0.6): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9f63b5ae82..45072e61b2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1137,6 +1137,31 @@ with Associated Data (AEAD) algorithms.")
(("rust-generic-array" ,rust-generic-array-0.12)
("rust-heapless" ,rust-heapless-0.5))))))
+(define-public rust-aes-0.6
+ (package
+ (name "rust-aes")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0q85mw70mgr4glza9y9lrs9nxfa1cdcqzfk6wx0smb3623pr2hw8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-aes-soft" ,rust-aes-soft-0.6)
+ ("rust-aesni" ,rust-aesni-0.10)
+ ("rust-cipher" ,rust-cipher-0.2))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Facade for AES (Rijndael) block ciphers implementations")
+ (description "This package provides a facade for AES (Rijndael) block
+ciphers implementations.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-0.4
(package
(name "rust-aes")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 08:50
[PATCH v2 39/52] gnu: Add rust-block-modes-0.7.
(address . 44492@debbugs.gnu.org)
20210301075017.22715-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-block-modes-0.7): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 45072e61b2..61c636c02e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -5094,6 +5094,33 @@ algorithms. This package is deprecated. Please use block-cipher instead.")
`(#:cargo-inputs
(("rust-generic-array" ,rust-generic-array-0.8))))))
+(define-public rust-block-modes-0.7
+ (package
+ (name "rust-block-modes")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "block-modes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1w3jc3n7k4xq98b9mfina4wwpg1fq1s3b0mm5whqialb7q3yi82p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-padding" ,rust-block-padding-0.2)
+ ("rust-cipher" ,rust-cipher-0.2))
+ #:cargo-development-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-hex-literal" ,rust-hex-literal-0.2)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Block cipher modes of operation")
+ (description "This packagee provides block cipher operation modes.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-block-padding-0.2
(package
(name "rust-block-padding")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 40/52] gnu: Add rust-hmac-0.10.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hmac-0.10): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 61c636c02e..699a954b9e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17698,8 +17698,38 @@ Derivation Function (HKDF).")
(("rust-digest" ,rust-digest-0.8)
("rust-hmac" ,rust-hmac-0.7))))))
+(define-public rust-hmac-0.10
+ (package
+ (name "rust-hmac")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hmac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "058yxq54x7xn0gk2vy9bl51r32c9z7qlcl2b80bjh3lk3rmiqi61"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.10)
+ ("rust-digest" ,rust-digest-0.9))
+ #:cargo-development-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.8)
+ ("rust-md-5" ,rust-md-5-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))
+ (home-page "https://github.com/RustCrypto/MACs")
+ (synopsis "Generic implementation of Hash-based Message Authentication Code")
+ (description
+ "This package provides a generic implementation of @acronym{HMAC,
+Hash-based Message Authentication Code}.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-hmac-0.8
(package
+ (inherit rust-hmac-0.10)
(name "rust-hmac")
(version "0.8.1")
(source
@@ -17711,7 +17741,6 @@ Derivation Function (HKDF).")
(sha256
(base32
"0h48wc7iysh4xd6ci4prh8bb7nszijrh9w3blaaq8a6cilk8hs0j"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
@@ -17719,13 +17748,7 @@ Derivation Function (HKDF).")
#:cargo-development-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
("rust-md-5" ,rust-md-5-0.9)
- ("rust-sha2" ,rust-sha2-0.9))))
- (home-page "https://github.com/RustCrypto/MACs")
- (synopsis "Generic implementation of Hash-based Message Authentication Code")
- (description
- "This package provides a generic implementation of @acronym{HMAC,
-Hash-based Message Authentication Code}.")
- (license (list license:expat license:asl2.0))))
+ ("rust-sha2" ,rust-sha2-0.9))))))
(define-public rust-hmac-0.7
(package
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 41/52] gnu: Add rust-hkdf-0.10.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hkdf-0.10): New variable.
---
gnu/packages/crates-io.scm | 38 ++++++++++++++++++++++++++++++++------
1 file changed, 32 insertions(+), 6 deletions(-)

Toggle diff (73 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 699a954b9e..2686eb9f3b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17651,23 +17651,24 @@ compile time.")
`(#:cargo-inputs
(("rust-proc-macro-hack" ,rust-proc-macro-hack-0.4))))))
-(define-public rust-hkdf-0.9
+(define-public rust-hkdf-0.10
(package
(name "rust-hkdf")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "hkdf" version))
- (file-name (string-append name "-" version ".tar.gz"))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ "0kwn3scjvv2x8zc6nz3wrnzxp9shpsdxnjqiyv2r65r3kiijzasi"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-digest" ,rust-digest-0.9)
- ("rust-hmac" ,rust-hmac-0.8))
+ ("rust-hmac" ,rust-hmac-0.10))
#:cargo-development-inputs
(("rust-bencher" ,rust-bencher-0.1)
("rust-crypto-tests" ,rust-crypto-tests-0.5)
@@ -17676,10 +17677,35 @@ compile time.")
("rust-sha2" ,rust-sha2-0.9))))
(home-page "https://github.com/RustCrypto/KDFs/")
(synopsis "HMAC-based Extract-and-Expand Key Derivation Function (HKDF)")
- (description "This package provides a HMAC-based Extract-and-Expand Key
+ (description "This package provides an HMAC-based Extract-and-Expand Key
Derivation Function (HKDF).")
(license (list license:expat license:asl2.0))))
+(define-public rust-hkdf-0.9
+ (package
+ (inherit rust-hkdf-0.10)
+ (name "rust-hkdf")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hkdf" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-digest" ,rust-digest-0.9)
+ ("rust-hmac" ,rust-hmac-0.8))
+ #:cargo-development-inputs
+ (("rust-bencher" ,rust-bencher-0.1)
+ ("rust-crypto-tests" ,rust-crypto-tests-0.5)
+ ("rust-hex" ,rust-hex-0.4)
+ ("rust-sha-1" ,rust-sha-1-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))))
+
(define-public rust-hkdf-0.8
(package
(inherit rust-hkdf-0.9)
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 42/52] gnu: Add rust-dbus-0.2.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-dbus-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 69277fd208..72140279f1 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -228,6 +228,46 @@
("rust-x11" ,rust-x11-2)
("rust-pkg-config" ,rust-pkg-config-0.3))))))
+(define-public rust-dbus-0.2
+ (package
+ (name "rust-dbus")
+ (version "0.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dbus" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0b85dl7y396g8xh1xh89wxnb1fvvf840dar9axavfhhhlq7c385l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: fatal warnings are still fatal
+ #:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-tempdir" ,rust-tempdir-0.3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/diwic/dbus-rs")
+ (synopsis "Rust bindings to D-Bus")
+ (description "This package provides Rust bindings to D-Bus, a bus commonly
+used for inter-process communication.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-gdk-0.13
(package
(name "rust-gdk")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 43/52] gnu: Add rust-secret-service-1.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-secret-service-1): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (55 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 72140279f1..dba3fb8cfd 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2104,3 +2104,48 @@ renders username initials.")
("rust-tempfile" ,rust-tempfile-3))))
(inputs
`(("gtk+" ,gtk+)))))
+
+(define-public rust-secret-service-1
+ (package
+ (name "rust-secret-service")
+ (version "1.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "secret-service" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "12hxz35i7sw5xsdldz1c6776fmz98z4dwh5779jis98w61020xbd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: see rust-dbus
+ #:cargo-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-block-modes" ,rust-block-modes-0.7)
+ ("rust-dbus" ,rust-dbus-0.2)
+ ("rust-hkdf" ,rust-hkdf-0.10)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-num" ,rust-num-0.3)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-sha2" ,rust-sha2-0.9))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/hwchen/secret-service-rs.git")
+ (synopsis "Secret Service interface")
+ (description "This package provides a Rust library to interface with
+the Secret Service API")
+ (license (list license:expat license:asl2.0))))
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 44/52] gnu: Add rust-atk-sys-0.10.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-atk-sys-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 53 +++++++++++++++++++++++++++++++------
1 file changed, 45 insertions(+), 8 deletions(-)

Toggle diff (75 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index dba3fb8cfd..fafd1d977e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -36,8 +36,52 @@
;;; Please: Try to add new module packages in alphabetic order.
;;;
+(define-public rust-atk-sys-0.10
+ (package
+ (name "rust-atk-sys")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atk-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1knzvq2jdkx1nav619jbqsx2ivzh901rsp2wl57wr50x2fpy8c7m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libatk-1")
+ (description "FFI bindings to libatk-1")
+ (license license:expat)))
+
(define-public rust-atk-sys-0.9
(package
+ (inherit rust-atk-sys-0.10)
(name "rust-atk-sys")
(version "0.9.1")
(source
@@ -57,14 +101,7 @@
("rust-pkg-config" ,rust-pkg-config-0.3))
#:cargo-development-inputs
(("rust-shell-words" ,rust-shell-words-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("atk" ,atk)
- ("glib" ,glib)))
- (home-page "http://gtk-rs.org/")
- (synopsis "FFI bindings to libatk-1")
- (description "FFI bindings to libatk-1")
- (license license:expat)))
+ ("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-atk-0.8
(package
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 45/52] gnu: Add rust-atk-0.9.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-6-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-atk-0.9): New variable.
---
gnu/packages/crates-gtk.scm | 53 +++++++++++++++++++++++++++++++++----
1 file changed, 48 insertions(+), 5 deletions(-)

Toggle diff (75 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index fafd1d977e..6336d1675c 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -103,8 +103,55 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-atk-0.9
+ (package
+ (name "rust-atk")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atk" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "09n46zp8jgxspdzhmi93cag79jjnr0ila94n8nr53g8hw88ljaw1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atk-sys" ,rust-atk-sys-0.10)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the ATK library")
+ (description "Rust bindings for the ATK library")
+ (license license:expat)))
+
(define-public rust-atk-0.8
(package
+ (inherit rust-atk-0.9)
(name "rust-atk")
(version "0.8.0")
(source
@@ -128,11 +175,7 @@
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))
(inputs
`(("atk" ,atk)
- ("glib" ,glib)))
- (home-page "http://gtk-rs.org/")
- (synopsis "Rust bindings for the ATK library")
- (description "Rust bindings for the ATK library")
- (license license:expat)))
+ ("glib" ,glib)))))
(define-public rust-cairo-rs-0.9
(package
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 46/52] gnu: Add rust-gtk-sys-0.10.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gtk-sys-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 60 +++++++++++++++++++++++++++++++++----
1 file changed, 55 insertions(+), 5 deletions(-)

Toggle diff (82 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 6336d1675c..0d6342be12 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1654,8 +1654,62 @@ GStreamer.")
"LGPL-licensed docs for Gtk-rs crates.")
(license license:lgpl2.0)))
+(define-public rust-gtk-sys-0.10
+ (package
+ (name "rust-gtk-sys")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gtk-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0mq4i161kk6dwiz19ayxgm9fhx7n3r5lm9lbjiyk0qs811pxmb49"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; TODO: ABI mismatch
+ #:cargo-inputs
+ (("rust-atk-sys" ,rust-atk-sys-0.10)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libgtk-3")
+ (description "This package provides FFI bindings to libgtk-3.")
+ (license license:expat)))
+
(define-public rust-gtk-sys-0.9
(package
+ (inherit rust-gtk-sys-0.10)
(name "rust-gtk-sys")
(version "0.9.2")
(source
@@ -1683,11 +1737,7 @@ GStreamer.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))
(inputs
- `(("gtk+" ,gtk+)))
- (home-page "http://gtk-rs.org/")
- (synopsis "FFI bindings to libgtk-3")
- (description "This package provides FFI bindings to libgtk-3.")
- (license license:expat)))
+ `(("gtk+" ,gtk+)))))
(define-public rust-html2pango-0.3
(package
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 47/52] gnu: Add rust-gtk-0.9.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gtk-0.9): New variable.
---
gnu/packages/crates-gtk.scm | 77 +++++++++++++++++++++++++++++++------
1 file changed, 66 insertions(+), 11 deletions(-)

Toggle diff (99 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0d6342be12..1e85fdc1bc 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1585,8 +1585,73 @@ GStreamer.")
(description "This package provides FFI bindings to libgstvideo-1.0.")
(license license:expat)))
+(define-public rust-gtk-0.9
+ (package
+ (name "rust-gtk")
+ (version "0.9.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gtk" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0smdll32vlamp4kvxa6sg5m653icas21jd36fvq3laq7ahh2y0ig"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atk" ,rust-atk-0.9)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-cc" ,rust-cc-1)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for GTK+")
+ (description "This package provides Rust bindings for the GTK+ library, version
+3.x.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
+ (inherit rust-gtk-0.9)
(name "rust-gtk")
(version "0.8.1")
(source
@@ -1621,17 +1686,7 @@ GStreamer.")
("rust-pango" ,rust-pango-0.8)
("rust-pango-sys" ,rust-pango-sys-0.9))
#:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
- (inputs
- `(("atk" ,atk)
- ("cairo" ,cairo)
- ("glib" ,glib)
- ("gtk+" ,gtk+)
- ("pango" ,pango)))
- (home-page "http://gtk-rs.org/")
- (synopsis "Rust bindings for the GTK+ 3 library")
- (description "This package provides Rust bindings for the GTK+ 3 library.")
- (license license:expat)))
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-gtk-rs-lgpl-docs-0.1
(package
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 48/52] gnu: Add rust-sourceview4-sys-0.2.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-sys-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (64 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 1e85fdc1bc..956c9a0f8f 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2334,3 +2334,57 @@ renders username initials.")
(description "This package provides a Rust library to interface with
the Secret Service API")
(license (list license:expat license:asl2.0))))
+
+(define-public rust-sourceview4-sys-0.2
+ (package
+ (name "rust-sourceview4-sys")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "146l7fni9zc68rr1aim5di4mzrk22r8jxb96ww8fgp6f51np690v"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "FFI bindings for GtkSourceView")
+ (description "This package provides FFI bindings for GtkSourceView, version
+4.x.")
+ (license license:lgpl2.1+)))
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 10:11
[PATCH v2 49/52] gnu: Add rust-sourceview4-0.2.
(address . 44492@debbugs.gnu.org)
20210301091117.26777-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 59 +++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (69 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 956c9a0f8f..2c83c19c83 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2388,3 +2388,62 @@ the Secret Service API")
(description "This package provides FFI bindings for GtkSourceView, version
4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-0.2
+ (package
+ (name "rust-sourceview4")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1c35bm98gmn93qralgjlippdjm2d6199j811qgrn1zd4iv3j3kv7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk" ,rust-gtk-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-sourceview4-sys"
+ ,rust-sourceview4-sys-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "API bindings for GtkSourceView")
+ (description "This package provides API bindings for GtkSourceView,
+version 4.x.")
+ (license license:lgpl2.1+)))
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 11:11
[PATCH v2 50/52] gnu: Add rust-sourceview4-for-fractal.
(address . 44492@debbugs.gnu.org)
20210301101113.29696-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 2c83c19c83..c64cd6e9a2 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -20,6 +20,7 @@
(define-module (gnu packages crates-gtk)
#:use-module (guix build-system cargo)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
@@ -2447,3 +2448,31 @@ the Secret Service API")
(description "This package provides API bindings for GtkSourceView,
version 4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-for-fractal
+ (package
+ (inherit rust-sourceview4-0.2)
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/World/Rust/sourceview4-rs/")
+ (commit "fa8819fa7ecbe56f44d951656d3825f468915754")))
+ (file-name "rust-sourceview4-0.2.0.tar.gz")
+ (sha256
+ (base32
+ "0aib8385fxdpw79sasfzn6q11sqx3wigkb267if9fb12bagycgpk"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.8))))
+ (properties `((hidden? . #t)))))
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 11:11
[PATCH v2 51/52] gnu: Add rust-letter-avatar-for-fractal.
(address . 44492@debbugs.gnu.org)
20210301101113.29696-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index c64cd6e9a2..caa6e7d3b6 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1872,6 +1872,30 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-letter-avatar-for-fractal
+ (package
+ (inherit rust-letter-avatar-1)
+ (name "rust-letter-avatar")
+ (version "1.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00hnlyckr25h5hvisk90vf88diww6cds140s8cpfhjx4p33kxnm8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.8)
+ ("rust-pango" ,rust-pango-0.8)
+ ("rust-pangocairo" ,rust-pangocairo-0.9)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))))
+ (properties '((hidden? . #t)))))
+
(define-public rust-libhandy-sys-0.5
(package
(name "rust-libhandy-sys")
--
2.30.1
L
L
Leo Prikler wrote on 1 Mar 2021 11:11
[PATCH v2 52/52] gnu: Add fractal.
(address . 44492@debbugs.gnu.org)
20210301101113.29696-3-leo.prikler@student.tugraz.at
* gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/gnome.scm (fractal): New variable.
---
gnu/local.mk | 1 +
gnu/packages/gnome.scm | 142 ++++++++++++++++-
...ractal-switch-from-failure-to-anyhow.patch | 143 ++++++++++++++++++
3 files changed, 285 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch

Toggle diff (320 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 4f6b85c69c..3577e9f7b6 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -996,6 +996,7 @@ dist_patch_DATA = \
%D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/fpc-reproducibility.patch \
%D%/packages/patches/fplll-std-fenv.patch \
+ %D%/packages/patches/fractal-switch-from-failure-to-anyhow.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freebayes-devendor-deps.patch \
%D%/packages/patches/freeimage-unbundle.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 32cecb75b5..31279277b4 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -12099,7 +12099,6 @@ editing environment for translation issues within the GNU gettext/GNOME desktop
world.")
(license license:gpl3+)))
-
(define-public ocrfeeder
(package
(name "ocrfeeder")
@@ -12162,3 +12161,144 @@ world.")
(description "OCRFeeder is a complete Optical Character Recognition and
Document Analysis and Recognition program.")
(license license:gpl3+)))
+
+(define-public fractal
+ (package
+ (name "fractal")
+ (version "4.4.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/GNOME/fractal")
+ (commit version)))
+ (file-name (string-append "fractal-" version))
+ (sha256
+ (base32
+ "1v2aw41gfmixki6g7j7mcav7i7qkn17k7zndvvfv08rgsrvma8qd"))
+ (patches
+ (search-patches
+ "fractal-switch-from-failure-to-anyhow.patch"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:imported-modules
+ (,@%cargo-build-system-modules
+ ,@%meson-build-system-modules)
+ #:modules
+ ((guix build cargo-build-system)
+ (guix build utils)
+ ((guix build meson-build-system) #:prefix meson:))
+ #:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-comrak" ,rust-comrak-0.7)
+ ("rust-directories" ,rust-directories-2)
+ ("rust-dirs" ,rust-dirs-2)
+ ("rust-either" ,rust-either-1)
+ ("rust-fragile" ,rust-fragile-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gettext" ,rust-gettext-rs-0.4)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gspell" ,rust-gspell-0.4)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils" ,rust-gstreamer-pbutils-0.15)
+ ("rust-gstreamer-player" ,rust-gstreamer-player-0.15)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-html2pango" ,rust-html2pango-0.3)
+ ("rust-letter-avatar" ,rust-letter-avatar-for-fractal)
+ ("rust-libhandy" ,rust-libhandy-0.5)
+ ("rust-loggerv" ,rust-loggerv-0.7)
+ ("rust-md5" ,rust-md5-0.7)
+ ("rust-mdl" ,rust-mdl-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-reqwest" ,rust-reqwest-0.10)
+ ("rust-ruma-identifiers" ,rust-ruma-identifiers-0.17)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-secret-service" ,rust-secret-service-1)
+ ("rust-sourceview4" ,rust-sourceview4-for-fractal))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-cargo
+ (lambda* (#:key vendor-dir #:allow-other-keys)
+ (substitute* "fractal-gtk/Cargo.toml"
+ (("git = .*") "")
+ ;; rust-gettext-rs
+ (("branch = \"no-gettext\"") "version = \"0.4.0\"")
+ ;; rust-sourceview4
+ (("rev = \"fa8819fa7ecbe56f44d951656d3825f468915754\"")
+ "version = \"0.2.0\"")
+ ;; rust-either
+ (("rev = \"60c99bc0723491e2dfd42bbe9b485c5f9323e96b\"")
+ "version = \"1.6.0\"")
+ (("\"serde_untagged\"") "\"serde\""))
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ (substitute* "meson.build"
+ (("'Cargo.lock',") ""))
+ (substitute* "scripts/cargo.sh"
+ (("export CARGO_HOME=.*" all)
+ (string-append all "\
+mkdir -p $CARGO_HOME
+cp $1/.cargo/config $CARGO_HOME
+")))
+
+ #t))
+ (add-after 'unpack 'skip-gtk-update-icon-cache
+ (lambda _
+ (substitute* "scripts/meson_post_install.py"
+ (("gtk-update-icon-cache") (which "true")))
+ #t))
+ (add-after 'configure 'configure-harder
+ (lambda* (#:key vendor-dir inputs #:allow-other-keys)
+ (for-each
+ (lambda (d)
+ (copy-recursively
+ (string-append (assoc-ref inputs "rust-sourceview4") "/" d)
+ (string-append vendor-dir "/rust-" d "-0.2.0")))
+ '("sourceview4" "sourceview4-sys"))
+ (delete-file-recursively
+ (car (find-files vendor-dir "fractal.*" #:directories? #t)))
+ #t))
+ (add-after 'patch-cargo-checksums 'really-configure
+ (lambda args
+ (apply (assoc-ref meson:%standard-phases 'configure)
+ #:build-type "release"
+ #:configure-flags '()
+ args)))
+ (replace 'build (assoc-ref meson:%standard-phases 'build))
+ (replace 'check
+ (lambda args
+ ((assoc-ref meson:%standard-phases 'check)
+ #:test-target "test"
+ #:parallel-tests? #t
+ #:tests? #t)))
+ (replace 'install (assoc-ref meson:%standard-phases 'install)))))
+ (native-inputs
+ `(("glib:bin" ,glib "bin")
+ ("gettext" ,gettext-minimal)
+ ("meson" ,meson-for-build)
+ ("ninja" ,ninja)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,gspell)
+ ("gst-editing-services" ,gst-editing-services)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("libhandy" ,libhandy-0.0)
+ ("openssl" ,openssl)))
+ (synopsis "Matrix messaging app for GNOME")
+ (description "Fractal is a Matrix messaging app for GNOME written in Rust.
+Its interface is optimized for collaboration in large groups, such as free
+software projects.")
+ (home-page "https://wiki.gnome.org/Apps/Fractal")
+ (license license:gpl3)))
diff --git a/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
new file mode 100644
index 0000000000..6b830ecf94
--- /dev/null
+++ b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
@@ -0,0 +1,143 @@
+From e4ca9dc5c0f4401f350338e4cd9b0734db9371bf Mon Sep 17 00:00:00 2001
+From: Yuki Okushi <huyuumi.dev@gmail.com>
+Date: Thu, 13 Aug 2020 14:41:50 +0900
+Subject: [PATCH] Switch from failure to anyhow
+
+---
+ Cargo.lock | 8 +++++++-
+ fractal-gtk/Cargo.toml | 2 +-
+ fractal-gtk/src/appop/attach.rs | 2 +-
+ fractal-gtk/src/cache/mod.rs | 2 +-
+ fractal-gtk/src/cache/state.rs | 7 +++----
+ fractal-gtk/src/util.rs | 8 ++++----
+ 6 files changed, 17 insertions(+), 12 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index c0b5e5e2..f26d9787 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -88,6 +88,12 @@ dependencies = [
+ "winapi 0.3.9",
+ ]
+
++[[package]]
++name = "anyhow"
++version = "1.0.32"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6b602bfe940d21c130f3895acd65221e8a61270debe89d628b9cb4e3ccb8569b"
++
+ [[package]]
+ name = "arrayref"
+ version = "0.3.6"
+@@ -580,6 +586,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+ name = "fractal-gtk"
+ version = "4.4.0"
+ dependencies = [
++ "anyhow",
+ "cairo-rs",
+ "chrono",
+ "clap",
+@@ -587,7 +594,6 @@ dependencies = [
+ "directories",
+ "dirs",
+ "either 1.5.99",
+- "failure",
+ "fractal-matrix-api",
+ "fragile",
+ "gdk",
+diff --git a/fractal-gtk/Cargo.toml b/fractal-gtk/Cargo.toml
+index 960f64b5..e1c6a33d 100644
+--- a/fractal-gtk/Cargo.toml
++++ b/fractal-gtk/Cargo.toml
+@@ -6,11 +6,11 @@ workspace = "../"
+ edition = "2018"
+
+ [dependencies]
++anyhow = "1.0.32"
+ clap = "2.33.0"
+ comrak = "0.7.0"
+ directories = "2.0.2"
+ dirs = "2.0.2"
+-failure = "0.1.6"
+ fragile = "1.0.0"
+ gspell = "0.4.0"
+ gdk = "0.12.1"
+diff --git a/fractal-gtk/src/appop/attach.rs b/fractal-gtk/src/appop/attach.rs
+index 3f0813aa..3b5bff4c 100644
+--- a/fractal-gtk/src/appop/attach.rs
++++ b/fractal-gtk/src/appop/attach.rs
+@@ -6,7 +6,7 @@ use std::io::prelude::*;
+ use std::path::PathBuf;
+ use std::sync::{Arc, Mutex};
+
+-use failure::Error;
++use anyhow::Error;
+
+ use gtk::prelude::*;
+
+diff --git a/fractal-gtk/src/cache/mod.rs b/fractal-gtk/src/cache/mod.rs
+index 76942866..8943eac6 100644
+--- a/fractal-gtk/src/cache/mod.rs
++++ b/fractal-gtk/src/cache/mod.rs
+@@ -12,7 +12,7 @@ use std::thread;
+
+ use crate::types::Room;
+ use crate::types::RoomList;
+-use failure::Error;
++use anyhow::Error;
+ use fractal_api::identifiers::{DeviceId, UserId};
+ use std::collections::HashMap;
+ use std::hash::Hash;
+diff --git a/fractal-gtk/src/cache/state.rs b/fractal-gtk/src/cache/state.rs
+index 7cb5372a..0e62c59b 100644
+--- a/fractal-gtk/src/cache/state.rs
++++ b/fractal-gtk/src/cache/state.rs
+@@ -4,8 +4,7 @@ use mdl::Model;
+ use mdl::Store;
+ use serde::{Deserialize, Serialize};
+
+-use failure::err_msg;
+-use failure::Error;
++use anyhow::{anyhow, Error};
+
+ use std::cell::RefCell;
+ use std::fs::remove_dir_all;
+@@ -127,8 +126,8 @@ impl FCache {
+ guard.take();
+
+ let fname = cache_dir_path(None, "cache.mdl")
+- .or_else(|_| Err(err_msg("Can't remove cache file")))?;
+- remove_dir_all(fname).or_else(|_| Err(err_msg("Can't remove cache file")))
++ .or_else(|_| Err(anyhow!("Can't remove cache file")))?;
++ remove_dir_all(fname).or_else(|_| Err(anyhow!("Can't remove cache file")))
+ }
+
+ #[allow(dead_code)]
+diff --git a/fractal-gtk/src/util.rs b/fractal-gtk/src/util.rs
+index 764a8e8e..b2feb12c 100644
+--- a/fractal-gtk/src/util.rs
++++ b/fractal-gtk/src/util.rs
+@@ -1,6 +1,6 @@
+ use crate::globals::CACHE_PATH;
+-use failure::format_err;
+-use failure::Error as FailError;
++use anyhow::anyhow;
++use anyhow::Error as AnyhowError;
+ use gdk::prelude::*;
+ use gdk_pixbuf::Pixbuf;
+ use gio::{Settings, SettingsExt, SettingsSchemaSource};
+@@ -21,9 +21,9 @@ pub fn cache_dir_path(dir: Option<&str>, name: &str) -> Result<PathBuf, IoError>
+ Ok(path.join(name))
+ }
+
+-pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, FailError> {
++pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, AnyhowError> {
+ let image = cairo::ImageSurface::create(cairo::Format::ARgb32, pb.get_width(), pb.get_height())
+- .or_else(|_| Err(format_err!("Cairo Error")))?;
++ .or_else(|_| Err(anyhow!("Cairo Error")))?;
+
+ let g = cairo::Context::new(&image);
+ g.set_source_pixbuf(pb, 0.0, 0.0);
+--
+2.30.1
+
--
2.30.1
C
C
Christopher Baines wrote on 7 Mar 2021 15:14
Fractal
(address . 44492@debbugs.gnu.org)(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)
87y2ezm4pc.fsf@cbaines.net
Hey,

I'd suggest going ahead and merging this, or if not, then sending a v3.

I've had a look at the v1 patches and they seem OK, unfortunately the v2
patches seem to have confused Patchwork, which has split them across two
incomplete series.

Thanks,

Chris
-----BEGIN PGP SIGNATURE-----

iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAmBE369fFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh
aW5lcy5uZXQACgkQXiijOwuE9XcdrxAAkkS+j1eZs8Kp9W2ZsvBqJRCZzkWFANjF
Tz433RI6ERaCYmrRrqzOjUDfnhwdITNQBetF6Iw1IyWxqojsrnGwjOUD1xOHQ9fl
vBEo6Jes0xA5Qf62ctR74RWwDrcr5udlhpS7qgQZcZdF7i4VavG8Uj6qtbk6bKMN
mzPsgH3FZIoP0SJK4u+FQr3w9hGTlg1R32JTWV8O+M+5YPt7GCNTwUKaopTny8M2
dOwSHUF2dr+eBaqutKxioDuEfauRnl9C1ApAeF6NAlZgYXTrZ9z0vS7F+w+1VMGn
tvwPGrIFwdpAhQ5QL02Q8eEd8W2i5ZD4Sec0PY61PYDXC2/1b14wv+Ovca0YIbFG
hgw+r0UVSd65O4a2RNrdEd7TrYA0mDSuVpWvXZ3Dh4YGazn9ZBZOHz17sfJklopZ
sdJoA7QU24yphjSSLBLB3hHbTfhHQaLDvm85On4DpcQkQkN7luxEW+nGbaHBgER/
UlTMkYhquIaI1wwFanWcytVyKOGOfsMhgj2A0IMJMxkVJNZAmHmQSgbntqTkOl2t
45olLqE30EQ8A/TbgVJBV8Z/PGjlSgH+dtVDq7ID+L/vB4wLr55MwmmAESFD4510
pmYqtIrt86RS1PUmnMb8mkfX5rYtDT53yTwj8839ku7SS2NJ6EE2JAX7z2byTM5p
uE2vLYrVAXY=
=00m6
-----END PGP SIGNATURE-----

L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 02/46] gnu: Add rust-ruma-identifiers-macros-0.17.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-macros-0.17): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bebe80e2b6..38e4c6d229 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32754,6 +32754,33 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-macros-0.17
+ (package
+ (name "rust-ruma-identifiers-macros")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-macros" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "03p3qp12h4aajixcyk44q2bcid6fa4nmipysvcpy4w5cbak7wvwq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Create Matrix identifiers")
+ (description "This package provides procedural macros for creating Matrix
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-validation-0.1
(package
(name "rust-ruma-identifiers-validation")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 01/46] gnu: Add rust-ruma-identifiers-validation-0.1.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-0.1): New
variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index abe4a937e5..bebe80e2b6 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32754,6 +32754,30 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-validation-0.1
+ (package
+ (name "rust-ruma-identifiers-validation")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-validation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nv0zqsq5lhybckvfr5wmcp8pipqfs2hjgn9kvn9w33xacfzs4n1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Validation logic for RUMA")
+ (description "This package provides the validation logic needed by other
+rust-ruma packages.")
+ (license license:expat)))
+
(define-public rust-runtime-0.3
(package
(name "rust-runtime")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 04/46] gnu: Add rust-entities-1.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-entities-1): New variable.
---
gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 40a48dd6c5..25aec64ee6 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12676,6 +12676,27 @@ Standard.")
"Streaming transcoding for encoding_rs.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-entities-1
+ (package
+ (name "rust-entities")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "entities" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnpr0zvj97wm9pnh7fnl74rzaar39hhg65p03cm08bqqgj0lcmm"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page "https://github.com/p-jackson/entities")
+ (synopsis "Raw data for converting HTML entities")
+ (description "This package provides the raw data needed to convert to and
+from HTML entities.")
+ (license license:expat)))
+
(define-public rust-enum-as-inner-0.3
(package
(name "rust-enum-as-inner")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 05/46] gnu: Add rust-twoway-0.2.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-twoway-0.2): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 25aec64ee6..162617c7aa 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -45009,8 +45009,38 @@ design abstracts away all the internals of the WebSocket protocol but still
makes them accessible for those who wants full control over the network.")
(license (list license:expat license:asl2.0))))
+(define-public rust-twoway-0.2
+ (package
+ (name "rust-twoway")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "twoway" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g55kf4rx0q682fvzxdixqihmlbamn5ms2yqvcm92fny21chfh3b"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
+ ("rust-jetscii" ,rust-jetscii-0.3)
+ ("rust-memchr" ,rust-memchr-2)
+ ("rust-unchecked-index"
+ ,rust-unchecked-index-0.2))))
+ (home-page "https://github.com/bluss/twoway")
+ (synopsis "Fast substring search for strings and byte strings")
+ (description
+ "This package provides a fast substring search for strings and byte
+strings.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-twoway-0.1
(package
+ (inherit rust-twoway-0.2)
(name "rust-twoway")
(version "0.1.8")
(source
@@ -45020,20 +45050,13 @@ makes them accessible for those who wants full control over the network.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
("rust-jetscii" ,rust-jetscii-0.3)
("rust-memchr" ,rust-memchr-2)
- ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
- (home-page "https://github.com/bluss/twoway")
- (synopsis "Fast substring search for strings and byte strings")
- (description
- "This package provides a fast substring search for strings and byte
-strings.")
- (license (list license:expat license:asl2.0))))
+ ("rust-unchecked-index" ,rust-unchecked-index-0.2))))))
(define-public rust-typeable-0.1
(package
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 03/46] gnu: Add rust-ruma-identifiers-0.17.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-0.17): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 38e4c6d229..40a48dd6c5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32754,6 +32754,40 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-0.17
+ (package
+ (name "rust-ruma-identifiers")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vjxws5yw1c8lmwc5p036319vwwna1sxb7pkl6lw1pl8rwp0j5sr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-either" ,rust-either-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-ruma-identifiers-macros"
+ ,rust-ruma-identifiers-macros-0.17)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))
+ #:cargo-development-inputs
+ (("rust-matches" ,rust-matches-0.1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Rust types for Matrix resource identifiers")
+ (description "This package provides Rust type bindings for Matrix resource
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-macros-0.17
(package
(name "rust-ruma-identifiers-macros")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 06/46] gnu: Add rust-comrak-0.7.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-6-leo.prikler@student.tugraz.at
* gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/crates-io.scm (rust-comrak-0.7): New variable.
---
gnu/local.mk | 1 +
gnu/packages/crates-io.scm | 44 +++++++++++++++++++
.../rust-comrak-0.7-rustsec-2021-0026.patch | 41 +++++++++++++++++
3 files changed, 86 insertions(+)
create mode 100644 gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch

Toggle diff (116 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index fb3b395852..4bb2806811 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1606,6 +1606,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-1.45-linker-locale.patch \
%D%/packages/patches/rust-1.48-linker-locale.patch \
%D%/packages/patches/rust-bootstrap-stage0-test.patch \
+ %D%/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch \
%D%/packages/patches/rust-coresimd-doctest.patch \
%D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \
%D%/packages/patches/rust-nettle-disable-vendor.patch \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 162617c7aa..77f88dff21 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -7655,6 +7655,50 @@ harness.")
("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-comrak-0.7
+ (package
+ (name "rust-comrak")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "comrak" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07026j0ghwgv5z61fc4l893wwc30krxpsy487rb91wkcag65hw71"))
+ (patches
+ (search-patches
+ "rust-comrak-0.7-rustsec-2021-0026.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "src/tests.rs"
+ (("data:(png|jpeg|gif|webp)" all what)
+ (string-append "data:image/" what)))
+ #t))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-entities" ,rust-entities-1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-twoway" ,rust-twoway-0.2)
+ ("rust-typed-arena" ,rust-typed-arena-1)
+ ("rust-unicode-categories"
+ ,rust-unicode-categories-0.1))
+ #:cargo-development-inputs
+ (("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/kivikakk/comrak")
+ (synopsis "Markdown parser and formatter")
+ (description "This package provides a parser and formatter for Github
+Flavored Markdown, that is compatible with CommonMark.")
+ (license license:bsd-2)))
+
(define-public rust-concurrent-queue-1
(package
(name "rust-concurrent-queue")
diff --git a/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
new file mode 100644
index 0000000000..9a74b7b971
--- /dev/null
+++ b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
@@ -0,0 +1,41 @@
+From 285e9647c6d2f90d8cb7af543b14c986a8efa631 Mon Sep 17 00:00:00 2001
+From: Asherah Connor <ashe@kivikakk.ee>
+Date: Fri, 12 Feb 2021 21:15:29 +1100
+Subject: [PATCH] SECURITY: match unsafe prefixes case-insensitively
+
+Many thanks to Kouhei Morita for reporting this.
+
+Co-authored-by: Kouhei Morita <mrtc0@ssrf.in>
+---
+ src/lexer.pest | 2 +-
+ src/tests.rs | 146 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 147 insertions(+), 1 deletion(-)
+
+diff --git a/src/lexer.pest b/src/lexer.pest
+index e97647c..7f6cd3f 100644
+--- a/src/lexer.pest
++++ b/src/lexer.pest
+@@ -55,4 +55,4 @@ table_start = { "|"? ~ table_marker ~ ("|" ~ table_marker)* ~ "|"? ~ table_space
+ table_cell_end = { "|" ~ table_spacechar* ~ table_newline? }
+ table_row_end = { table_spacechar* ~ table_newline }
+
+-dangerous_url = { "data:" ~ !("png" | "gif" | "jpeg" | "webp") | "javascript:" | "vbscript:" | "file:" }
++dangerous_url = { ^"data:" ~ !(^"image/" ~ (^"png" | ^"gif" | ^"jpeg" | ^"webp")) | ^"javascript:" | ^"vbscript:" | ^"file:" }
+diff --git a/src/tests.rs b/src/tests.rs
+index c61a493..5f3e0cc 100644
+--- a/src/tests.rs
++++ b/src/tests.rs
+@@ -998,3 +998,11 @@ fn description_lists() {
+ ),
+ );
+ }
++
++#[test]
++fn case_insensitive_safety() {
++ html(
++ "[a](javascript:a) [b](Javascript:b) [c](jaVascript:c) [d](data:xyz) [e](Data:xyz) [f](vbscripT:f) [g](FILE:g)\n",
++ "<p><a href=\"\">a</a> <a href=\"\">b</a> <a href=\"\">c</a> <a href=\"\">d</a> <a href=\"\">e</a> <a href=\"\">f</a> <a href=\"\">g</a></p>\n",
++ );
++}
+--
+2.30.1
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 07/46] gnu: Add rust-fragile-1.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-fragile-1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 77f88dff21..fc451ed1da 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14362,6 +14362,26 @@ implementation that is more efficient for smaller hash keys.")
syntax, as used by HTML forms.")
(license (list license:expat license:asl2.0))))
+(define-public rust-fragile-1
+ (package
+ (name "rust-fragile")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fragile" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wlihmkjyhvl5rckal32p010piy1l15s6l81h7z31jcd971kk839"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/mitsuhiko/rust-fragile")
+ (synopsis "Wrapper types for sending non-send values to other threads")
+ (description "This package provides wrapper types for sending non-send
+values to other threads.")
+ (license license:asl2.0)))
+
(define-public rust-fragile-0.3
(package
(name "rust-fragile")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 08/46] gnu: rust-either-1: Update to 1.6.1.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-either-1): Update to 1.6.1.
---
gnu/packages/crates-io.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index fc451ed1da..73c9fcb05e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12374,7 +12374,7 @@ signing, and verification in pure Rust.")
(define-public rust-either-1
(package
(name "rust-either")
- (version "1.5.3")
+ (version "1.6.1")
(source
(origin
(method url-fetch)
@@ -12383,7 +12383,7 @@ signing, and verification in pure Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1qyz1b1acad6w0k5928jw5zaq900zhsk7p8dlcp4hh61w4f6n7xv"))))
+ "0mwl9vngqf5jvrhmhn9x60kr5hivxyjxbmby2pybncxfqhf4z3g7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 09/46] gnu: Add rust-gspell-sys-0.4.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 48 ++++++++++++++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0d72fbf321..09aa79daba 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -26,7 +26,8 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
- #:use-module (gnu packages gtk))
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages pkg-config))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -887,6 +888,51 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-gspell-sys-0.4
+ (package
+ (name "rust-gspell-sys")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Raw C-FFI bindings for gspell")
+ (description "This package provides raw C-FFI bindings for the gspell library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 10/46] gnu: Add rust-gspell-0.4.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 66 ++++++++++++++++++++++++++++++++++++-
1 file changed, 65 insertions(+), 1 deletion(-)

Toggle diff (90 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 09aa79daba..5d66ed1c13 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -23,11 +23,13 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
+ #:use-module (gnu packages aspell)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
- #:use-module (gnu packages pkg-config))
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -933,6 +935,68 @@
(description "This package provides raw C-FFI bindings for the gspell library.")
(license license:gpl3+)))
+(define-public rust-gspell-0.4
+ (package
+ (name "rust-gspell")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10wi6p6dhdqypfqlih18mrl7vgni7y64mrhdh5ymayp4d07djshk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gspell-sys" ,rust-gspell-sys-0.4)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+
+ ;; Allow Enchant and its Aspell backend to find the en_US
+ ;; dictionary.
+ (setenv "ASPELL_DICT_DIR"
+ (string-append (assoc-ref inputs "aspell-dict-en")
+ "/lib/aspell"))
+ #t)))))
+ (native-inputs
+ `(("aspell-dict-en" ,aspell-dict-en)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Rust bindings for gspell")
+ (description "This package provides Rust bindings for the gspell spell
+checking library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 11/46] gnu: Add rust-muldiv-0.2.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-11-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-muldiv-0.2): New variable.
---
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 73c9fcb05e..d54e29edcd 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23534,6 +23534,29 @@ checking.")
"Chaining APIs for both self -> Self and &mut self methods.")
(license license:expat)))
+(define-public rust-muldiv-0.2
+ (package
+ (name "rust-muldiv")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "muldiv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "014jlry2l2ph56mp8knw65637hh49q7fmrraim2bx9vz0a638684"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.9))))
+ (home-page "https://github.com/sdroege/rust-muldiv")
+ (synopsis "Perform combined multiplication and division")
+ (description "This package provides a trait for numeric types to perform
+combined multiplication and division with overflow protection.")
+ (license license:expat)))
+
(define-public rust-multi-default-trait-impl-0.1
(package
(name "rust-multi-default-trait-impl")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 13/46] gnu: Add rust-gstreamer-0.15.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-13-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 50 +++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 41cbe597db..f6e1505ce5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -998,6 +998,56 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-0.15
+ (package
+ (name "rust-gstreamer")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qx1fhr9ajms0128ixmi2ncr35llwppdb0z7ximw2vnd2jhn91nf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-muldiv" ,rust-muldiv-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-bytes" ,rust-serde-bytes-0.11)
+ ("rust-serde-derive" ,rust-serde-derive-1))
+ #:cargo-development-inputs
+ (("rust-futures-executor"
+ ,rust-futures-executor-0.3)
+ ("rust-ron" ,rust-ron-0.5)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer")
+ (description "This package provides Rust bindings for GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 12/46] gnu: Add rust-gstreamer-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-12-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 5d66ed1c13..41cbe597db 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -27,6 +27,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg))
@@ -997,6 +998,46 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-sys-0.8
+ (package
+ (name "rust-gstreamer-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nsk802vlcyi9p93sg60wv8fzb2mq7j52lfdda4va2kxp40xl60x"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to GStreamer")
+ (description "This package provides FFI bindings to libgstreamer-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 14/46] gnu: Add rust-gstreamer-base-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-14-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f6e1505ce5..8fbb78480b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,47 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-sys-0.8
+ (package
+ (name "rust-gstreamer-base-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v9v09jqjrwz87c4r7za3yb6g7had112d8zwjdjmhg2b2x94yf5s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to glibgstbase-1.0")
+ (description "This package provides FFI bindings to libgstbase-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 15/46] gnu: Add rust-gstreamer-video-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-15-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 8fbb78480b..9134a80fdb 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1129,6 +1129,50 @@ checking library.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-sys-0.8
+ (package
+ (name "rust-gstreamer-video-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k5prjimlrm5c68vk6wq1l9y440p5vskrq862rcb9x22z2c44pv1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: ABI mismatch
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstvideo-1.0")
+ (description "This package provides FFI bindings to libgstvideo-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 16/46] gnu: Add rust-gstreamer-player-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-16-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9134a80fdb..79c0463cc5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1089,6 +1089,50 @@ checking library.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-sys-0.8
+ (package
+ (name "rust-gstreamer-player-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g21c7yk1855k5qdyn0hcwa6v1dy9admipy8s7544d7d19rqmhww"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstplayer-1.0")
+ (description "This package provides FFI bindings to libgstplayer-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 17/46] gnu: Add rust-gstreamer-base-0.15.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-17-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 79c0463cc5..7be3276ab7 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,43 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-0.15
+ (package
+ (name "rust-gstreamer-base")
+ (version "0.15.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04hwa85j3w959i025il908bvsx6dyiawkmc0w45hn9kcrisjyma2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Base")
+ (description "This package provides Rust bindings for the base library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-base-sys-0.8
(package
(name "rust-gstreamer-base-sys")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 18/46] gnu: Add rust-gstreamer-video-0.15.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-18-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7be3276ab7..a6c416530d 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1210,6 +1210,50 @@ GStreamer.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-0.15
+ (package
+ (name "rust-gstreamer-video")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jaday8gsmhixv5k78wxcsricmvqfsip486750ad8ih2jjdfdmqa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base" ,rust-gstreamer-base-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer video")
+ (description "This package provides Rust bindings for the video library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-video-sys-0.8
(package
(name "rust-gstreamer-video-sys")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 19/46] gnu: Add rust-gstreamer-player-0.15.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-19-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index a6c416530d..f5e9972653 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1126,6 +1126,46 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-0.15
+ (package
+ (name "rust-gstreamer-player")
+ (version "0.15.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167nv3s6pwr746gjm2i0vd6ygfmbp80hi4wm46lly3jgciy4kcq4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-player-sys"
+ ,rust-gstreamer-player-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video"
+ ,rust-gstreamer-video-0.15)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad))) ; for -lgstplayer-1.0
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer player")
+ (description "This package provides Rust bindings for the player library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-player-sys-0.8
(package
(name "rust-gstreamer-player-sys")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 20/46] gnu: Add rust-gstreamer-audio-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-20-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-audio-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f5e9972653..de4251b515 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,51 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-audio-sys-0.8
+ (package
+ (name "rust-gstreamer-audio-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-audio-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rxw1s57yrw1zsbindaf2sj05df4qh17bshadqfw77y4xr9izjdv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build?
+ #t
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstaudio-1.0")
+ (description "This package provides FFI bindings to libgstaudio-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-base-0.15
(package
(name "rust-gstreamer-base")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 21/46] gnu: Add rust-gstreamer-pbutils-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-21-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index de4251b515..044de7671e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,51 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-sys-0.8
+ (package
+ (name "rust-gstreamer-pbutils-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1s4dgmq9ai1jz5w5vllji8087khw7hja97hii4lgl29figkakdsf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-audio-sys"
+ ,rust-gstreamer-audio-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstpbutils-1.0")
+ (description "This package provides FFI bindings to libgstpbutils-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-player-0.15
(package
(name "rust-gstreamer-player")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 22/46] gnu: Add rust-gstreamer-pbutils-0.15.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-22-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 044de7671e..61dc047ac4 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,43 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-0.15
+ (package
+ (name "rust-gstreamer-pbutils")
+ (version "0.15.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q8hv8i41mwhr84ydwlv7qspf49s5i7pz3lnjwl0l9gyp2anq97d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils-sys"
+ ,rust-gstreamer-pbutils-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer base utils")
+ (description "This package provides Rust bindings for the pb_utils library
+of GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-pbutils-sys-0.8
(package
(name "rust-gstreamer-pbutils-sys")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 23/46] gnu: Add rust-markup5ever-rcdom-0.1.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-23-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-markup5ever-rcdom-0.1): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index d54e29edcd..faacdba674 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22283,6 +22283,35 @@ platform-independently.")
(base32
"08ayl9aqjnmf7ly1ipy6dk3wjvyfn4w51l40jzh1fh984ykldbzi"))))))
+(define-public rust-markup5ever-rcdom-0.1
+ (package
+ (name "rust-markup5ever-rcdom")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "markup5ever_rcdom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0axf6vrms8579lvhbjaj0v7bhs8xb7s26d4sam2g3m6qpi1xl5gh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test files not included in release.
+ #:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-markup5ever" ,rust-markup5ever-0.10)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-xml5ever" ,rust-xml5ever-0.16))
+ #:cargo-development-inputs
+ (("rust-rustc-test" ,rust-rustc-test-0.3))))
+ (home-page "https://github.com/servo/html5ever")
+ (synopsis "html5ever test DOM structure")
+ (description "This package provides a basic DOM structure for use by tests
+in html5ever/xml5ever. It is not supposed to be used in user-facing code.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-match-cfg-0.1
(package
(name "rust-match-cfg")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 24/46] gnu: Add rust-ammonia-3.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-24-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ammonia-3): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index faacdba674..ba7ebf5f0f 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1700,6 +1700,40 @@ options to use calloc or a mutable global variable for pre-zeroed memory.")
be used with the stdlib.")
(license license:bsd-3)))
+(define-public rust-ammonia-3
+ (package
+ (name "rust-ammonia")
+ (version "3.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ammonia" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fzaj1fx3yhz2qd47gfvz7n8xjrnn37w2hp4qlyzpczlf18wisl9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-matches" ,rust-matches-0.1)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-version-sync" ,rust-version-sync-0.8))))
+ (home-page "https://github.com/rust-ammonia/ammonia")
+ (synopsis "HTML Sanitization")
+ (description "Ammonia is a whitelist-based HTML sanitization library.
+It is designed to prevent cross-site scripting, layout breaking, and
+clickjacking caused by untrusted user-provided HTML being mixed into a larger
+web page.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-android-glue-0.2
(package
(name "rust-android-glue")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 25/46] gnu: Add rust-html2pango-0.3.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-25-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-html2pango-0.3): New variable.
---
gnu/packages/crates-gtk.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 61dc047ac4..917006cb9a 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1569,6 +1569,40 @@ GStreamer.")
(description "This package provides FFI bindings to libgtk-3.")
(license license:expat)))
+(define-public rust-html2pango-0.3
+ (package
+ (name "rust-html2pango")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "html2pango" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0f0phim3bgmq0gcsvm9q8674190d5v5idlsqyxykxjf36d02i6s6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ammonia" ,rust-ammonia-3)
+ ("rust-anyhow" ,rust-anyhow-1)
+ ("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-linkify" ,rust-linkify-0.4)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-regex" ,rust-regex-1))
+ #:cargo-development-inputs
+ (("rust-pretty-assertions"
+ ,rust-pretty-assertions-0.6))))
+ (home-page "https://gitlab.gnome.org/World/html2pango")
+ (synopsis "Convert HTML to pango.")
+ (description "html2pango converts html tags to Pango markup. It also
+converts raw links to http links and strips unwanted tags.")
+ (license license:gpl3)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 26/46] gnu: Add rust-pangocairo-sys-0.11.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-26-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-sys-0.11): New variable.
---
gnu/packages/crates-gtk.scm | 53 ++++++++++++++++++++++++++++++++-----
1 file changed, 47 insertions(+), 6 deletions(-)

Toggle diff (79 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 917006cb9a..99fc6fe451 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1805,8 +1805,54 @@ converts raw links to http links and strips unwanted tags.")
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+(define-public rust-pangocairo-sys-0.11
+ (package
+ (name "rust-pangocairo-sys")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167b1z6ns3lw1dqfq3mnhmknf7isi5vacp2fp0rh4bwcd5zwkk4l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to pangocairo")
+ (description "This package provides FFI bindings to pangocairo.")
+ (license license:expat)))
+
(define-public rust-pangocairo-sys-0.10
(package
+ (inherit rust-pangocairo-sys-0.11)
(name "rust-pangocairo-sys")
(version "0.10.1")
(source
@@ -1818,7 +1864,6 @@ converts raw links to http links and strips unwanted tags.")
(sha256
(base32
"1zlyf5vajarnxg5034b8qa5w5zajv96lfvlgiki26svpmcqip4m3"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
@@ -1830,8 +1875,4 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))
(inputs
- `(("gtk+" ,gtk+)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libgtk-3")
- (description "This package provides FFI bindings to libgtk-3.")
- (license license:expat)))
+ `(("gtk+" ,gtk+)))))
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 28/46] gnu: Add rust-libhandy-sys-0.5.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-28-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-sys-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index a0d55fa8bd..dee36cde29 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1646,6 +1646,50 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-libhandy-sys-0.5
+ (package
+ (name "rust-libhandy-sys")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ih4ws1d9n4qp4rwgsfilklgchqq3prnrb7h3avik1wi5s2ay1yp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "FFI bindings for libhandy")
+ (description "This package provides raw FFI bindings to libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 29/46] gnu: Add rust-libhandy-0.5.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-29-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index dee36cde29..260e1b8330 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1690,6 +1690,60 @@ renders username initials.")
(description "This package provides raw FFI bindings to libhandy.")
(license license:gpl3+)))
+(define-public rust-libhandy-0.5
+ (package
+ (name "rust-libhandy")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "01zska4i6641pj8d9gcc2kclx5vvsbbyfpv4rn5kahs11rigba9a"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-libhandy-sys" ,rust-libhandy-sys-0.5)
+ ("rust-pango" ,rust-pango-0.8))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "Rust bindings for libhandy")
+ (description "This package provides Rust bindings for libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 30/46] gnu: Add rust-loggerv-0.7.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-30-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-loggerv-0.7): New variable.
---
gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ba7ebf5f0f..bfb31241bf 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21798,6 +21798,41 @@ by inspecting the system for user preference.")
`(#:cargo-inputs
(("rust-log" ,rust-log-0.4))))))
+(define-public rust-loggerv-0.7
+ (package
+ (name "rust-loggerv")
+ (version "0.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "loggerv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0x6k903wpm557fkcbr5isgh4yqkkbzw4fm7hwyy61rvimqaxxn30"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ansi-term" ,rust-ansi-term-0.12)
+ ("rust-atty" ,rust-atty-0.2)
+ ("rust-log" ,rust-log-0.4))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "src/lib.rs"
+ (("assert_eq!\\(logger\\.colors, DEFAULT_COLORS\\);" all)
+ (string-append "// " all)))
+ #t)))))
+ (home-page "https://github.com/clux/loggerv")
+ (synopsis "Logger with colors")
+ (description "This package provides a simple log implementation that logs
+to stdout and stderr with colors.")
+ (license license:expat)))
+
(define-public rust-logtest-2
(package
(name "rust-logtest")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 31/46] gnu: Add rust-lmdb-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-31-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-sys-0.8): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bfb31241bf..8412c8c25b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21545,6 +21545,30 @@ punctuation.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-lmdb-sys-0.8
+ (package
+ (name "rust-lmdb-sys")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1scc28phjcywr9jq78d01g35rig8l2bwydxcdzl5i27yij1r5cym"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cc" ,rust-cc-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "Rust bindings for liblmdb")
+ (description "This package provides Rust bindings for liblmdb.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 32/46] gnu: Add rust-lmdb-0.8.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-32-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-0.8): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8412c8c25b..8fbc7ea584 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21569,6 +21569,35 @@ punctuation.")
(description "This package provides Rust bindings for liblmdb.")
(license license:asl2.0)))
+(define-public rust-lmdb-0.8
+ (package
+ (name "rust-lmdb")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fc54in9i27v1gpxncay5s85lqx27m0r2vyrfylnljfnnpphh2av"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; use of unstable feature
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-lmdb-sys" ,rust-lmdb-sys-0.8))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-rand" ,rust-rand-0.8)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "LMDB wrapper")
+ (description "This package provides an idiomatic Rust wrapper for LMDB.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 33/46] gnu: Add rust-mdl-1.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-33-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-mdl-1): New variable.
---
gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8fbc7ea584..422c74b307 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22692,6 +22692,34 @@ compression function.")
(supported-systems '("x86_64-linux" "i686-linux"))
(license license:expat)))
+(define-public rust-mdl-1
+ (package
+ (name "rust-mdl")
+ (version "1.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "mdl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mavphw0ynhggm310rbldzifcrc507jax1nzwrmj4cz1xv7vw24l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-bincode" ,rust-bincode-1)
+ ("rust-lmdb" ,rust-lmdb-0.8)
+ ("rust-serde" ,rust-serde-1))))
+ (home-page "https://gitlab.gnome.org/danigm/mdl")
+ (synopsis "Data model library")
+ (description "This package provides a data model library to share app state
+between threads and process and persist the data in the filesystem. It
+implements a way to store structs instances in an LMDB database and other
+methods like BTreeMap.")
+ (license license:gpl3)))
+
(define-public rust-measureme-0.7
(package
(name "rust-measureme")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 27/46] gnu: Add rust-letter-avatar-1.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-27-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-1): New variable.
---
gnu/packages/crates-gtk.scm | 43 +++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)

Toggle diff (56 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 99fc6fe451..a0d55fa8bd 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1603,6 +1603,49 @@ GStreamer.")
converts raw links to http links and strips unwanted tags.")
(license license:gpl3)))
+(define-public rust-letter-avatar-1
+ (package
+ (name "rust-letter-avatar")
+ (version "1.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0if2mihpxn4xissv68qciqn5vywy0kl0sx9hcyrhd70s2fyn09k6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pangocairo" ,rust-pangocairo-0.10)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/jsparber/letter-avatar")
+ (synopsis "Generate user avatars")
+ (description "This package provides a user avatar generator based, that
+renders username initials.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 34/46] gnu: Add rust-aes-soft-0.6.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-34-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-soft-0.6): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 422c74b307..7223c40aee 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1238,6 +1238,30 @@ acceleration.")
("rust-subtle" ,rust-subtle-2)
("rust-zeroize" ,rust-zeroize-1))))))
+(define-public rust-aes-soft-0.6
+ (package
+ (name "rust-aes-soft")
+ (version "0.6.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes-soft" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0wj0fi2pvmlw09yvb1aqf0mfkzrfxmjsf90finijh255ir4wf55y"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Bit-sliced implementation of AES (Rijndael) block ciphers")
+ (description "This package provides a bit-sliced implementation of
+AES (Rijndael) block ciphers.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-soft-0.4
(package
(name "rust-aes-soft")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 35/46] gnu: Add rust-aesni-0.10.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-35-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aesni-0.10): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7223c40aee..4088cfeb30 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1307,6 +1307,31 @@ AES (Rijndael) block ciphers.")
("rust-byteorder" ,rust-byteorder-1)
("rust-opaque-debug" ,rust-opaque-debug-0.2))))))
+(define-public rust-aesni-0.10
+ (package
+ (name "rust-aesni")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aesni" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1kmh07fp9hbi1aa8dr2rybbgw8vqz6hjmk34c4w7sbscx7si2bpa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "AES (Rijndael) block ciphers implementation using AES-NI")
+ (description "This package provides an implementation of AES (Rijndael)
+block ciphers using AES-NI.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aesni-0.7
(package
(name "rust-aesni")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 36/46] gnu: Add rust-aes-0.6.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-36-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-0.6): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 4088cfeb30..8ef5823aeb 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1137,6 +1137,31 @@ with Associated Data (AEAD) algorithms.")
(("rust-generic-array" ,rust-generic-array-0.12)
("rust-heapless" ,rust-heapless-0.5))))))
+(define-public rust-aes-0.6
+ (package
+ (name "rust-aes")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0q85mw70mgr4glza9y9lrs9nxfa1cdcqzfk6wx0smb3623pr2hw8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-aes-soft" ,rust-aes-soft-0.6)
+ ("rust-aesni" ,rust-aesni-0.10)
+ ("rust-cipher" ,rust-cipher-0.2))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Facade for AES (Rijndael) block ciphers implementations")
+ (description "This package provides a facade for AES (Rijndael) block
+ciphers implementations.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-0.4
(package
(name "rust-aes")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 37/46] gnu: Add rust-block-modes-0.7.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-37-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-block-modes-0.7): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8ef5823aeb..0ee85ed735 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -5095,6 +5095,33 @@ algorithms. This package is deprecated. Please use block-cipher instead.")
`(#:cargo-inputs
(("rust-generic-array" ,rust-generic-array-0.8))))))
+(define-public rust-block-modes-0.7
+ (package
+ (name "rust-block-modes")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "block-modes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1w3jc3n7k4xq98b9mfina4wwpg1fq1s3b0mm5whqialb7q3yi82p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-padding" ,rust-block-padding-0.2)
+ ("rust-cipher" ,rust-cipher-0.2))
+ #:cargo-development-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-hex-literal" ,rust-hex-literal-0.2)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Block cipher modes of operation")
+ (description "This packagee provides block cipher operation modes.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-block-padding-0.2
(package
(name "rust-block-padding")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 38/46] gnu: Add rust-hmac-0.10.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-38-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hmac-0.10): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0ee85ed735..224d08f2d8 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17797,8 +17797,38 @@ Derivation Function (HKDF).")
(("rust-digest" ,rust-digest-0.8)
("rust-hmac" ,rust-hmac-0.7))))))
+(define-public rust-hmac-0.10
+ (package
+ (name "rust-hmac")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hmac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "058yxq54x7xn0gk2vy9bl51r32c9z7qlcl2b80bjh3lk3rmiqi61"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.10)
+ ("rust-digest" ,rust-digest-0.9))
+ #:cargo-development-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.8)
+ ("rust-md-5" ,rust-md-5-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))
+ (home-page "https://github.com/RustCrypto/MACs")
+ (synopsis "Generic implementation of Hash-based Message Authentication Code")
+ (description
+ "This package provides a generic implementation of @acronym{HMAC,
+Hash-based Message Authentication Code}.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-hmac-0.8
(package
+ (inherit rust-hmac-0.10)
(name "rust-hmac")
(version "0.8.1")
(source
@@ -17810,7 +17840,6 @@ Derivation Function (HKDF).")
(sha256
(base32
"0h48wc7iysh4xd6ci4prh8bb7nszijrh9w3blaaq8a6cilk8hs0j"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
@@ -17818,13 +17847,7 @@ Derivation Function (HKDF).")
#:cargo-development-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
("rust-md-5" ,rust-md-5-0.9)
- ("rust-sha2" ,rust-sha2-0.9))))
- (home-page "https://github.com/RustCrypto/MACs")
- (synopsis "Generic implementation of Hash-based Message Authentication Code")
- (description
- "This package provides a generic implementation of @acronym{HMAC,
-Hash-based Message Authentication Code}.")
- (license (list license:expat license:asl2.0))))
+ ("rust-sha2" ,rust-sha2-0.9))))))
(define-public rust-hmac-0.7
(package
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 39/46] gnu: Add rust-hkdf-0.10.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-39-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hkdf-0.10): New variable.
---
gnu/packages/crates-io.scm | 38 ++++++++++++++++++++++++++++++++------
1 file changed, 32 insertions(+), 6 deletions(-)

Toggle diff (73 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 224d08f2d8..81a0dce618 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17750,23 +17750,24 @@ compile time.")
`(#:cargo-inputs
(("rust-proc-macro-hack" ,rust-proc-macro-hack-0.4))))))
-(define-public rust-hkdf-0.9
+(define-public rust-hkdf-0.10
(package
(name "rust-hkdf")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "hkdf" version))
- (file-name (string-append name "-" version ".tar.gz"))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ "0kwn3scjvv2x8zc6nz3wrnzxp9shpsdxnjqiyv2r65r3kiijzasi"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-digest" ,rust-digest-0.9)
- ("rust-hmac" ,rust-hmac-0.8))
+ ("rust-hmac" ,rust-hmac-0.10))
#:cargo-development-inputs
(("rust-bencher" ,rust-bencher-0.1)
("rust-crypto-tests" ,rust-crypto-tests-0.5)
@@ -17775,10 +17776,35 @@ compile time.")
("rust-sha2" ,rust-sha2-0.9))))
(home-page "https://github.com/RustCrypto/KDFs/")
(synopsis "HMAC-based Extract-and-Expand Key Derivation Function (HKDF)")
- (description "This package provides a HMAC-based Extract-and-Expand Key
+ (description "This package provides an HMAC-based Extract-and-Expand Key
Derivation Function (HKDF).")
(license (list license:expat license:asl2.0))))
+(define-public rust-hkdf-0.9
+ (package
+ (inherit rust-hkdf-0.10)
+ (name "rust-hkdf")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hkdf" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-digest" ,rust-digest-0.9)
+ ("rust-hmac" ,rust-hmac-0.8))
+ #:cargo-development-inputs
+ (("rust-bencher" ,rust-bencher-0.1)
+ ("rust-crypto-tests" ,rust-crypto-tests-0.5)
+ ("rust-hex" ,rust-hex-0.4)
+ ("rust-sha-1" ,rust-sha-1-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))))
+
(define-public rust-hkdf-0.8
(package
(inherit rust-hkdf-0.9)
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 40/46] gnu: Add rust-dbus-0.2.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-40-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-dbus-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 260e1b8330..be0b08409b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -228,6 +228,46 @@
("rust-x11" ,rust-x11-2)
("rust-pkg-config" ,rust-pkg-config-0.3))))))
+(define-public rust-dbus-0.2
+ (package
+ (name "rust-dbus")
+ (version "0.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dbus" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0b85dl7y396g8xh1xh89wxnb1fvvf840dar9axavfhhhlq7c385l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: fatal warnings are still fatal
+ #:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-tempdir" ,rust-tempdir-0.3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/diwic/dbus-rs")
+ (synopsis "Rust bindings to D-Bus")
+ (description "This package provides Rust bindings to D-Bus, a bus commonly
+used for inter-process communication.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-gdk-0.13
(package
(name "rust-gdk")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 41/46] gnu: Add rust-secret-service-1.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-41-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-secret-service-1): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (55 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index be0b08409b..8a4435e35f 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2057,3 +2057,48 @@ renders username initials.")
("rust-tempfile" ,rust-tempfile-3))))
(inputs
`(("gtk+" ,gtk+)))))
+
+(define-public rust-secret-service-1
+ (package
+ (name "rust-secret-service")
+ (version "1.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "secret-service" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "12hxz35i7sw5xsdldz1c6776fmz98z4dwh5779jis98w61020xbd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: see rust-dbus
+ #:cargo-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-block-modes" ,rust-block-modes-0.7)
+ ("rust-dbus" ,rust-dbus-0.2)
+ ("rust-hkdf" ,rust-hkdf-0.10)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-num" ,rust-num-0.3)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-sha2" ,rust-sha2-0.9))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/hwchen/secret-service-rs.git")
+ (synopsis "Secret Service interface")
+ (description "This package provides a Rust library to interface with
+the Secret Service API")
+ (license (list license:expat license:asl2.0))))
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 42/46] gnu: Add rust-sourceview4-sys-0.2.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-42-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-sys-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (64 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 8a4435e35f..88aa177369 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2102,3 +2102,57 @@ renders username initials.")
(description "This package provides a Rust library to interface with
the Secret Service API")
(license (list license:expat license:asl2.0))))
+
+(define-public rust-sourceview4-sys-0.2
+ (package
+ (name "rust-sourceview4-sys")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "146l7fni9zc68rr1aim5di4mzrk22r8jxb96ww8fgp6f51np690v"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "FFI bindings for GtkSourceView")
+ (description "This package provides FFI bindings for GtkSourceView, version
+4.x.")
+ (license license:lgpl2.1+)))
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 43/46] gnu: Add rust-sourceview4-0.2.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-43-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 59 +++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (69 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 88aa177369..0171a7ff3c 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2156,3 +2156,62 @@ the Secret Service API")
(description "This package provides FFI bindings for GtkSourceView, version
4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-0.2
+ (package
+ (name "rust-sourceview4")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1c35bm98gmn93qralgjlippdjm2d6199j811qgrn1zd4iv3j3kv7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk" ,rust-gtk-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-sourceview4-sys"
+ ,rust-sourceview4-sys-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "API bindings for GtkSourceView")
+ (description "This package provides API bindings for GtkSourceView,
+version 4.x.")
+ (license license:lgpl2.1+)))
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 44/46] gnu: Add rust-sourceview4-for-fractal.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-44-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0171a7ff3c..1ed6502058 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -20,6 +20,7 @@
(define-module (gnu packages crates-gtk)
#:use-module (guix build-system cargo)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
@@ -2215,3 +2216,31 @@ the Secret Service API")
(description "This package provides API bindings for GtkSourceView,
version 4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-for-fractal
+ (package
+ (inherit rust-sourceview4-0.2)
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/World/Rust/sourceview4-rs/")
+ (commit "fa8819fa7ecbe56f44d951656d3825f468915754")))
+ (file-name "rust-sourceview4-0.2.0.tar.gz")
+ (sha256
+ (base32
+ "0aib8385fxdpw79sasfzn6q11sqx3wigkb267if9fb12bagycgpk"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.8))))
+ (properties `((hidden? . #t)))))
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 45/46] gnu: Add rust-letter-avatar-for-fractal.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-45-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 1ed6502058..db1f4573e9 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1687,6 +1687,30 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-letter-avatar-for-fractal
+ (package
+ (inherit rust-letter-avatar-1)
+ (name "rust-letter-avatar")
+ (version "1.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00hnlyckr25h5hvisk90vf88diww6cds140s8cpfhjx4p33kxnm8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.8)
+ ("rust-pango" ,rust-pango-0.8)
+ ("rust-pangocairo" ,rust-pangocairo-0.9)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))))
+ (properties '((hidden? . #t)))))
+
(define-public rust-libhandy-sys-0.5
(package
(name "rust-libhandy-sys")
--
2.30.1
L
L
Leo Prikler wrote on 7 Mar 2021 18:34
[PATCH v3 46/46] gnu: Add fractal.
(address . 44492@debbugs.gnu.org)
20210307173459.3048-46-leo.prikler@student.tugraz.at
* gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/gnome.scm (fractal): New variable.
---
gnu/local.mk | 1 +
gnu/packages/gnome.scm | 142 ++++++++++++++++-
...ractal-switch-from-failure-to-anyhow.patch | 143 ++++++++++++++++++
3 files changed, 285 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch

Toggle diff (320 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 4bb2806811..57b6c40998 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -997,6 +997,7 @@ dist_patch_DATA = \
%D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/fpc-reproducibility.patch \
%D%/packages/patches/fplll-std-fenv.patch \
+ %D%/packages/patches/fractal-switch-from-failure-to-anyhow.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freebayes-devendor-deps.patch \
%D%/packages/patches/freeimage-unbundle.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 5c6d247471..9c1cb17805 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -12103,7 +12103,6 @@ editing environment for translation issues within the GNU gettext/GNOME desktop
world.")
(license license:gpl3+)))
-
(define-public ocrfeeder
(package
(name "ocrfeeder")
@@ -12166,3 +12165,144 @@ world.")
(description "OCRFeeder is a complete Optical Character Recognition and
Document Analysis and Recognition program.")
(license license:gpl3+)))
+
+(define-public fractal
+ (package
+ (name "fractal")
+ (version "4.4.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/GNOME/fractal")
+ (commit version)))
+ (file-name (string-append "fractal-" version))
+ (sha256
+ (base32
+ "1v2aw41gfmixki6g7j7mcav7i7qkn17k7zndvvfv08rgsrvma8qd"))
+ (patches
+ (search-patches
+ "fractal-switch-from-failure-to-anyhow.patch"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:imported-modules
+ (,@%cargo-build-system-modules
+ ,@%meson-build-system-modules)
+ #:modules
+ ((guix build cargo-build-system)
+ (guix build utils)
+ ((guix build meson-build-system) #:prefix meson:))
+ #:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-comrak" ,rust-comrak-0.7)
+ ("rust-directories" ,rust-directories-2)
+ ("rust-dirs" ,rust-dirs-2)
+ ("rust-either" ,rust-either-1)
+ ("rust-fragile" ,rust-fragile-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gettext" ,rust-gettext-rs-0.4)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gspell" ,rust-gspell-0.4)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils" ,rust-gstreamer-pbutils-0.15)
+ ("rust-gstreamer-player" ,rust-gstreamer-player-0.15)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-html2pango" ,rust-html2pango-0.3)
+ ("rust-letter-avatar" ,rust-letter-avatar-for-fractal)
+ ("rust-libhandy" ,rust-libhandy-0.5)
+ ("rust-loggerv" ,rust-loggerv-0.7)
+ ("rust-md5" ,rust-md5-0.7)
+ ("rust-mdl" ,rust-mdl-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-reqwest" ,rust-reqwest-0.10)
+ ("rust-ruma-identifiers" ,rust-ruma-identifiers-0.17)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-secret-service" ,rust-secret-service-1)
+ ("rust-sourceview4" ,rust-sourceview4-for-fractal))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-cargo
+ (lambda* (#:key vendor-dir #:allow-other-keys)
+ (substitute* "fractal-gtk/Cargo.toml"
+ (("git = .*") "")
+ ;; rust-gettext-rs
+ (("branch = \"no-gettext\"") "version = \"0.4.0\"")
+ ;; rust-sourceview4
+ (("rev = \"fa8819fa7ecbe56f44d951656d3825f468915754\"")
+ "version = \"0.2.0\"")
+ ;; rust-either
+ (("rev = \"60c99bc0723491e2dfd42bbe9b485c5f9323e96b\"")
+ "version = \"1.6.0\"")
+ (("\"serde_untagged\"") "\"serde\""))
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ (substitute* "meson.build"
+ (("'Cargo.lock',") ""))
+ (substitute* "scripts/cargo.sh"
+ (("export CARGO_HOME=.*" all)
+ (string-append all "\
+mkdir -p $CARGO_HOME
+cp $1/.cargo/config $CARGO_HOME
+")))
+
+ #t))
+ (add-after 'unpack 'skip-gtk-update-icon-cache
+ (lambda _
+ (substitute* "scripts/meson_post_install.py"
+ (("gtk-update-icon-cache") (which "true")))
+ #t))
+ (add-after 'configure 'configure-harder
+ (lambda* (#:key vendor-dir inputs #:allow-other-keys)
+ (for-each
+ (lambda (d)
+ (copy-recursively
+ (string-append (assoc-ref inputs "rust-sourceview4") "/" d)
+ (string-append vendor-dir "/rust-" d "-0.2.0")))
+ '("sourceview4" "sourceview4-sys"))
+ (delete-file-recursively
+ (car (find-files vendor-dir "fractal.*" #:directories? #t)))
+ #t))
+ (add-after 'patch-cargo-checksums 'really-configure
+ (lambda args
+ (apply (assoc-ref meson:%standard-phases 'configure)
+ #:build-type "release"
+ #:configure-flags '()
+ args)))
+ (replace 'build (assoc-ref meson:%standard-phases 'build))
+ (replace 'check
+ (lambda args
+ ((assoc-ref meson:%standard-phases 'check)
+ #:test-target "test"
+ #:parallel-tests? #t
+ #:tests? #t)))
+ (replace 'install (assoc-ref meson:%standard-phases 'install)))))
+ (native-inputs
+ `(("glib:bin" ,glib "bin")
+ ("gettext" ,gettext-minimal)
+ ("meson" ,meson-for-build)
+ ("ninja" ,ninja)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,gspell)
+ ("gst-editing-services" ,gst-editing-services)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("libhandy" ,libhandy-0.0)
+ ("openssl" ,openssl)))
+ (synopsis "Matrix messaging app for GNOME")
+ (description "Fractal is a Matrix messaging app for GNOME written in Rust.
+Its interface is optimized for collaboration in large groups, such as free
+software projects.")
+ (home-page "https://wiki.gnome.org/Apps/Fractal")
+ (license license:gpl3)))
diff --git a/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
new file mode 100644
index 0000000000..6b830ecf94
--- /dev/null
+++ b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
@@ -0,0 +1,143 @@
+From e4ca9dc5c0f4401f350338e4cd9b0734db9371bf Mon Sep 17 00:00:00 2001
+From: Yuki Okushi <huyuumi.dev@gmail.com>
+Date: Thu, 13 Aug 2020 14:41:50 +0900
+Subject: [PATCH] Switch from failure to anyhow
+
+---
+ Cargo.lock | 8 +++++++-
+ fractal-gtk/Cargo.toml | 2 +-
+ fractal-gtk/src/appop/attach.rs | 2 +-
+ fractal-gtk/src/cache/mod.rs | 2 +-
+ fractal-gtk/src/cache/state.rs | 7 +++----
+ fractal-gtk/src/util.rs | 8 ++++----
+ 6 files changed, 17 insertions(+), 12 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index c0b5e5e2..f26d9787 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -88,6 +88,12 @@ dependencies = [
+ "winapi 0.3.9",
+ ]
+
++[[package]]
++name = "anyhow"
++version = "1.0.32"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6b602bfe940d21c130f3895acd65221e8a61270debe89d628b9cb4e3ccb8569b"
++
+ [[package]]
+ name = "arrayref"
+ version = "0.3.6"
+@@ -580,6 +586,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+ name = "fractal-gtk"
+ version = "4.4.0"
+ dependencies = [
++ "anyhow",
+ "cairo-rs",
+ "chrono",
+ "clap",
+@@ -587,7 +594,6 @@ dependencies = [
+ "directories",
+ "dirs",
+ "either 1.5.99",
+- "failure",
+ "fractal-matrix-api",
+ "fragile",
+ "gdk",
+diff --git a/fractal-gtk/Cargo.toml b/fractal-gtk/Cargo.toml
+index 960f64b5..e1c6a33d 100644
+--- a/fractal-gtk/Cargo.toml
++++ b/fractal-gtk/Cargo.toml
+@@ -6,11 +6,11 @@ workspace = "../"
+ edition = "2018"
+
+ [dependencies]
++anyhow = "1.0.32"
+ clap = "2.33.0"
+ comrak = "0.7.0"
+ directories = "2.0.2"
+ dirs = "2.0.2"
+-failure = "0.1.6"
+ fragile = "1.0.0"
+ gspell = "0.4.0"
+ gdk = "0.12.1"
+diff --git a/fractal-gtk/src/appop/attach.rs b/fractal-gtk/src/appop/attach.rs
+index 3f0813aa..3b5bff4c 100644
+--- a/fractal-gtk/src/appop/attach.rs
++++ b/fractal-gtk/src/appop/attach.rs
+@@ -6,7 +6,7 @@ use std::io::prelude::*;
+ use std::path::PathBuf;
+ use std::sync::{Arc, Mutex};
+
+-use failure::Error;
++use anyhow::Error;
+
+ use gtk::prelude::*;
+
+diff --git a/fractal-gtk/src/cache/mod.rs b/fractal-gtk/src/cache/mod.rs
+index 76942866..8943eac6 100644
+--- a/fractal-gtk/src/cache/mod.rs
++++ b/fractal-gtk/src/cache/mod.rs
+@@ -12,7 +12,7 @@ use std::thread;
+
+ use crate::types::Room;
+ use crate::types::RoomList;
+-use failure::Error;
++use anyhow::Error;
+ use fractal_api::identifiers::{DeviceId, UserId};
+ use std::collections::HashMap;
+ use std::hash::Hash;
+diff --git a/fractal-gtk/src/cache/state.rs b/fractal-gtk/src/cache/state.rs
+index 7cb5372a..0e62c59b 100644
+--- a/fractal-gtk/src/cache/state.rs
++++ b/fractal-gtk/src/cache/state.rs
+@@ -4,8 +4,7 @@ use mdl::Model;
+ use mdl::Store;
+ use serde::{Deserialize, Serialize};
+
+-use failure::err_msg;
+-use failure::Error;
++use anyhow::{anyhow, Error};
+
+ use std::cell::RefCell;
+ use std::fs::remove_dir_all;
+@@ -127,8 +126,8 @@ impl FCache {
+ guard.take();
+
+ let fname = cache_dir_path(None, "cache.mdl")
+- .or_else(|_| Err(err_msg("Can't remove cache file")))?;
+- remove_dir_all(fname).or_else(|_| Err(err_msg("Can't remove cache file")))
++ .or_else(|_| Err(anyhow!("Can't remove cache file")))?;
++ remove_dir_all(fname).or_else(|_| Err(anyhow!("Can't remove cache file")))
+ }
+
+ #[allow(dead_code)]
+diff --git a/fractal-gtk/src/util.rs b/fractal-gtk/src/util.rs
+index 764a8e8e..b2feb12c 100644
+--- a/fractal-gtk/src/util.rs
++++ b/fractal-gtk/src/util.rs
+@@ -1,6 +1,6 @@
+ use crate::globals::CACHE_PATH;
+-use failure::format_err;
+-use failure::Error as FailError;
++use anyhow::anyhow;
++use anyhow::Error as AnyhowError;
+ use gdk::prelude::*;
+ use gdk_pixbuf::Pixbuf;
+ use gio::{Settings, SettingsExt, SettingsSchemaSource};
+@@ -21,9 +21,9 @@ pub fn cache_dir_path(dir: Option<&str>, name: &str) -> Result<PathBuf, IoError>
+ Ok(path.join(name))
+ }
+
+-pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, FailError> {
++pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, AnyhowError> {
+ let image = cairo::ImageSurface::create(cairo::Format::ARgb32, pb.get_width(), pb.get_height())
+- .or_else(|_| Err(format_err!("Cairo Error")))?;
++ .or_else(|_| Err(anyhow!("Cairo Error")))?;
+
+ let g = cairo::Context::new(&image);
+ g.set_source_pixbuf(pb, 0.0, 0.0);
+--
+2.30.1
+
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 01/47] gnu: Add rust-ruma-identifiers-validation-0.1.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-0.1): New
variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index abe4a937e5..bebe80e2b6 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32754,6 +32754,30 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-validation-0.1
+ (package
+ (name "rust-ruma-identifiers-validation")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-validation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nv0zqsq5lhybckvfr5wmcp8pipqfs2hjgn9kvn9w33xacfzs4n1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Validation logic for RUMA")
+ (description "This package provides the validation logic needed by other
+rust-ruma packages.")
+ (license license:expat)))
+
(define-public rust-runtime-0.3
(package
(name "rust-runtime")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 02/47] gnu: Add rust-ruma-identifiers-macros-0.17.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-macros-0.17): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bebe80e2b6..38e4c6d229 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32754,6 +32754,33 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-macros-0.17
+ (package
+ (name "rust-ruma-identifiers-macros")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-macros" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "03p3qp12h4aajixcyk44q2bcid6fa4nmipysvcpy4w5cbak7wvwq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Create Matrix identifiers")
+ (description "This package provides procedural macros for creating Matrix
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-validation-0.1
(package
(name "rust-ruma-identifiers-validation")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 03/47] gnu: Add rust-ruma-identifiers-0.17.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-0.17): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 38e4c6d229..40a48dd6c5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32754,6 +32754,40 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-0.17
+ (package
+ (name "rust-ruma-identifiers")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vjxws5yw1c8lmwc5p036319vwwna1sxb7pkl6lw1pl8rwp0j5sr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-either" ,rust-either-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-ruma-identifiers-macros"
+ ,rust-ruma-identifiers-macros-0.17)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))
+ #:cargo-development-inputs
+ (("rust-matches" ,rust-matches-0.1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Rust types for Matrix resource identifiers")
+ (description "This package provides Rust type bindings for Matrix resource
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-macros-0.17
(package
(name "rust-ruma-identifiers-macros")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 04/47] gnu: Add rust-entities-1.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-entities-1): New variable.
---
gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 40a48dd6c5..25aec64ee6 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12676,6 +12676,27 @@ Standard.")
"Streaming transcoding for encoding_rs.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-entities-1
+ (package
+ (name "rust-entities")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "entities" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnpr0zvj97wm9pnh7fnl74rzaar39hhg65p03cm08bqqgj0lcmm"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page "https://github.com/p-jackson/entities")
+ (synopsis "Raw data for converting HTML entities")
+ (description "This package provides the raw data needed to convert to and
+from HTML entities.")
+ (license license:expat)))
+
(define-public rust-enum-as-inner-0.3
(package
(name "rust-enum-as-inner")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 05/47] gnu: Add rust-twoway-0.2.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-twoway-0.2): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 25aec64ee6..162617c7aa 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -45009,8 +45009,38 @@ design abstracts away all the internals of the WebSocket protocol but still
makes them accessible for those who wants full control over the network.")
(license (list license:expat license:asl2.0))))
+(define-public rust-twoway-0.2
+ (package
+ (name "rust-twoway")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "twoway" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g55kf4rx0q682fvzxdixqihmlbamn5ms2yqvcm92fny21chfh3b"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
+ ("rust-jetscii" ,rust-jetscii-0.3)
+ ("rust-memchr" ,rust-memchr-2)
+ ("rust-unchecked-index"
+ ,rust-unchecked-index-0.2))))
+ (home-page "https://github.com/bluss/twoway")
+ (synopsis "Fast substring search for strings and byte strings")
+ (description
+ "This package provides a fast substring search for strings and byte
+strings.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-twoway-0.1
(package
+ (inherit rust-twoway-0.2)
(name "rust-twoway")
(version "0.1.8")
(source
@@ -45020,20 +45050,13 @@ makes them accessible for those who wants full control over the network.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
("rust-jetscii" ,rust-jetscii-0.3)
("rust-memchr" ,rust-memchr-2)
- ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
- (home-page "https://github.com/bluss/twoway")
- (synopsis "Fast substring search for strings and byte strings")
- (description
- "This package provides a fast substring search for strings and byte
-strings.")
- (license (list license:expat license:asl2.0))))
+ ("rust-unchecked-index" ,rust-unchecked-index-0.2))))))
(define-public rust-typeable-0.1
(package
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 06/47] gnu: Add rust-comrak-0.7.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-6-leo.prikler@student.tugraz.at
* gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/crates-io.scm (rust-comrak-0.7): New variable.
---
gnu/local.mk | 1 +
gnu/packages/crates-io.scm | 44 +++++++++++++++++++
.../rust-comrak-0.7-rustsec-2021-0026.patch | 41 +++++++++++++++++
3 files changed, 86 insertions(+)
create mode 100644 gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch

Toggle diff (116 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 39037d3499..b879131131 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1608,6 +1608,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-1.45-linker-locale.patch \
%D%/packages/patches/rust-1.48-linker-locale.patch \
%D%/packages/patches/rust-bootstrap-stage0-test.patch \
+ %D%/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch \
%D%/packages/patches/rust-coresimd-doctest.patch \
%D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \
%D%/packages/patches/rust-nettle-disable-vendor.patch \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 162617c7aa..77f88dff21 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -7655,6 +7655,50 @@ harness.")
("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-comrak-0.7
+ (package
+ (name "rust-comrak")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "comrak" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07026j0ghwgv5z61fc4l893wwc30krxpsy487rb91wkcag65hw71"))
+ (patches
+ (search-patches
+ "rust-comrak-0.7-rustsec-2021-0026.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "src/tests.rs"
+ (("data:(png|jpeg|gif|webp)" all what)
+ (string-append "data:image/" what)))
+ #t))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-entities" ,rust-entities-1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-twoway" ,rust-twoway-0.2)
+ ("rust-typed-arena" ,rust-typed-arena-1)
+ ("rust-unicode-categories"
+ ,rust-unicode-categories-0.1))
+ #:cargo-development-inputs
+ (("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/kivikakk/comrak")
+ (synopsis "Markdown parser and formatter")
+ (description "This package provides a parser and formatter for Github
+Flavored Markdown, that is compatible with CommonMark.")
+ (license license:bsd-2)))
+
(define-public rust-concurrent-queue-1
(package
(name "rust-concurrent-queue")
diff --git a/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
new file mode 100644
index 0000000000..9a74b7b971
--- /dev/null
+++ b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
@@ -0,0 +1,41 @@
+From 285e9647c6d2f90d8cb7af543b14c986a8efa631 Mon Sep 17 00:00:00 2001
+From: Asherah Connor <ashe@kivikakk.ee>
+Date: Fri, 12 Feb 2021 21:15:29 +1100
+Subject: [PATCH] SECURITY: match unsafe prefixes case-insensitively
+
+Many thanks to Kouhei Morita for reporting this.
+
+Co-authored-by: Kouhei Morita <mrtc0@ssrf.in>
+---
+ src/lexer.pest | 2 +-
+ src/tests.rs | 146 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 147 insertions(+), 1 deletion(-)
+
+diff --git a/src/lexer.pest b/src/lexer.pest
+index e97647c..7f6cd3f 100644
+--- a/src/lexer.pest
++++ b/src/lexer.pest
+@@ -55,4 +55,4 @@ table_start = { "|"? ~ table_marker ~ ("|" ~ table_marker)* ~ "|"? ~ table_space
+ table_cell_end = { "|" ~ table_spacechar* ~ table_newline? }
+ table_row_end = { table_spacechar* ~ table_newline }
+
+-dangerous_url = { "data:" ~ !("png" | "gif" | "jpeg" | "webp") | "javascript:" | "vbscript:" | "file:" }
++dangerous_url = { ^"data:" ~ !(^"image/" ~ (^"png" | ^"gif" | ^"jpeg" | ^"webp")) | ^"javascript:" | ^"vbscript:" | ^"file:" }
+diff --git a/src/tests.rs b/src/tests.rs
+index c61a493..5f3e0cc 100644
+--- a/src/tests.rs
++++ b/src/tests.rs
+@@ -998,3 +998,11 @@ fn description_lists() {
+ ),
+ );
+ }
++
++#[test]
++fn case_insensitive_safety() {
++ html(
++ "[a](javascript:a) [b](Javascript:b) [c](jaVascript:c) [d](data:xyz) [e](Data:xyz) [f](vbscripT:f) [g](FILE:g)\n",
++ "<p><a href=\"\">a</a> <a href=\"\">b</a> <a href=\"\">c</a> <a href=\"\">d</a> <a href=\"\">e</a> <a href=\"\">f</a> <a href=\"\">g</a></p>\n",
++ );
++}
+--
+2.30.1
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 07/47] gnu: Add rust-fragile-1.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-fragile-1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 77f88dff21..fc451ed1da 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14362,6 +14362,26 @@ implementation that is more efficient for smaller hash keys.")
syntax, as used by HTML forms.")
(license (list license:expat license:asl2.0))))
+(define-public rust-fragile-1
+ (package
+ (name "rust-fragile")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fragile" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wlihmkjyhvl5rckal32p010piy1l15s6l81h7z31jcd971kk839"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/mitsuhiko/rust-fragile")
+ (synopsis "Wrapper types for sending non-send values to other threads")
+ (description "This package provides wrapper types for sending non-send
+values to other threads.")
+ (license license:asl2.0)))
+
(define-public rust-fragile-0.3
(package
(name "rust-fragile")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 08/47] gnu: rust-either-1: Update to 1.6.1.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-either-1): Update to 1.6.1.
---
gnu/packages/crates-io.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index fc451ed1da..73c9fcb05e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12374,7 +12374,7 @@ signing, and verification in pure Rust.")
(define-public rust-either-1
(package
(name "rust-either")
- (version "1.5.3")
+ (version "1.6.1")
(source
(origin
(method url-fetch)
@@ -12383,7 +12383,7 @@ signing, and verification in pure Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1qyz1b1acad6w0k5928jw5zaq900zhsk7p8dlcp4hh61w4f6n7xv"))))
+ "0mwl9vngqf5jvrhmhn9x60kr5hivxyjxbmby2pybncxfqhf4z3g7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 09/47] gnu: Add rust-gspell-sys-0.4.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 48 ++++++++++++++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0d72fbf321..09aa79daba 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -26,7 +26,8 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
- #:use-module (gnu packages gtk))
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages pkg-config))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -887,6 +888,51 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-gspell-sys-0.4
+ (package
+ (name "rust-gspell-sys")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Raw C-FFI bindings for gspell")
+ (description "This package provides raw C-FFI bindings for the gspell library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 10/47] gnu: Add rust-gspell-0.4.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 66 ++++++++++++++++++++++++++++++++++++-
1 file changed, 65 insertions(+), 1 deletion(-)

Toggle diff (90 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 09aa79daba..5d66ed1c13 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -23,11 +23,13 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
+ #:use-module (gnu packages aspell)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
- #:use-module (gnu packages pkg-config))
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -933,6 +935,68 @@
(description "This package provides raw C-FFI bindings for the gspell library.")
(license license:gpl3+)))
+(define-public rust-gspell-0.4
+ (package
+ (name "rust-gspell")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10wi6p6dhdqypfqlih18mrl7vgni7y64mrhdh5ymayp4d07djshk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gspell-sys" ,rust-gspell-sys-0.4)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+
+ ;; Allow Enchant and its Aspell backend to find the en_US
+ ;; dictionary.
+ (setenv "ASPELL_DICT_DIR"
+ (string-append (assoc-ref inputs "aspell-dict-en")
+ "/lib/aspell"))
+ #t)))))
+ (native-inputs
+ `(("aspell-dict-en" ,aspell-dict-en)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Rust bindings for gspell")
+ (description "This package provides Rust bindings for the gspell spell
+checking library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 11/47] gnu: Add rust-muldiv-0.2.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-11-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-muldiv-0.2): New variable.
---
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 73c9fcb05e..d54e29edcd 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23534,6 +23534,29 @@ checking.")
"Chaining APIs for both self -> Self and &mut self methods.")
(license license:expat)))
+(define-public rust-muldiv-0.2
+ (package
+ (name "rust-muldiv")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "muldiv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "014jlry2l2ph56mp8knw65637hh49q7fmrraim2bx9vz0a638684"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.9))))
+ (home-page "https://github.com/sdroege/rust-muldiv")
+ (synopsis "Perform combined multiplication and division")
+ (description "This package provides a trait for numeric types to perform
+combined multiplication and division with overflow protection.")
+ (license license:expat)))
+
(define-public rust-multi-default-trait-impl-0.1
(package
(name "rust-multi-default-trait-impl")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 12/47] gnu: Add rust-gstreamer-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-12-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 5d66ed1c13..41cbe597db 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -27,6 +27,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg))
@@ -997,6 +998,46 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-sys-0.8
+ (package
+ (name "rust-gstreamer-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nsk802vlcyi9p93sg60wv8fzb2mq7j52lfdda4va2kxp40xl60x"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to GStreamer")
+ (description "This package provides FFI bindings to libgstreamer-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 13/47] gnu: Add rust-gstreamer-0.15.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-13-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 50 +++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 41cbe597db..f6e1505ce5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -998,6 +998,56 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-0.15
+ (package
+ (name "rust-gstreamer")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qx1fhr9ajms0128ixmi2ncr35llwppdb0z7ximw2vnd2jhn91nf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-muldiv" ,rust-muldiv-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-bytes" ,rust-serde-bytes-0.11)
+ ("rust-serde-derive" ,rust-serde-derive-1))
+ #:cargo-development-inputs
+ (("rust-futures-executor"
+ ,rust-futures-executor-0.3)
+ ("rust-ron" ,rust-ron-0.5)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer")
+ (description "This package provides Rust bindings for GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 14/47] gnu: Add rust-gstreamer-base-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-14-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f6e1505ce5..8fbb78480b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,47 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-sys-0.8
+ (package
+ (name "rust-gstreamer-base-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v9v09jqjrwz87c4r7za3yb6g7had112d8zwjdjmhg2b2x94yf5s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to glibgstbase-1.0")
+ (description "This package provides FFI bindings to libgstbase-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 15/47] gnu: Add rust-gstreamer-video-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-15-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 8fbb78480b..9134a80fdb 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1129,6 +1129,50 @@ checking library.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-sys-0.8
+ (package
+ (name "rust-gstreamer-video-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k5prjimlrm5c68vk6wq1l9y440p5vskrq862rcb9x22z2c44pv1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: ABI mismatch
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstvideo-1.0")
+ (description "This package provides FFI bindings to libgstvideo-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 16/47] gnu: Add rust-gstreamer-player-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-16-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9134a80fdb..79c0463cc5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1089,6 +1089,50 @@ checking library.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-sys-0.8
+ (package
+ (name "rust-gstreamer-player-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g21c7yk1855k5qdyn0hcwa6v1dy9admipy8s7544d7d19rqmhww"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstplayer-1.0")
+ (description "This package provides FFI bindings to libgstplayer-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 17/47] gnu: Add rust-gstreamer-base-0.15.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-17-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 79c0463cc5..7be3276ab7 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,43 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-0.15
+ (package
+ (name "rust-gstreamer-base")
+ (version "0.15.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04hwa85j3w959i025il908bvsx6dyiawkmc0w45hn9kcrisjyma2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Base")
+ (description "This package provides Rust bindings for the base library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-base-sys-0.8
(package
(name "rust-gstreamer-base-sys")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 18/47] gnu: Add rust-gstreamer-video-0.15.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-18-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7be3276ab7..a6c416530d 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1210,6 +1210,50 @@ GStreamer.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-0.15
+ (package
+ (name "rust-gstreamer-video")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jaday8gsmhixv5k78wxcsricmvqfsip486750ad8ih2jjdfdmqa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base" ,rust-gstreamer-base-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer video")
+ (description "This package provides Rust bindings for the video library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-video-sys-0.8
(package
(name "rust-gstreamer-video-sys")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 19/47] gnu: Add rust-gstreamer-player-0.15.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-19-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index a6c416530d..f5e9972653 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1126,6 +1126,46 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-0.15
+ (package
+ (name "rust-gstreamer-player")
+ (version "0.15.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167nv3s6pwr746gjm2i0vd6ygfmbp80hi4wm46lly3jgciy4kcq4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-player-sys"
+ ,rust-gstreamer-player-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video"
+ ,rust-gstreamer-video-0.15)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad))) ; for -lgstplayer-1.0
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer player")
+ (description "This package provides Rust bindings for the player library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-player-sys-0.8
(package
(name "rust-gstreamer-player-sys")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 20/47] gnu: Add rust-gstreamer-audio-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-20-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-audio-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f5e9972653..de4251b515 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,51 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-audio-sys-0.8
+ (package
+ (name "rust-gstreamer-audio-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-audio-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rxw1s57yrw1zsbindaf2sj05df4qh17bshadqfw77y4xr9izjdv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build?
+ #t
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstaudio-1.0")
+ (description "This package provides FFI bindings to libgstaudio-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-base-0.15
(package
(name "rust-gstreamer-base")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 21/47] gnu: Add rust-gstreamer-pbutils-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-21-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index de4251b515..044de7671e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,51 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-sys-0.8
+ (package
+ (name "rust-gstreamer-pbutils-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1s4dgmq9ai1jz5w5vllji8087khw7hja97hii4lgl29figkakdsf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-audio-sys"
+ ,rust-gstreamer-audio-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstpbutils-1.0")
+ (description "This package provides FFI bindings to libgstpbutils-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-player-0.15
(package
(name "rust-gstreamer-player")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 22/47] gnu: Add rust-gstreamer-pbutils-0.15.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-22-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 044de7671e..61dc047ac4 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,43 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-0.15
+ (package
+ (name "rust-gstreamer-pbutils")
+ (version "0.15.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q8hv8i41mwhr84ydwlv7qspf49s5i7pz3lnjwl0l9gyp2anq97d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils-sys"
+ ,rust-gstreamer-pbutils-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer base utils")
+ (description "This package provides Rust bindings for the pb_utils library
+of GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-pbutils-sys-0.8
(package
(name "rust-gstreamer-pbutils-sys")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 23/47] gnu: Add rust-markup5ever-rcdom-0.1.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-23-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-markup5ever-rcdom-0.1): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index d54e29edcd..faacdba674 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22283,6 +22283,35 @@ platform-independently.")
(base32
"08ayl9aqjnmf7ly1ipy6dk3wjvyfn4w51l40jzh1fh984ykldbzi"))))))
+(define-public rust-markup5ever-rcdom-0.1
+ (package
+ (name "rust-markup5ever-rcdom")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "markup5ever_rcdom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0axf6vrms8579lvhbjaj0v7bhs8xb7s26d4sam2g3m6qpi1xl5gh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test files not included in release.
+ #:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-markup5ever" ,rust-markup5ever-0.10)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-xml5ever" ,rust-xml5ever-0.16))
+ #:cargo-development-inputs
+ (("rust-rustc-test" ,rust-rustc-test-0.3))))
+ (home-page "https://github.com/servo/html5ever")
+ (synopsis "html5ever test DOM structure")
+ (description "This package provides a basic DOM structure for use by tests
+in html5ever/xml5ever. It is not supposed to be used in user-facing code.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-match-cfg-0.1
(package
(name "rust-match-cfg")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 24/47] gnu: Add rust-ammonia-3.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-24-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ammonia-3): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index faacdba674..ba7ebf5f0f 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1700,6 +1700,40 @@ options to use calloc or a mutable global variable for pre-zeroed memory.")
be used with the stdlib.")
(license license:bsd-3)))
+(define-public rust-ammonia-3
+ (package
+ (name "rust-ammonia")
+ (version "3.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ammonia" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fzaj1fx3yhz2qd47gfvz7n8xjrnn37w2hp4qlyzpczlf18wisl9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-matches" ,rust-matches-0.1)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-version-sync" ,rust-version-sync-0.8))))
+ (home-page "https://github.com/rust-ammonia/ammonia")
+ (synopsis "HTML Sanitization")
+ (description "Ammonia is a whitelist-based HTML sanitization library.
+It is designed to prevent cross-site scripting, layout breaking, and
+clickjacking caused by untrusted user-provided HTML being mixed into a larger
+web page.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-android-glue-0.2
(package
(name "rust-android-glue")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 25/47] gnu: Add rust-html2pango-0.3.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-25-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-html2pango-0.3): New variable.
---
gnu/packages/crates-gtk.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 61dc047ac4..917006cb9a 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1569,6 +1569,40 @@ GStreamer.")
(description "This package provides FFI bindings to libgtk-3.")
(license license:expat)))
+(define-public rust-html2pango-0.3
+ (package
+ (name "rust-html2pango")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "html2pango" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0f0phim3bgmq0gcsvm9q8674190d5v5idlsqyxykxjf36d02i6s6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ammonia" ,rust-ammonia-3)
+ ("rust-anyhow" ,rust-anyhow-1)
+ ("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-linkify" ,rust-linkify-0.4)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-regex" ,rust-regex-1))
+ #:cargo-development-inputs
+ (("rust-pretty-assertions"
+ ,rust-pretty-assertions-0.6))))
+ (home-page "https://gitlab.gnome.org/World/html2pango")
+ (synopsis "Convert HTML to pango.")
+ (description "html2pango converts html tags to Pango markup. It also
+converts raw links to http links and strips unwanted tags.")
+ (license license:gpl3)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 26/47] gnu: Add rust-pangocairo-sys-0.11.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-26-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-sys-0.11): New variable.
---
gnu/packages/crates-gtk.scm | 53 ++++++++++++++++++++++++++++++++-----
1 file changed, 47 insertions(+), 6 deletions(-)

Toggle diff (79 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 917006cb9a..99fc6fe451 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1805,8 +1805,54 @@ converts raw links to http links and strips unwanted tags.")
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+(define-public rust-pangocairo-sys-0.11
+ (package
+ (name "rust-pangocairo-sys")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167b1z6ns3lw1dqfq3mnhmknf7isi5vacp2fp0rh4bwcd5zwkk4l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to pangocairo")
+ (description "This package provides FFI bindings to pangocairo.")
+ (license license:expat)))
+
(define-public rust-pangocairo-sys-0.10
(package
+ (inherit rust-pangocairo-sys-0.11)
(name "rust-pangocairo-sys")
(version "0.10.1")
(source
@@ -1818,7 +1864,6 @@ converts raw links to http links and strips unwanted tags.")
(sha256
(base32
"1zlyf5vajarnxg5034b8qa5w5zajv96lfvlgiki26svpmcqip4m3"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
@@ -1830,8 +1875,4 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))
(inputs
- `(("gtk+" ,gtk+)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libgtk-3")
- (description "This package provides FFI bindings to libgtk-3.")
- (license license:expat)))
+ `(("gtk+" ,gtk+)))))
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 27/47] gnu: Add rust-pangocairo-0.10.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-27-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 52 +++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)

Toggle diff (65 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 99fc6fe451..7a0fdd6a59 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1738,6 +1738,58 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-pangocairo-0.10
+ (package
+ (name "rust-pangocairo")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10z8hlc82984nwvy5pnyh95ls9s5r1qrlkpn14zh4pjsl1ksxx80"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.11))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the PangoCairo library")
+ (description
+ "Rust bindings for the PangoCairo library.")
+ (license license:expat)))
+
(define-public rust-pangocairo-0.9
(package
(name "rust-pangocairo")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 28/47] gnu: Add rust-letter-avatar-1.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-28-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-1): New variable.
---
gnu/packages/crates-gtk.scm | 43 +++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)

Toggle diff (56 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7a0fdd6a59..e945adf3af 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1603,6 +1603,49 @@ GStreamer.")
converts raw links to http links and strips unwanted tags.")
(license license:gpl3)))
+(define-public rust-letter-avatar-1
+ (package
+ (name "rust-letter-avatar")
+ (version "1.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0if2mihpxn4xissv68qciqn5vywy0kl0sx9hcyrhd70s2fyn09k6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pangocairo" ,rust-pangocairo-0.10)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/jsparber/letter-avatar")
+ (synopsis "Generate user avatars")
+ (description "This package provides a user avatar generator based, that
+renders username initials.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 29/47] gnu: Add rust-libhandy-sys-0.5.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-29-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-sys-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index e945adf3af..7b91a1d824 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1646,6 +1646,50 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-libhandy-sys-0.5
+ (package
+ (name "rust-libhandy-sys")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ih4ws1d9n4qp4rwgsfilklgchqq3prnrb7h3avik1wi5s2ay1yp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "FFI bindings for libhandy")
+ (description "This package provides raw FFI bindings to libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 30/47] gnu: Add rust-libhandy-0.5.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-30-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7b91a1d824..a4203397d4 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1690,6 +1690,60 @@ renders username initials.")
(description "This package provides raw FFI bindings to libhandy.")
(license license:gpl3+)))
+(define-public rust-libhandy-0.5
+ (package
+ (name "rust-libhandy")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "01zska4i6641pj8d9gcc2kclx5vvsbbyfpv4rn5kahs11rigba9a"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-libhandy-sys" ,rust-libhandy-sys-0.5)
+ ("rust-pango" ,rust-pango-0.8))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "Rust bindings for libhandy")
+ (description "This package provides Rust bindings for libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 31/47] gnu: Add rust-loggerv-0.7.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-31-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-loggerv-0.7): New variable.
---
gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ba7ebf5f0f..bfb31241bf 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21798,6 +21798,41 @@ by inspecting the system for user preference.")
`(#:cargo-inputs
(("rust-log" ,rust-log-0.4))))))
+(define-public rust-loggerv-0.7
+ (package
+ (name "rust-loggerv")
+ (version "0.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "loggerv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0x6k903wpm557fkcbr5isgh4yqkkbzw4fm7hwyy61rvimqaxxn30"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ansi-term" ,rust-ansi-term-0.12)
+ ("rust-atty" ,rust-atty-0.2)
+ ("rust-log" ,rust-log-0.4))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "src/lib.rs"
+ (("assert_eq!\\(logger\\.colors, DEFAULT_COLORS\\);" all)
+ (string-append "// " all)))
+ #t)))))
+ (home-page "https://github.com/clux/loggerv")
+ (synopsis "Logger with colors")
+ (description "This package provides a simple log implementation that logs
+to stdout and stderr with colors.")
+ (license license:expat)))
+
(define-public rust-logtest-2
(package
(name "rust-logtest")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 32/47] gnu: Add rust-lmdb-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-32-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-sys-0.8): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bfb31241bf..8412c8c25b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21545,6 +21545,30 @@ punctuation.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-lmdb-sys-0.8
+ (package
+ (name "rust-lmdb-sys")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1scc28phjcywr9jq78d01g35rig8l2bwydxcdzl5i27yij1r5cym"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cc" ,rust-cc-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "Rust bindings for liblmdb")
+ (description "This package provides Rust bindings for liblmdb.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 33/47] gnu: Add rust-lmdb-0.8.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-33-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-0.8): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8412c8c25b..8fbc7ea584 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21569,6 +21569,35 @@ punctuation.")
(description "This package provides Rust bindings for liblmdb.")
(license license:asl2.0)))
+(define-public rust-lmdb-0.8
+ (package
+ (name "rust-lmdb")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fc54in9i27v1gpxncay5s85lqx27m0r2vyrfylnljfnnpphh2av"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; use of unstable feature
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-lmdb-sys" ,rust-lmdb-sys-0.8))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-rand" ,rust-rand-0.8)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "LMDB wrapper")
+ (description "This package provides an idiomatic Rust wrapper for LMDB.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 34/47] gnu: Add rust-mdl-1.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-34-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-mdl-1): New variable.
---
gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8fbc7ea584..422c74b307 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22692,6 +22692,34 @@ compression function.")
(supported-systems '("x86_64-linux" "i686-linux"))
(license license:expat)))
+(define-public rust-mdl-1
+ (package
+ (name "rust-mdl")
+ (version "1.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "mdl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mavphw0ynhggm310rbldzifcrc507jax1nzwrmj4cz1xv7vw24l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-bincode" ,rust-bincode-1)
+ ("rust-lmdb" ,rust-lmdb-0.8)
+ ("rust-serde" ,rust-serde-1))))
+ (home-page "https://gitlab.gnome.org/danigm/mdl")
+ (synopsis "Data model library")
+ (description "This package provides a data model library to share app state
+between threads and process and persist the data in the filesystem. It
+implements a way to store structs instances in an LMDB database and other
+methods like BTreeMap.")
+ (license license:gpl3)))
+
(define-public rust-measureme-0.7
(package
(name "rust-measureme")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 35/47] gnu: Add rust-aes-soft-0.6.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-35-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-soft-0.6): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 422c74b307..7223c40aee 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1238,6 +1238,30 @@ acceleration.")
("rust-subtle" ,rust-subtle-2)
("rust-zeroize" ,rust-zeroize-1))))))
+(define-public rust-aes-soft-0.6
+ (package
+ (name "rust-aes-soft")
+ (version "0.6.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes-soft" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0wj0fi2pvmlw09yvb1aqf0mfkzrfxmjsf90finijh255ir4wf55y"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Bit-sliced implementation of AES (Rijndael) block ciphers")
+ (description "This package provides a bit-sliced implementation of
+AES (Rijndael) block ciphers.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-soft-0.4
(package
(name "rust-aes-soft")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 36/47] gnu: Add rust-aesni-0.10.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-36-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aesni-0.10): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7223c40aee..4088cfeb30 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1307,6 +1307,31 @@ AES (Rijndael) block ciphers.")
("rust-byteorder" ,rust-byteorder-1)
("rust-opaque-debug" ,rust-opaque-debug-0.2))))))
+(define-public rust-aesni-0.10
+ (package
+ (name "rust-aesni")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aesni" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1kmh07fp9hbi1aa8dr2rybbgw8vqz6hjmk34c4w7sbscx7si2bpa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "AES (Rijndael) block ciphers implementation using AES-NI")
+ (description "This package provides an implementation of AES (Rijndael)
+block ciphers using AES-NI.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aesni-0.7
(package
(name "rust-aesni")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 37/47] gnu: Add rust-aes-0.6.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-37-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-0.6): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 4088cfeb30..8ef5823aeb 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1137,6 +1137,31 @@ with Associated Data (AEAD) algorithms.")
(("rust-generic-array" ,rust-generic-array-0.12)
("rust-heapless" ,rust-heapless-0.5))))))
+(define-public rust-aes-0.6
+ (package
+ (name "rust-aes")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0q85mw70mgr4glza9y9lrs9nxfa1cdcqzfk6wx0smb3623pr2hw8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-aes-soft" ,rust-aes-soft-0.6)
+ ("rust-aesni" ,rust-aesni-0.10)
+ ("rust-cipher" ,rust-cipher-0.2))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Facade for AES (Rijndael) block ciphers implementations")
+ (description "This package provides a facade for AES (Rijndael) block
+ciphers implementations.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-0.4
(package
(name "rust-aes")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 38/47] gnu: Add rust-block-modes-0.7.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-38-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-block-modes-0.7): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8ef5823aeb..0ee85ed735 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -5095,6 +5095,33 @@ algorithms. This package is deprecated. Please use block-cipher instead.")
`(#:cargo-inputs
(("rust-generic-array" ,rust-generic-array-0.8))))))
+(define-public rust-block-modes-0.7
+ (package
+ (name "rust-block-modes")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "block-modes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1w3jc3n7k4xq98b9mfina4wwpg1fq1s3b0mm5whqialb7q3yi82p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-padding" ,rust-block-padding-0.2)
+ ("rust-cipher" ,rust-cipher-0.2))
+ #:cargo-development-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-hex-literal" ,rust-hex-literal-0.2)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Block cipher modes of operation")
+ (description "This packagee provides block cipher operation modes.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-block-padding-0.2
(package
(name "rust-block-padding")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 39/47] gnu: Add rust-hmac-0.10.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-39-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hmac-0.10): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0ee85ed735..224d08f2d8 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17797,8 +17797,38 @@ Derivation Function (HKDF).")
(("rust-digest" ,rust-digest-0.8)
("rust-hmac" ,rust-hmac-0.7))))))
+(define-public rust-hmac-0.10
+ (package
+ (name "rust-hmac")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hmac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "058yxq54x7xn0gk2vy9bl51r32c9z7qlcl2b80bjh3lk3rmiqi61"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.10)
+ ("rust-digest" ,rust-digest-0.9))
+ #:cargo-development-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.8)
+ ("rust-md-5" ,rust-md-5-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))
+ (home-page "https://github.com/RustCrypto/MACs")
+ (synopsis "Generic implementation of Hash-based Message Authentication Code")
+ (description
+ "This package provides a generic implementation of @acronym{HMAC,
+Hash-based Message Authentication Code}.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-hmac-0.8
(package
+ (inherit rust-hmac-0.10)
(name "rust-hmac")
(version "0.8.1")
(source
@@ -17810,7 +17840,6 @@ Derivation Function (HKDF).")
(sha256
(base32
"0h48wc7iysh4xd6ci4prh8bb7nszijrh9w3blaaq8a6cilk8hs0j"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
@@ -17818,13 +17847,7 @@ Derivation Function (HKDF).")
#:cargo-development-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
("rust-md-5" ,rust-md-5-0.9)
- ("rust-sha2" ,rust-sha2-0.9))))
- (home-page "https://github.com/RustCrypto/MACs")
- (synopsis "Generic implementation of Hash-based Message Authentication Code")
- (description
- "This package provides a generic implementation of @acronym{HMAC,
-Hash-based Message Authentication Code}.")
- (license (list license:expat license:asl2.0))))
+ ("rust-sha2" ,rust-sha2-0.9))))))
(define-public rust-hmac-0.7
(package
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 40/47] gnu: Add rust-hkdf-0.10.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-40-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hkdf-0.10): New variable.
---
gnu/packages/crates-io.scm | 38 ++++++++++++++++++++++++++++++++------
1 file changed, 32 insertions(+), 6 deletions(-)

Toggle diff (73 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 224d08f2d8..81a0dce618 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -17750,23 +17750,24 @@ compile time.")
`(#:cargo-inputs
(("rust-proc-macro-hack" ,rust-proc-macro-hack-0.4))))))
-(define-public rust-hkdf-0.9
+(define-public rust-hkdf-0.10
(package
(name "rust-hkdf")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "hkdf" version))
- (file-name (string-append name "-" version ".tar.gz"))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ "0kwn3scjvv2x8zc6nz3wrnzxp9shpsdxnjqiyv2r65r3kiijzasi"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-digest" ,rust-digest-0.9)
- ("rust-hmac" ,rust-hmac-0.8))
+ ("rust-hmac" ,rust-hmac-0.10))
#:cargo-development-inputs
(("rust-bencher" ,rust-bencher-0.1)
("rust-crypto-tests" ,rust-crypto-tests-0.5)
@@ -17775,10 +17776,35 @@ compile time.")
("rust-sha2" ,rust-sha2-0.9))))
(home-page "https://github.com/RustCrypto/KDFs/")
(synopsis "HMAC-based Extract-and-Expand Key Derivation Function (HKDF)")
- (description "This package provides a HMAC-based Extract-and-Expand Key
+ (description "This package provides an HMAC-based Extract-and-Expand Key
Derivation Function (HKDF).")
(license (list license:expat license:asl2.0))))
+(define-public rust-hkdf-0.9
+ (package
+ (inherit rust-hkdf-0.10)
+ (name "rust-hkdf")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hkdf" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-digest" ,rust-digest-0.9)
+ ("rust-hmac" ,rust-hmac-0.8))
+ #:cargo-development-inputs
+ (("rust-bencher" ,rust-bencher-0.1)
+ ("rust-crypto-tests" ,rust-crypto-tests-0.5)
+ ("rust-hex" ,rust-hex-0.4)
+ ("rust-sha-1" ,rust-sha-1-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))))
+
(define-public rust-hkdf-0.8
(package
(inherit rust-hkdf-0.9)
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 41/47] gnu: Add rust-dbus-0.2.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-41-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-dbus-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index a4203397d4..b292463108 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -228,6 +228,46 @@
("rust-x11" ,rust-x11-2)
("rust-pkg-config" ,rust-pkg-config-0.3))))))
+(define-public rust-dbus-0.2
+ (package
+ (name "rust-dbus")
+ (version "0.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dbus" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0b85dl7y396g8xh1xh89wxnb1fvvf840dar9axavfhhhlq7c385l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: fatal warnings are still fatal
+ #:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-tempdir" ,rust-tempdir-0.3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/diwic/dbus-rs")
+ (synopsis "Rust bindings to D-Bus")
+ (description "This package provides Rust bindings to D-Bus, a bus commonly
+used for inter-process communication.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-gdk-0.13
(package
(name "rust-gdk")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 42/47] gnu: Add rust-secret-service-1.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-42-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-secret-service-1): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (55 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index b292463108..f03cc8c669 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2109,3 +2109,48 @@ renders username initials.")
("rust-tempfile" ,rust-tempfile-3))))
(inputs
`(("gtk+" ,gtk+)))))
+
+(define-public rust-secret-service-1
+ (package
+ (name "rust-secret-service")
+ (version "1.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "secret-service" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "12hxz35i7sw5xsdldz1c6776fmz98z4dwh5779jis98w61020xbd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: see rust-dbus
+ #:cargo-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-block-modes" ,rust-block-modes-0.7)
+ ("rust-dbus" ,rust-dbus-0.2)
+ ("rust-hkdf" ,rust-hkdf-0.10)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-num" ,rust-num-0.3)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-sha2" ,rust-sha2-0.9))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/hwchen/secret-service-rs.git")
+ (synopsis "Secret Service interface")
+ (description "This package provides a Rust library to interface with
+the Secret Service API")
+ (license (list license:expat license:asl2.0))))
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 43/47] gnu: Add rust-sourceview4-sys-0.2.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-43-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-sys-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (64 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f03cc8c669..d3f9a5c728 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2154,3 +2154,57 @@ renders username initials.")
(description "This package provides a Rust library to interface with
the Secret Service API")
(license (list license:expat license:asl2.0))))
+
+(define-public rust-sourceview4-sys-0.2
+ (package
+ (name "rust-sourceview4-sys")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "146l7fni9zc68rr1aim5di4mzrk22r8jxb96ww8fgp6f51np690v"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "FFI bindings for GtkSourceView")
+ (description "This package provides FFI bindings for GtkSourceView, version
+4.x.")
+ (license license:lgpl2.1+)))
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 44/47] gnu: Add rust-sourceview4-0.2.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-44-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 59 +++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (69 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index d3f9a5c728..0a5defef0b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2208,3 +2208,62 @@ the Secret Service API")
(description "This package provides FFI bindings for GtkSourceView, version
4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-0.2
+ (package
+ (name "rust-sourceview4")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1c35bm98gmn93qralgjlippdjm2d6199j811qgrn1zd4iv3j3kv7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk" ,rust-gtk-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-sourceview4-sys"
+ ,rust-sourceview4-sys-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "API bindings for GtkSourceView")
+ (description "This package provides API bindings for GtkSourceView,
+version 4.x.")
+ (license license:lgpl2.1+)))
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 45/47] gnu: Add rust-sourceview4-for-fractal.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-45-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0a5defef0b..f1dc93e96c 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -20,6 +20,7 @@
(define-module (gnu packages crates-gtk)
#:use-module (guix build-system cargo)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
@@ -2267,3 +2268,31 @@ the Secret Service API")
(description "This package provides API bindings for GtkSourceView,
version 4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-for-fractal
+ (package
+ (inherit rust-sourceview4-0.2)
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/World/Rust/sourceview4-rs/")
+ (commit "fa8819fa7ecbe56f44d951656d3825f468915754")))
+ (file-name "rust-sourceview4-0.2.0.tar.gz")
+ (sha256
+ (base32
+ "0aib8385fxdpw79sasfzn6q11sqx3wigkb267if9fb12bagycgpk"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.8))))
+ (properties `((hidden? . #t)))))
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 46/47] gnu: Add rust-letter-avatar-for-fractal.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-46-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f1dc93e96c..7e24d4c445 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1687,6 +1687,30 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-letter-avatar-for-fractal
+ (package
+ (inherit rust-letter-avatar-1)
+ (name "rust-letter-avatar")
+ (version "1.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00hnlyckr25h5hvisk90vf88diww6cds140s8cpfhjx4p33kxnm8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.8)
+ ("rust-pango" ,rust-pango-0.8)
+ ("rust-pangocairo" ,rust-pangocairo-0.9)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))))
+ (properties '((hidden? . #t)))))
+
(define-public rust-libhandy-sys-0.5
(package
(name "rust-libhandy-sys")
--
2.30.1
L
L
Leo Prikler wrote on 11 Mar 2021 23:07
[PATCH v4 47/47] gnu: Add fractal.
(address . 44492@debbugs.gnu.org)
20210311220756.23132-47-leo.prikler@student.tugraz.at
* gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/gnome.scm (fractal): New variable.
---
gnu/local.mk | 1 +
gnu/packages/gnome.scm | 142 ++++++++++++++++-
...ractal-switch-from-failure-to-anyhow.patch | 143 ++++++++++++++++++
3 files changed, 285 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch

Toggle diff (320 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index b879131131..b121dcfb94 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -999,6 +999,7 @@ dist_patch_DATA = \
%D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/fpc-reproducibility.patch \
%D%/packages/patches/fplll-std-fenv.patch \
+ %D%/packages/patches/fractal-switch-from-failure-to-anyhow.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freebayes-devendor-deps.patch \
%D%/packages/patches/freeimage-unbundle.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 5c6d247471..9c1cb17805 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -12103,7 +12103,6 @@ editing environment for translation issues within the GNU gettext/GNOME desktop
world.")
(license license:gpl3+)))
-
(define-public ocrfeeder
(package
(name "ocrfeeder")
@@ -12166,3 +12165,144 @@ world.")
(description "OCRFeeder is a complete Optical Character Recognition and
Document Analysis and Recognition program.")
(license license:gpl3+)))
+
+(define-public fractal
+ (package
+ (name "fractal")
+ (version "4.4.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/GNOME/fractal")
+ (commit version)))
+ (file-name (string-append "fractal-" version))
+ (sha256
+ (base32
+ "1v2aw41gfmixki6g7j7mcav7i7qkn17k7zndvvfv08rgsrvma8qd"))
+ (patches
+ (search-patches
+ "fractal-switch-from-failure-to-anyhow.patch"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:imported-modules
+ (,@%cargo-build-system-modules
+ ,@%meson-build-system-modules)
+ #:modules
+ ((guix build cargo-build-system)
+ (guix build utils)
+ ((guix build meson-build-system) #:prefix meson:))
+ #:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-comrak" ,rust-comrak-0.7)
+ ("rust-directories" ,rust-directories-2)
+ ("rust-dirs" ,rust-dirs-2)
+ ("rust-either" ,rust-either-1)
+ ("rust-fragile" ,rust-fragile-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gettext" ,rust-gettext-rs-0.4)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gspell" ,rust-gspell-0.4)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils" ,rust-gstreamer-pbutils-0.15)
+ ("rust-gstreamer-player" ,rust-gstreamer-player-0.15)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-html2pango" ,rust-html2pango-0.3)
+ ("rust-letter-avatar" ,rust-letter-avatar-for-fractal)
+ ("rust-libhandy" ,rust-libhandy-0.5)
+ ("rust-loggerv" ,rust-loggerv-0.7)
+ ("rust-md5" ,rust-md5-0.7)
+ ("rust-mdl" ,rust-mdl-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-reqwest" ,rust-reqwest-0.10)
+ ("rust-ruma-identifiers" ,rust-ruma-identifiers-0.17)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-secret-service" ,rust-secret-service-1)
+ ("rust-sourceview4" ,rust-sourceview4-for-fractal))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-cargo
+ (lambda* (#:key vendor-dir #:allow-other-keys)
+ (substitute* "fractal-gtk/Cargo.toml"
+ (("git = .*") "")
+ ;; rust-gettext-rs
+ (("branch = \"no-gettext\"") "version = \"0.4.0\"")
+ ;; rust-sourceview4
+ (("rev = \"fa8819fa7ecbe56f44d951656d3825f468915754\"")
+ "version = \"0.2.0\"")
+ ;; rust-either
+ (("rev = \"60c99bc0723491e2dfd42bbe9b485c5f9323e96b\"")
+ "version = \"1.6.0\"")
+ (("\"serde_untagged\"") "\"serde\""))
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ (substitute* "meson.build"
+ (("'Cargo.lock',") ""))
+ (substitute* "scripts/cargo.sh"
+ (("export CARGO_HOME=.*" all)
+ (string-append all "\
+mkdir -p $CARGO_HOME
+cp $1/.cargo/config $CARGO_HOME
+")))
+
+ #t))
+ (add-after 'unpack 'skip-gtk-update-icon-cache
+ (lambda _
+ (substitute* "scripts/meson_post_install.py"
+ (("gtk-update-icon-cache") (which "true")))
+ #t))
+ (add-after 'configure 'configure-harder
+ (lambda* (#:key vendor-dir inputs #:allow-other-keys)
+ (for-each
+ (lambda (d)
+ (copy-recursively
+ (string-append (assoc-ref inputs "rust-sourceview4") "/" d)
+ (string-append vendor-dir "/rust-" d "-0.2.0")))
+ '("sourceview4" "sourceview4-sys"))
+ (delete-file-recursively
+ (car (find-files vendor-dir "fractal.*" #:directories? #t)))
+ #t))
+ (add-after 'patch-cargo-checksums 'really-configure
+ (lambda args
+ (apply (assoc-ref meson:%standard-phases 'configure)
+ #:build-type "release"
+ #:configure-flags '()
+ args)))
+ (replace 'build (assoc-ref meson:%standard-phases 'build))
+ (replace 'check
+ (lambda args
+ ((assoc-ref meson:%standard-phases 'check)
+ #:test-target "test"
+ #:parallel-tests? #t
+ #:tests? #t)))
+ (replace 'install (assoc-ref meson:%standard-phases 'install)))))
+ (native-inputs
+ `(("glib:bin" ,glib "bin")
+ ("gettext" ,gettext-minimal)
+ ("meson" ,meson-for-build)
+ ("ninja" ,ninja)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,gspell)
+ ("gst-editing-services" ,gst-editing-services)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("libhandy" ,libhandy-0.0)
+ ("openssl" ,openssl)))
+ (synopsis "Matrix messaging app for GNOME")
+ (description "Fractal is a Matrix messaging app for GNOME written in Rust.
+Its interface is optimized for collaboration in large groups, such as free
+software projects.")
+ (home-page "https://wiki.gnome.org/Apps/Fractal")
+ (license license:gpl3)))
diff --git a/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
new file mode 100644
index 0000000000..6b830ecf94
--- /dev/null
+++ b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
@@ -0,0 +1,143 @@
+From e4ca9dc5c0f4401f350338e4cd9b0734db9371bf Mon Sep 17 00:00:00 2001
+From: Yuki Okushi <huyuumi.dev@gmail.com>
+Date: Thu, 13 Aug 2020 14:41:50 +0900
+Subject: [PATCH] Switch from failure to anyhow
+
+---
+ Cargo.lock | 8 +++++++-
+ fractal-gtk/Cargo.toml | 2 +-
+ fractal-gtk/src/appop/attach.rs | 2 +-
+ fractal-gtk/src/cache/mod.rs | 2 +-
+ fractal-gtk/src/cache/state.rs | 7 +++----
+ fractal-gtk/src/util.rs | 8 ++++----
+ 6 files changed, 17 insertions(+), 12 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index c0b5e5e2..f26d9787 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -88,6 +88,12 @@ dependencies = [
+ "winapi 0.3.9",
+ ]
+
++[[package]]
++name = "anyhow"
++version = "1.0.32"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6b602bfe940d21c130f3895acd65221e8a61270debe89d628b9cb4e3ccb8569b"
++
+ [[package]]
+ name = "arrayref"
+ version = "0.3.6"
+@@ -580,6 +586,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+ name = "fractal-gtk"
+ version = "4.4.0"
+ dependencies = [
++ "anyhow",
+ "cairo-rs",
+ "chrono",
+ "clap",
+@@ -587,7 +594,6 @@ dependencies = [
+ "directories",
+ "dirs",
+ "either 1.5.99",
+- "failure",
+ "fractal-matrix-api",
+ "fragile",
+ "gdk",
+diff --git a/fractal-gtk/Cargo.toml b/fractal-gtk/Cargo.toml
+index 960f64b5..e1c6a33d 100644
+--- a/fractal-gtk/Cargo.toml
++++ b/fractal-gtk/Cargo.toml
+@@ -6,11 +6,11 @@ workspace = "../"
+ edition = "2018"
+
+ [dependencies]
++anyhow = "1.0.32"
+ clap = "2.33.0"
+ comrak = "0.7.0"
+ directories = "2.0.2"
+ dirs = "2.0.2"
+-failure = "0.1.6"
+ fragile = "1.0.0"
+ gspell = "0.4.0"
+ gdk = "0.12.1"
+diff --git a/fractal-gtk/src/appop/attach.rs b/fractal-gtk/src/appop/attach.rs
+index 3f0813aa..3b5bff4c 100644
+--- a/fractal-gtk/src/appop/attach.rs
++++ b/fractal-gtk/src/appop/attach.rs
+@@ -6,7 +6,7 @@ use std::io::prelude::*;
+ use std::path::PathBuf;
+ use std::sync::{Arc, Mutex};
+
+-use failure::Error;
++use anyhow::Error;
+
+ use gtk::prelude::*;
+
+diff --git a/fractal-gtk/src/cache/mod.rs b/fractal-gtk/src/cache/mod.rs
+index 76942866..8943eac6 100644
+--- a/fractal-gtk/src/cache/mod.rs
++++ b/fractal-gtk/src/cache/mod.rs
+@@ -12,7 +12,7 @@ use std::thread;
+
+ use crate::types::Room;
+ use crate::types::RoomList;
+-use failure::Error;
++use anyhow::Error;
+ use fractal_api::identifiers::{DeviceId, UserId};
+ use std::collections::HashMap;
+ use std::hash::Hash;
+diff --git a/fractal-gtk/src/cache/state.rs b/fractal-gtk/src/cache/state.rs
+index 7cb5372a..0e62c59b 100644
+--- a/fractal-gtk/src/cache/state.rs
++++ b/fractal-gtk/src/cache/state.rs
+@@ -4,8 +4,7 @@ use mdl::Model;
+ use mdl::Store;
+ use serde::{Deserialize, Serialize};
+
+-use failure::err_msg;
+-use failure::Error;
++use anyhow::{anyhow, Error};
+
+ use std::cell::RefCell;
+ use std::fs::remove_dir_all;
+@@ -127,8 +126,8 @@ impl FCache {
+ guard.take();
+
+ let fname = cache_dir_path(None, "cache.mdl")
+- .or_else(|_| Err(err_msg("Can't remove cache file")))?;
+- remove_dir_all(fname).or_else(|_| Err(err_msg("Can't remove cache file")))
++ .or_else(|_| Err(anyhow!("Can't remove cache file")))?;
++ remove_dir_all(fname).or_else(|_| Err(anyhow!("Can't remove cache file")))
+ }
+
+ #[allow(dead_code)]
+diff --git a/fractal-gtk/src/util.rs b/fractal-gtk/src/util.rs
+index 764a8e8e..b2feb12c 100644
+--- a/fractal-gtk/src/util.rs
++++ b/fractal-gtk/src/util.rs
+@@ -1,6 +1,6 @@
+ use crate::globals::CACHE_PATH;
+-use failure::format_err;
+-use failure::Error as FailError;
++use anyhow::anyhow;
++use anyhow::Error as AnyhowError;
+ use gdk::prelude::*;
+ use gdk_pixbuf::Pixbuf;
+ use gio::{Settings, SettingsExt, SettingsSchemaSource};
+@@ -21,9 +21,9 @@ pub fn cache_dir_path(dir: Option<&str>, name: &str) -> Result<PathBuf, IoError>
+ Ok(path.join(name))
+ }
+
+-pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, FailError> {
++pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, AnyhowError> {
+ let image = cairo::ImageSurface::create(cairo::Format::ARgb32, pb.get_width(), pb.get_height())
+- .or_else(|_| Err(format_err!("Cairo Error")))?;
++ .or_else(|_| Err(anyhow!("Cairo Error")))?;
+
+ let g = cairo::Context::new(&image);
+ g.set_source_pixbuf(pb, 0.0, 0.0);
+--
+2.30.1
+
--
2.30.1
L
L
Leo Prikler wrote on 15 Mar 2021 16:43
[PATCH v5 01/51] gnu: Add rust-ruma-identifiers-validation-0.1.
(address . 44492@debbugs.gnu.org)
20210315154342.9437-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-0.1): New
variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f6d565e24d..7c3a4109e4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33289,6 +33289,30 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-validation-0.1
+ (package
+ (name "rust-ruma-identifiers-validation")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-validation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nv0zqsq5lhybckvfr5wmcp8pipqfs2hjgn9kvn9w33xacfzs4n1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Validation logic for RUMA")
+ (description "This package provides the validation logic needed by other
+rust-ruma packages.")
+ (license license:expat)))
+
(define-public rust-runtime-0.3
(package
(name "rust-runtime")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 16:43
[PATCH v5 03/51] gnu: Add rust-ruma-identifiers-0.17.
(address . 44492@debbugs.gnu.org)
20210315154342.9437-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-0.17): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9587be832e..bc8a8fbae9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33289,6 +33289,40 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-0.17
+ (package
+ (name "rust-ruma-identifiers")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vjxws5yw1c8lmwc5p036319vwwna1sxb7pkl6lw1pl8rwp0j5sr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-either" ,rust-either-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-ruma-identifiers-macros"
+ ,rust-ruma-identifiers-macros-0.17)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))
+ #:cargo-development-inputs
+ (("rust-matches" ,rust-matches-0.1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Rust types for Matrix resource identifiers")
+ (description "This package provides Rust type bindings for Matrix resource
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-macros-0.17
(package
(name "rust-ruma-identifiers-macros")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 16:43
[PATCH v5 02/51] gnu: Add rust-ruma-identifiers-macros-0.17.
(address . 44492@debbugs.gnu.org)
20210315154342.9437-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-macros-0.17): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7c3a4109e4..9587be832e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33289,6 +33289,33 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-macros-0.17
+ (package
+ (name "rust-ruma-identifiers-macros")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-macros" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "03p3qp12h4aajixcyk44q2bcid6fa4nmipysvcpy4w5cbak7wvwq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Create Matrix identifiers")
+ (description "This package provides procedural macros for creating Matrix
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-validation-0.1
(package
(name "rust-ruma-identifiers-validation")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 16:43
[PATCH v5 04/51] gnu: Add rust-entities-1.
(address . 44492@debbugs.gnu.org)
20210315154342.9437-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-entities-1): New variable.
---
gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bc8a8fbae9..78cdc54718 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12889,6 +12889,27 @@ Standard.")
"Streaming transcoding for encoding_rs.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-entities-1
+ (package
+ (name "rust-entities")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "entities" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnpr0zvj97wm9pnh7fnl74rzaar39hhg65p03cm08bqqgj0lcmm"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page "https://github.com/p-jackson/entities")
+ (synopsis "Raw data for converting HTML entities")
+ (description "This package provides the raw data needed to convert to and
+from HTML entities.")
+ (license license:expat)))
+
(define-public rust-enum-as-inner-0.3
(package
(name "rust-enum-as-inner")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 16:43
[PATCH v5 05/51] gnu: Add rust-twoway-0.2.
(address . 44492@debbugs.gnu.org)
20210315154342.9437-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-twoway-0.2): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 78cdc54718..91bcbacfae 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -45873,8 +45873,38 @@ design abstracts away all the internals of the WebSocket protocol but still
makes them accessible for those who wants full control over the network.")
(license (list license:expat license:asl2.0))))
+(define-public rust-twoway-0.2
+ (package
+ (name "rust-twoway")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "twoway" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g55kf4rx0q682fvzxdixqihmlbamn5ms2yqvcm92fny21chfh3b"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
+ ("rust-jetscii" ,rust-jetscii-0.3)
+ ("rust-memchr" ,rust-memchr-2)
+ ("rust-unchecked-index"
+ ,rust-unchecked-index-0.2))))
+ (home-page "https://github.com/bluss/twoway")
+ (synopsis "Fast substring search for strings and byte strings")
+ (description
+ "This package provides a fast substring search for strings and byte
+strings.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-twoway-0.1
(package
+ (inherit rust-twoway-0.2)
(name "rust-twoway")
(version "0.1.8")
(source
@@ -45884,20 +45914,13 @@ makes them accessible for those who wants full control over the network.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
("rust-jetscii" ,rust-jetscii-0.3)
("rust-memchr" ,rust-memchr-2)
- ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
- (home-page "https://github.com/bluss/twoway")
- (synopsis "Fast substring search for strings and byte strings")
- (description
- "This package provides a fast substring search for strings and byte
-strings.")
- (license (list license:expat license:asl2.0))))
+ ("rust-unchecked-index" ,rust-unchecked-index-0.2))))))
(define-public rust-typeable-0.1
(package
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 16:43
[PATCH v5 07/51] gnu: Add rust-fragile-1.
(address . 44492@debbugs.gnu.org)
20210315154342.9437-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-fragile-1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 17ac4a08b4..212ae82760 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14575,6 +14575,26 @@ implementation that is more efficient for smaller hash keys.")
syntax, as used by HTML forms.")
(license (list license:expat license:asl2.0))))
+(define-public rust-fragile-1
+ (package
+ (name "rust-fragile")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fragile" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wlihmkjyhvl5rckal32p010piy1l15s6l81h7z31jcd971kk839"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/mitsuhiko/rust-fragile")
+ (synopsis "Wrapper types for sending non-send values to other threads")
+ (description "This package provides wrapper types for sending non-send
+values to other threads.")
+ (license license:asl2.0)))
+
(define-public rust-fragile-0.3
(package
(name "rust-fragile")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 16:43
[PATCH v5 06/51] gnu: Add rust-comrak-0.7.
(address . 44492@debbugs.gnu.org)
20210315154342.9437-6-leo.prikler@student.tugraz.at
* gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/crates-io.scm (rust-comrak-0.7): New variable.
---
gnu/local.mk | 1 +
gnu/packages/crates-io.scm | 44 +++++++++++++++++++
.../rust-comrak-0.7-rustsec-2021-0026.patch | 41 +++++++++++++++++
3 files changed, 86 insertions(+)
create mode 100644 gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch

Toggle diff (116 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index cf8849cf59..d07aaeb90b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1642,6 +1642,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-1.45-linker-locale.patch \
%D%/packages/patches/rust-1.48-linker-locale.patch \
%D%/packages/patches/rust-bootstrap-stage0-test.patch \
+ %D%/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch \
%D%/packages/patches/rust-coresimd-doctest.patch \
%D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \
%D%/packages/patches/rust-nettle-disable-vendor.patch \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 91bcbacfae..17ac4a08b4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -7766,6 +7766,50 @@ harness.")
("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-comrak-0.7
+ (package
+ (name "rust-comrak")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "comrak" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07026j0ghwgv5z61fc4l893wwc30krxpsy487rb91wkcag65hw71"))
+ (patches
+ (search-patches
+ "rust-comrak-0.7-rustsec-2021-0026.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "src/tests.rs"
+ (("data:(png|jpeg|gif|webp)" all what)
+ (string-append "data:image/" what)))
+ #t))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-entities" ,rust-entities-1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-twoway" ,rust-twoway-0.2)
+ ("rust-typed-arena" ,rust-typed-arena-1)
+ ("rust-unicode-categories"
+ ,rust-unicode-categories-0.1))
+ #:cargo-development-inputs
+ (("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/kivikakk/comrak")
+ (synopsis "Markdown parser and formatter")
+ (description "This package provides a parser and formatter for Github
+Flavored Markdown, that is compatible with CommonMark.")
+ (license license:bsd-2)))
+
(define-public rust-concurrent-queue-1
(package
(name "rust-concurrent-queue")
diff --git a/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
new file mode 100644
index 0000000000..9a74b7b971
--- /dev/null
+++ b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
@@ -0,0 +1,41 @@
+From 285e9647c6d2f90d8cb7af543b14c986a8efa631 Mon Sep 17 00:00:00 2001
+From: Asherah Connor <ashe@kivikakk.ee>
+Date: Fri, 12 Feb 2021 21:15:29 +1100
+Subject: [PATCH] SECURITY: match unsafe prefixes case-insensitively
+
+Many thanks to Kouhei Morita for reporting this.
+
+Co-authored-by: Kouhei Morita <mrtc0@ssrf.in>
+---
+ src/lexer.pest | 2 +-
+ src/tests.rs | 146 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 147 insertions(+), 1 deletion(-)
+
+diff --git a/src/lexer.pest b/src/lexer.pest
+index e97647c..7f6cd3f 100644
+--- a/src/lexer.pest
++++ b/src/lexer.pest
+@@ -55,4 +55,4 @@ table_start = { "|"? ~ table_marker ~ ("|" ~ table_marker)* ~ "|"? ~ table_space
+ table_cell_end = { "|" ~ table_spacechar* ~ table_newline? }
+ table_row_end = { table_spacechar* ~ table_newline }
+
+-dangerous_url = { "data:" ~ !("png" | "gif" | "jpeg" | "webp") | "javascript:" | "vbscript:" | "file:" }
++dangerous_url = { ^"data:" ~ !(^"image/" ~ (^"png" | ^"gif" | ^"jpeg" | ^"webp")) | ^"javascript:" | ^"vbscript:" | ^"file:" }
+diff --git a/src/tests.rs b/src/tests.rs
+index c61a493..5f3e0cc 100644
+--- a/src/tests.rs
++++ b/src/tests.rs
+@@ -998,3 +998,11 @@ fn description_lists() {
+ ),
+ );
+ }
++
++#[test]
++fn case_insensitive_safety() {
++ html(
++ "[a](javascript:a) [b](Javascript:b) [c](jaVascript:c) [d](data:xyz) [e](Data:xyz) [f](vbscripT:f) [g](FILE:g)\n",
++ "<p><a href=\"\">a</a> <a href=\"\">b</a> <a href=\"\">c</a> <a href=\"\">d</a> <a href=\"\">e</a> <a href=\"\">f</a> <a href=\"\">g</a></p>\n",
++ );
++}
+--
+2.30.1
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 16:43
[PATCH v5 08/51] gnu: rust-either-1: Update to 1.6.1.
(address . 44492@debbugs.gnu.org)
20210315154342.9437-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-either-1): Update to 1.6.1.
---
gnu/packages/crates-io.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 212ae82760..dcd6d89ac2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12587,7 +12587,7 @@ signing, and verification in pure Rust.")
(define-public rust-either-1
(package
(name "rust-either")
- (version "1.5.3")
+ (version "1.6.1")
(source
(origin
(method url-fetch)
@@ -12596,7 +12596,7 @@ signing, and verification in pure Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1qyz1b1acad6w0k5928jw5zaq900zhsk7p8dlcp4hh61w4f6n7xv"))))
+ "0mwl9vngqf5jvrhmhn9x60kr5hivxyjxbmby2pybncxfqhf4z3g7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 16:43
[PATCH v5 09/51] gnu: Add rust-gspell-sys-0.4.
(address . 44492@debbugs.gnu.org)
20210315154342.9437-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 48 ++++++++++++++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0d72fbf321..09aa79daba 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -26,7 +26,8 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
- #:use-module (gnu packages gtk))
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages pkg-config))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -887,6 +888,51 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-gspell-sys-0.4
+ (package
+ (name "rust-gspell-sys")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Raw C-FFI bindings for gspell")
+ (description "This package provides raw C-FFI bindings for the gspell library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 11/51] gnu: Add rust-muldiv-0.2.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-muldiv-0.2): New variable.
---
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 dcd6d89ac2..82f619e249 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23947,6 +23947,29 @@ checking.")
"Chaining APIs for both self -> Self and &mut self methods.")
(license license:expat)))
+(define-public rust-muldiv-0.2
+ (package
+ (name "rust-muldiv")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "muldiv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "014jlry2l2ph56mp8knw65637hh49q7fmrraim2bx9vz0a638684"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.9))))
+ (home-page "https://github.com/sdroege/rust-muldiv")
+ (synopsis "Perform combined multiplication and division")
+ (description "This package provides a trait for numeric types to perform
+combined multiplication and division with overflow protection.")
+ (license license:expat)))
+
(define-public rust-multi-default-trait-impl-0.1
(package
(name "rust-multi-default-trait-impl")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 10/51] gnu: Add rust-gspell-0.4.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 66 ++++++++++++++++++++++++++++++++++++-
1 file changed, 65 insertions(+), 1 deletion(-)

Toggle diff (90 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 09aa79daba..5d66ed1c13 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -23,11 +23,13 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
+ #:use-module (gnu packages aspell)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
- #:use-module (gnu packages pkg-config))
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -933,6 +935,68 @@
(description "This package provides raw C-FFI bindings for the gspell library.")
(license license:gpl3+)))
+(define-public rust-gspell-0.4
+ (package
+ (name "rust-gspell")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10wi6p6dhdqypfqlih18mrl7vgni7y64mrhdh5ymayp4d07djshk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gspell-sys" ,rust-gspell-sys-0.4)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+
+ ;; Allow Enchant and its Aspell backend to find the en_US
+ ;; dictionary.
+ (setenv "ASPELL_DICT_DIR"
+ (string-append (assoc-ref inputs "aspell-dict-en")
+ "/lib/aspell"))
+ #t)))))
+ (native-inputs
+ `(("aspell-dict-en" ,aspell-dict-en)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Rust bindings for gspell")
+ (description "This package provides Rust bindings for the gspell spell
+checking library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 12/51] gnu: Add rust-gstreamer-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 5d66ed1c13..41cbe597db 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -27,6 +27,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg))
@@ -997,6 +998,46 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-sys-0.8
+ (package
+ (name "rust-gstreamer-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nsk802vlcyi9p93sg60wv8fzb2mq7j52lfdda4va2kxp40xl60x"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to GStreamer")
+ (description "This package provides FFI bindings to libgstreamer-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 14/51] gnu: Add rust-gstreamer-base-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f6e1505ce5..8fbb78480b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,47 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-sys-0.8
+ (package
+ (name "rust-gstreamer-base-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v9v09jqjrwz87c4r7za3yb6g7had112d8zwjdjmhg2b2x94yf5s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to glibgstbase-1.0")
+ (description "This package provides FFI bindings to libgstbase-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 15/51] gnu: Add rust-gstreamer-video-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-6-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 8fbb78480b..9134a80fdb 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1129,6 +1129,50 @@ checking library.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-sys-0.8
+ (package
+ (name "rust-gstreamer-video-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k5prjimlrm5c68vk6wq1l9y440p5vskrq862rcb9x22z2c44pv1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: ABI mismatch
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstvideo-1.0")
+ (description "This package provides FFI bindings to libgstvideo-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 16/51] gnu: Add rust-gstreamer-player-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9134a80fdb..79c0463cc5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1089,6 +1089,50 @@ checking library.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-sys-0.8
+ (package
+ (name "rust-gstreamer-player-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g21c7yk1855k5qdyn0hcwa6v1dy9admipy8s7544d7d19rqmhww"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstplayer-1.0")
+ (description "This package provides FFI bindings to libgstplayer-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 17/51] gnu: Add rust-gstreamer-base-0.15.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 79c0463cc5..7be3276ab7 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,43 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-0.15
+ (package
+ (name "rust-gstreamer-base")
+ (version "0.15.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04hwa85j3w959i025il908bvsx6dyiawkmc0w45hn9kcrisjyma2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Base")
+ (description "This package provides Rust bindings for the base library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-base-sys-0.8
(package
(name "rust-gstreamer-base-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 18/51] gnu: Add rust-gstreamer-video-0.15.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7be3276ab7..a6c416530d 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1210,6 +1210,50 @@ GStreamer.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-0.15
+ (package
+ (name "rust-gstreamer-video")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jaday8gsmhixv5k78wxcsricmvqfsip486750ad8ih2jjdfdmqa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base" ,rust-gstreamer-base-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer video")
+ (description "This package provides Rust bindings for the video library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-video-sys-0.8
(package
(name "rust-gstreamer-video-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 19/51] gnu: Add rust-gstreamer-player-0.15.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index a6c416530d..f5e9972653 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1126,6 +1126,46 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-0.15
+ (package
+ (name "rust-gstreamer-player")
+ (version "0.15.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167nv3s6pwr746gjm2i0vd6ygfmbp80hi4wm46lly3jgciy4kcq4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-player-sys"
+ ,rust-gstreamer-player-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video"
+ ,rust-gstreamer-video-0.15)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad))) ; for -lgstplayer-1.0
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer player")
+ (description "This package provides Rust bindings for the player library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-player-sys-0.8
(package
(name "rust-gstreamer-player-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 17:39
[PATCH v5 13/51] gnu: Add rust-gstreamer-0.15.
(address . 44492@debbugs.gnu.org)
20210315163951.13662-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 50 +++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 41cbe597db..f6e1505ce5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -998,6 +998,56 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-0.15
+ (package
+ (name "rust-gstreamer")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qx1fhr9ajms0128ixmi2ncr35llwppdb0z7ximw2vnd2jhn91nf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-muldiv" ,rust-muldiv-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-bytes" ,rust-serde-bytes-0.11)
+ ("rust-serde-derive" ,rust-serde-derive-1))
+ #:cargo-development-inputs
+ (("rust-futures-executor"
+ ,rust-futures-executor-0.3)
+ ("rust-ron" ,rust-ron-0.5)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer")
+ (description "This package provides Rust bindings for GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 01/51] gnu: Add rust-ruma-identifiers-validation-0.1.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-0.1): New
variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f6d565e24d..7c3a4109e4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33289,6 +33289,30 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-validation-0.1
+ (package
+ (name "rust-ruma-identifiers-validation")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-validation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nv0zqsq5lhybckvfr5wmcp8pipqfs2hjgn9kvn9w33xacfzs4n1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Validation logic for RUMA")
+ (description "This package provides the validation logic needed by other
+rust-ruma packages.")
+ (license license:expat)))
+
(define-public rust-runtime-0.3
(package
(name "rust-runtime")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 02/51] gnu: Add rust-ruma-identifiers-macros-0.17.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-macros-0.17): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7c3a4109e4..9587be832e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33289,6 +33289,33 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-macros-0.17
+ (package
+ (name "rust-ruma-identifiers-macros")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-macros" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "03p3qp12h4aajixcyk44q2bcid6fa4nmipysvcpy4w5cbak7wvwq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Create Matrix identifiers")
+ (description "This package provides procedural macros for creating Matrix
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-validation-0.1
(package
(name "rust-ruma-identifiers-validation")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 03/51] gnu: Add rust-ruma-identifiers-0.17.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-0.17): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9587be832e..bc8a8fbae9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33289,6 +33289,40 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-0.17
+ (package
+ (name "rust-ruma-identifiers")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vjxws5yw1c8lmwc5p036319vwwna1sxb7pkl6lw1pl8rwp0j5sr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-either" ,rust-either-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-ruma-identifiers-macros"
+ ,rust-ruma-identifiers-macros-0.17)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))
+ #:cargo-development-inputs
+ (("rust-matches" ,rust-matches-0.1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Rust types for Matrix resource identifiers")
+ (description "This package provides Rust type bindings for Matrix resource
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-macros-0.17
(package
(name "rust-ruma-identifiers-macros")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 04/51] gnu: Add rust-entities-1.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-entities-1): New variable.
---
gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bc8a8fbae9..78cdc54718 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12889,6 +12889,27 @@ Standard.")
"Streaming transcoding for encoding_rs.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-entities-1
+ (package
+ (name "rust-entities")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "entities" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnpr0zvj97wm9pnh7fnl74rzaar39hhg65p03cm08bqqgj0lcmm"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page "https://github.com/p-jackson/entities")
+ (synopsis "Raw data for converting HTML entities")
+ (description "This package provides the raw data needed to convert to and
+from HTML entities.")
+ (license license:expat)))
+
(define-public rust-enum-as-inner-0.3
(package
(name "rust-enum-as-inner")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 05/51] gnu: Add rust-twoway-0.2.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-twoway-0.2): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 78cdc54718..91bcbacfae 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -45873,8 +45873,38 @@ design abstracts away all the internals of the WebSocket protocol but still
makes them accessible for those who wants full control over the network.")
(license (list license:expat license:asl2.0))))
+(define-public rust-twoway-0.2
+ (package
+ (name "rust-twoway")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "twoway" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g55kf4rx0q682fvzxdixqihmlbamn5ms2yqvcm92fny21chfh3b"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
+ ("rust-jetscii" ,rust-jetscii-0.3)
+ ("rust-memchr" ,rust-memchr-2)
+ ("rust-unchecked-index"
+ ,rust-unchecked-index-0.2))))
+ (home-page "https://github.com/bluss/twoway")
+ (synopsis "Fast substring search for strings and byte strings")
+ (description
+ "This package provides a fast substring search for strings and byte
+strings.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-twoway-0.1
(package
+ (inherit rust-twoway-0.2)
(name "rust-twoway")
(version "0.1.8")
(source
@@ -45884,20 +45914,13 @@ makes them accessible for those who wants full control over the network.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
("rust-jetscii" ,rust-jetscii-0.3)
("rust-memchr" ,rust-memchr-2)
- ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
- (home-page "https://github.com/bluss/twoway")
- (synopsis "Fast substring search for strings and byte strings")
- (description
- "This package provides a fast substring search for strings and byte
-strings.")
- (license (list license:expat license:asl2.0))))
+ ("rust-unchecked-index" ,rust-unchecked-index-0.2))))))
(define-public rust-typeable-0.1
(package
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 07/51] gnu: Add rust-fragile-1.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-fragile-1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 17ac4a08b4..212ae82760 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14575,6 +14575,26 @@ implementation that is more efficient for smaller hash keys.")
syntax, as used by HTML forms.")
(license (list license:expat license:asl2.0))))
+(define-public rust-fragile-1
+ (package
+ (name "rust-fragile")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fragile" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wlihmkjyhvl5rckal32p010piy1l15s6l81h7z31jcd971kk839"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/mitsuhiko/rust-fragile")
+ (synopsis "Wrapper types for sending non-send values to other threads")
+ (description "This package provides wrapper types for sending non-send
+values to other threads.")
+ (license license:asl2.0)))
+
(define-public rust-fragile-0.3
(package
(name "rust-fragile")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 08/51] gnu: rust-either-1: Update to 1.6.1.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-either-1): Update to 1.6.1.
---
gnu/packages/crates-io.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 212ae82760..dcd6d89ac2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12587,7 +12587,7 @@ signing, and verification in pure Rust.")
(define-public rust-either-1
(package
(name "rust-either")
- (version "1.5.3")
+ (version "1.6.1")
(source
(origin
(method url-fetch)
@@ -12596,7 +12596,7 @@ signing, and verification in pure Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1qyz1b1acad6w0k5928jw5zaq900zhsk7p8dlcp4hh61w4f6n7xv"))))
+ "0mwl9vngqf5jvrhmhn9x60kr5hivxyjxbmby2pybncxfqhf4z3g7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 06/51] gnu: Add rust-comrak-0.7.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-6-leo.prikler@student.tugraz.at
* gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/crates-io.scm (rust-comrak-0.7): New variable.
---
gnu/local.mk | 1 +
gnu/packages/crates-io.scm | 44 +++++++++++++++++++
.../rust-comrak-0.7-rustsec-2021-0026.patch | 41 +++++++++++++++++
3 files changed, 86 insertions(+)
create mode 100644 gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch

Toggle diff (116 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index cf8849cf59..d07aaeb90b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1642,6 +1642,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-1.45-linker-locale.patch \
%D%/packages/patches/rust-1.48-linker-locale.patch \
%D%/packages/patches/rust-bootstrap-stage0-test.patch \
+ %D%/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch \
%D%/packages/patches/rust-coresimd-doctest.patch \
%D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \
%D%/packages/patches/rust-nettle-disable-vendor.patch \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 91bcbacfae..17ac4a08b4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -7766,6 +7766,50 @@ harness.")
("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-comrak-0.7
+ (package
+ (name "rust-comrak")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "comrak" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07026j0ghwgv5z61fc4l893wwc30krxpsy487rb91wkcag65hw71"))
+ (patches
+ (search-patches
+ "rust-comrak-0.7-rustsec-2021-0026.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "src/tests.rs"
+ (("data:(png|jpeg|gif|webp)" all what)
+ (string-append "data:image/" what)))
+ #t))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-entities" ,rust-entities-1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-twoway" ,rust-twoway-0.2)
+ ("rust-typed-arena" ,rust-typed-arena-1)
+ ("rust-unicode-categories"
+ ,rust-unicode-categories-0.1))
+ #:cargo-development-inputs
+ (("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/kivikakk/comrak")
+ (synopsis "Markdown parser and formatter")
+ (description "This package provides a parser and formatter for Github
+Flavored Markdown, that is compatible with CommonMark.")
+ (license license:bsd-2)))
+
(define-public rust-concurrent-queue-1
(package
(name "rust-concurrent-queue")
diff --git a/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
new file mode 100644
index 0000000000..9a74b7b971
--- /dev/null
+++ b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
@@ -0,0 +1,41 @@
+From 285e9647c6d2f90d8cb7af543b14c986a8efa631 Mon Sep 17 00:00:00 2001
+From: Asherah Connor <ashe@kivikakk.ee>
+Date: Fri, 12 Feb 2021 21:15:29 +1100
+Subject: [PATCH] SECURITY: match unsafe prefixes case-insensitively
+
+Many thanks to Kouhei Morita for reporting this.
+
+Co-authored-by: Kouhei Morita <mrtc0@ssrf.in>
+---
+ src/lexer.pest | 2 +-
+ src/tests.rs | 146 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 147 insertions(+), 1 deletion(-)
+
+diff --git a/src/lexer.pest b/src/lexer.pest
+index e97647c..7f6cd3f 100644
+--- a/src/lexer.pest
++++ b/src/lexer.pest
+@@ -55,4 +55,4 @@ table_start = { "|"? ~ table_marker ~ ("|" ~ table_marker)* ~ "|"? ~ table_space
+ table_cell_end = { "|" ~ table_spacechar* ~ table_newline? }
+ table_row_end = { table_spacechar* ~ table_newline }
+
+-dangerous_url = { "data:" ~ !("png" | "gif" | "jpeg" | "webp") | "javascript:" | "vbscript:" | "file:" }
++dangerous_url = { ^"data:" ~ !(^"image/" ~ (^"png" | ^"gif" | ^"jpeg" | ^"webp")) | ^"javascript:" | ^"vbscript:" | ^"file:" }
+diff --git a/src/tests.rs b/src/tests.rs
+index c61a493..5f3e0cc 100644
+--- a/src/tests.rs
++++ b/src/tests.rs
+@@ -998,3 +998,11 @@ fn description_lists() {
+ ),
+ );
+ }
++
++#[test]
++fn case_insensitive_safety() {
++ html(
++ "[a](javascript:a) [b](Javascript:b) [c](jaVascript:c) [d](data:xyz) [e](Data:xyz) [f](vbscripT:f) [g](FILE:g)\n",
++ "<p><a href=\"\">a</a> <a href=\"\">b</a> <a href=\"\">c</a> <a href=\"\">d</a> <a href=\"\">e</a> <a href=\"\">f</a> <a href=\"\">g</a></p>\n",
++ );
++}
+--
+2.30.1
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 09/51] gnu: Add rust-gspell-sys-0.4.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 48 ++++++++++++++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0d72fbf321..09aa79daba 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -26,7 +26,8 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
- #:use-module (gnu packages gtk))
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages pkg-config))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -887,6 +888,51 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-gspell-sys-0.4
+ (package
+ (name "rust-gspell-sys")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Raw C-FFI bindings for gspell")
+ (description "This package provides raw C-FFI bindings for the gspell library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 10/51] gnu: Add rust-gspell-0.4.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 66 ++++++++++++++++++++++++++++++++++++-
1 file changed, 65 insertions(+), 1 deletion(-)

Toggle diff (90 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 09aa79daba..5d66ed1c13 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -23,11 +23,13 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
+ #:use-module (gnu packages aspell)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
- #:use-module (gnu packages pkg-config))
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -933,6 +935,68 @@
(description "This package provides raw C-FFI bindings for the gspell library.")
(license license:gpl3+)))
+(define-public rust-gspell-0.4
+ (package
+ (name "rust-gspell")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10wi6p6dhdqypfqlih18mrl7vgni7y64mrhdh5ymayp4d07djshk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gspell-sys" ,rust-gspell-sys-0.4)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+
+ ;; Allow Enchant and its Aspell backend to find the en_US
+ ;; dictionary.
+ (setenv "ASPELL_DICT_DIR"
+ (string-append (assoc-ref inputs "aspell-dict-en")
+ "/lib/aspell"))
+ #t)))))
+ (native-inputs
+ `(("aspell-dict-en" ,aspell-dict-en)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Rust bindings for gspell")
+ (description "This package provides Rust bindings for the gspell spell
+checking library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 11/51] gnu: Add rust-muldiv-0.2.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-11-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-muldiv-0.2): New variable.
---
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 dcd6d89ac2..82f619e249 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23947,6 +23947,29 @@ checking.")
"Chaining APIs for both self -> Self and &mut self methods.")
(license license:expat)))
+(define-public rust-muldiv-0.2
+ (package
+ (name "rust-muldiv")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "muldiv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "014jlry2l2ph56mp8knw65637hh49q7fmrraim2bx9vz0a638684"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.9))))
+ (home-page "https://github.com/sdroege/rust-muldiv")
+ (synopsis "Perform combined multiplication and division")
+ (description "This package provides a trait for numeric types to perform
+combined multiplication and division with overflow protection.")
+ (license license:expat)))
+
(define-public rust-multi-default-trait-impl-0.1
(package
(name "rust-multi-default-trait-impl")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 12/51] gnu: Add rust-gstreamer-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-12-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 5d66ed1c13..41cbe597db 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -27,6 +27,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg))
@@ -997,6 +998,46 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-sys-0.8
+ (package
+ (name "rust-gstreamer-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nsk802vlcyi9p93sg60wv8fzb2mq7j52lfdda4va2kxp40xl60x"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to GStreamer")
+ (description "This package provides FFI bindings to libgstreamer-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 13/51] gnu: Add rust-gstreamer-0.15.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-13-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 50 +++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 41cbe597db..f6e1505ce5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -998,6 +998,56 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-0.15
+ (package
+ (name "rust-gstreamer")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qx1fhr9ajms0128ixmi2ncr35llwppdb0z7ximw2vnd2jhn91nf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-muldiv" ,rust-muldiv-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-bytes" ,rust-serde-bytes-0.11)
+ ("rust-serde-derive" ,rust-serde-derive-1))
+ #:cargo-development-inputs
+ (("rust-futures-executor"
+ ,rust-futures-executor-0.3)
+ ("rust-ron" ,rust-ron-0.5)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer")
+ (description "This package provides Rust bindings for GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 14/51] gnu: Add rust-gstreamer-base-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-14-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f6e1505ce5..8fbb78480b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,47 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-sys-0.8
+ (package
+ (name "rust-gstreamer-base-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v9v09jqjrwz87c4r7za3yb6g7had112d8zwjdjmhg2b2x94yf5s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to glibgstbase-1.0")
+ (description "This package provides FFI bindings to libgstbase-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 15/51] gnu: Add rust-gstreamer-video-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-15-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 8fbb78480b..9134a80fdb 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1129,6 +1129,50 @@ checking library.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-sys-0.8
+ (package
+ (name "rust-gstreamer-video-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k5prjimlrm5c68vk6wq1l9y440p5vskrq862rcb9x22z2c44pv1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: ABI mismatch
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstvideo-1.0")
+ (description "This package provides FFI bindings to libgstvideo-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 16/51] gnu: Add rust-gstreamer-player-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-16-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9134a80fdb..79c0463cc5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1089,6 +1089,50 @@ checking library.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-sys-0.8
+ (package
+ (name "rust-gstreamer-player-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g21c7yk1855k5qdyn0hcwa6v1dy9admipy8s7544d7d19rqmhww"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstplayer-1.0")
+ (description "This package provides FFI bindings to libgstplayer-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 17/51] gnu: Add rust-gstreamer-base-0.15.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-17-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 79c0463cc5..7be3276ab7 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,43 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-0.15
+ (package
+ (name "rust-gstreamer-base")
+ (version "0.15.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04hwa85j3w959i025il908bvsx6dyiawkmc0w45hn9kcrisjyma2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Base")
+ (description "This package provides Rust bindings for the base library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-base-sys-0.8
(package
(name "rust-gstreamer-base-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 18/51] gnu: Add rust-gstreamer-video-0.15.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-18-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7be3276ab7..a6c416530d 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1210,6 +1210,50 @@ GStreamer.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-0.15
+ (package
+ (name "rust-gstreamer-video")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jaday8gsmhixv5k78wxcsricmvqfsip486750ad8ih2jjdfdmqa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base" ,rust-gstreamer-base-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer video")
+ (description "This package provides Rust bindings for the video library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-video-sys-0.8
(package
(name "rust-gstreamer-video-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 19/51] gnu: Add rust-gstreamer-player-0.15.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-19-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index a6c416530d..f5e9972653 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1126,6 +1126,46 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-0.15
+ (package
+ (name "rust-gstreamer-player")
+ (version "0.15.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167nv3s6pwr746gjm2i0vd6ygfmbp80hi4wm46lly3jgciy4kcq4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-player-sys"
+ ,rust-gstreamer-player-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video"
+ ,rust-gstreamer-video-0.15)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad))) ; for -lgstplayer-1.0
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer player")
+ (description "This package provides Rust bindings for the player library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-player-sys-0.8
(package
(name "rust-gstreamer-player-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 20/51] gnu: Add rust-gstreamer-audio-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-20-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-audio-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f5e9972653..de4251b515 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,51 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-audio-sys-0.8
+ (package
+ (name "rust-gstreamer-audio-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-audio-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rxw1s57yrw1zsbindaf2sj05df4qh17bshadqfw77y4xr9izjdv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build?
+ #t
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstaudio-1.0")
+ (description "This package provides FFI bindings to libgstaudio-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-base-0.15
(package
(name "rust-gstreamer-base")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 21/51] gnu: Add rust-gstreamer-pbutils-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-21-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index de4251b515..044de7671e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,51 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-sys-0.8
+ (package
+ (name "rust-gstreamer-pbutils-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1s4dgmq9ai1jz5w5vllji8087khw7hja97hii4lgl29figkakdsf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-audio-sys"
+ ,rust-gstreamer-audio-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstpbutils-1.0")
+ (description "This package provides FFI bindings to libgstpbutils-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-player-0.15
(package
(name "rust-gstreamer-player")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 22/51] gnu: Add rust-gstreamer-pbutils-0.15.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-22-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 044de7671e..61dc047ac4 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,43 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-0.15
+ (package
+ (name "rust-gstreamer-pbutils")
+ (version "0.15.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q8hv8i41mwhr84ydwlv7qspf49s5i7pz3lnjwl0l9gyp2anq97d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils-sys"
+ ,rust-gstreamer-pbutils-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer base utils")
+ (description "This package provides Rust bindings for the pb_utils library
+of GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-pbutils-sys-0.8
(package
(name "rust-gstreamer-pbutils-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 23/51] gnu: Add rust-markup5ever-rcdom-0.1.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-23-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-markup5ever-rcdom-0.1): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 82f619e249..1536fa5bca 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22668,6 +22668,35 @@ platform-independently.")
(base32
"08ayl9aqjnmf7ly1ipy6dk3wjvyfn4w51l40jzh1fh984ykldbzi"))))))
+(define-public rust-markup5ever-rcdom-0.1
+ (package
+ (name "rust-markup5ever-rcdom")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "markup5ever_rcdom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0axf6vrms8579lvhbjaj0v7bhs8xb7s26d4sam2g3m6qpi1xl5gh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test files not included in release.
+ #:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-markup5ever" ,rust-markup5ever-0.10)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-xml5ever" ,rust-xml5ever-0.16))
+ #:cargo-development-inputs
+ (("rust-rustc-test" ,rust-rustc-test-0.3))))
+ (home-page "https://github.com/servo/html5ever")
+ (synopsis "html5ever test DOM structure")
+ (description "This package provides a basic DOM structure for use by tests
+in html5ever/xml5ever. It is not supposed to be used in user-facing code.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-match-cfg-0.1
(package
(name "rust-match-cfg")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 24/51] gnu: Add rust-ammonia-3.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-24-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ammonia-3): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 1536fa5bca..b5f2a57c58 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1725,6 +1725,40 @@ options to use calloc or a mutable global variable for pre-zeroed memory.")
be used with the stdlib.")
(license license:bsd-3)))
+(define-public rust-ammonia-3
+ (package
+ (name "rust-ammonia")
+ (version "3.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ammonia" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fzaj1fx3yhz2qd47gfvz7n8xjrnn37w2hp4qlyzpczlf18wisl9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-matches" ,rust-matches-0.1)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-version-sync" ,rust-version-sync-0.8))))
+ (home-page "https://github.com/rust-ammonia/ammonia")
+ (synopsis "HTML Sanitization")
+ (description "Ammonia is a whitelist-based HTML sanitization library.
+It is designed to prevent cross-site scripting, layout breaking, and
+clickjacking caused by untrusted user-provided HTML being mixed into a larger
+web page.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-android-glue-0.2
(package
(name "rust-android-glue")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:13
[PATCH v6 25/51] gnu: Add rust-html2pango-0.3.
(address . 44492@debbugs.gnu.org)
20210315171416.14446-25-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-html2pango-0.3): New variable.
---
gnu/packages/crates-gtk.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 61dc047ac4..917006cb9a 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1569,6 +1569,40 @@ GStreamer.")
(description "This package provides FFI bindings to libgtk-3.")
(license license:expat)))
+(define-public rust-html2pango-0.3
+ (package
+ (name "rust-html2pango")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "html2pango" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0f0phim3bgmq0gcsvm9q8674190d5v5idlsqyxykxjf36d02i6s6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ammonia" ,rust-ammonia-3)
+ ("rust-anyhow" ,rust-anyhow-1)
+ ("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-linkify" ,rust-linkify-0.4)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-regex" ,rust-regex-1))
+ #:cargo-development-inputs
+ (("rust-pretty-assertions"
+ ,rust-pretty-assertions-0.6))))
+ (home-page "https://gitlab.gnome.org/World/html2pango")
+ (synopsis "Convert HTML to pango.")
+ (description "html2pango converts html tags to Pango markup. It also
+converts raw links to http links and strips unwanted tags.")
+ (license license:gpl3)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 01/51] gnu: Add rust-ruma-identifiers-validation-0.1.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-0.1): New
variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f6d565e24d..7c3a4109e4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33289,6 +33289,30 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-validation-0.1
+ (package
+ (name "rust-ruma-identifiers-validation")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-validation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nv0zqsq5lhybckvfr5wmcp8pipqfs2hjgn9kvn9w33xacfzs4n1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Validation logic for RUMA")
+ (description "This package provides the validation logic needed by other
+rust-ruma packages.")
+ (license license:expat)))
+
(define-public rust-runtime-0.3
(package
(name "rust-runtime")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 03/51] gnu: Add rust-ruma-identifiers-0.17.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-0.17): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9587be832e..bc8a8fbae9 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33289,6 +33289,40 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-0.17
+ (package
+ (name "rust-ruma-identifiers")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vjxws5yw1c8lmwc5p036319vwwna1sxb7pkl6lw1pl8rwp0j5sr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-either" ,rust-either-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-ruma-identifiers-macros"
+ ,rust-ruma-identifiers-macros-0.17)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))
+ #:cargo-development-inputs
+ (("rust-matches" ,rust-matches-0.1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Rust types for Matrix resource identifiers")
+ (description "This package provides Rust type bindings for Matrix resource
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-macros-0.17
(package
(name "rust-ruma-identifiers-macros")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 02/51] gnu: Add rust-ruma-identifiers-macros-0.17.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-macros-0.17): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7c3a4109e4..9587be832e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33289,6 +33289,33 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-macros-0.17
+ (package
+ (name "rust-ruma-identifiers-macros")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-macros" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "03p3qp12h4aajixcyk44q2bcid6fa4nmipysvcpy4w5cbak7wvwq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Create Matrix identifiers")
+ (description "This package provides procedural macros for creating Matrix
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-validation-0.1
(package
(name "rust-ruma-identifiers-validation")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 04/51] gnu: Add rust-entities-1.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-entities-1): New variable.
---
gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bc8a8fbae9..78cdc54718 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12889,6 +12889,27 @@ Standard.")
"Streaming transcoding for encoding_rs.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-entities-1
+ (package
+ (name "rust-entities")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "entities" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnpr0zvj97wm9pnh7fnl74rzaar39hhg65p03cm08bqqgj0lcmm"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page "https://github.com/p-jackson/entities")
+ (synopsis "Raw data for converting HTML entities")
+ (description "This package provides the raw data needed to convert to and
+from HTML entities.")
+ (license license:expat)))
+
(define-public rust-enum-as-inner-0.3
(package
(name "rust-enum-as-inner")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 05/51] gnu: Add rust-twoway-0.2.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-twoway-0.2): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 78cdc54718..91bcbacfae 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -45873,8 +45873,38 @@ design abstracts away all the internals of the WebSocket protocol but still
makes them accessible for those who wants full control over the network.")
(license (list license:expat license:asl2.0))))
+(define-public rust-twoway-0.2
+ (package
+ (name "rust-twoway")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "twoway" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g55kf4rx0q682fvzxdixqihmlbamn5ms2yqvcm92fny21chfh3b"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
+ ("rust-jetscii" ,rust-jetscii-0.3)
+ ("rust-memchr" ,rust-memchr-2)
+ ("rust-unchecked-index"
+ ,rust-unchecked-index-0.2))))
+ (home-page "https://github.com/bluss/twoway")
+ (synopsis "Fast substring search for strings and byte strings")
+ (description
+ "This package provides a fast substring search for strings and byte
+strings.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-twoway-0.1
(package
+ (inherit rust-twoway-0.2)
(name "rust-twoway")
(version "0.1.8")
(source
@@ -45884,20 +45914,13 @@ makes them accessible for those who wants full control over the network.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
("rust-jetscii" ,rust-jetscii-0.3)
("rust-memchr" ,rust-memchr-2)
- ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
- (home-page "https://github.com/bluss/twoway")
- (synopsis "Fast substring search for strings and byte strings")
- (description
- "This package provides a fast substring search for strings and byte
-strings.")
- (license (list license:expat license:asl2.0))))
+ ("rust-unchecked-index" ,rust-unchecked-index-0.2))))))
(define-public rust-typeable-0.1
(package
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 06/51] gnu: Add rust-comrak-0.7.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-6-leo.prikler@student.tugraz.at
* gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/crates-io.scm (rust-comrak-0.7): New variable.
---
gnu/local.mk | 1 +
gnu/packages/crates-io.scm | 44 +++++++++++++++++++
.../rust-comrak-0.7-rustsec-2021-0026.patch | 41 +++++++++++++++++
3 files changed, 86 insertions(+)
create mode 100644 gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch

Toggle diff (116 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index cf8849cf59..d07aaeb90b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1642,6 +1642,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-1.45-linker-locale.patch \
%D%/packages/patches/rust-1.48-linker-locale.patch \
%D%/packages/patches/rust-bootstrap-stage0-test.patch \
+ %D%/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch \
%D%/packages/patches/rust-coresimd-doctest.patch \
%D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \
%D%/packages/patches/rust-nettle-disable-vendor.patch \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 91bcbacfae..17ac4a08b4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -7766,6 +7766,50 @@ harness.")
("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-comrak-0.7
+ (package
+ (name "rust-comrak")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "comrak" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07026j0ghwgv5z61fc4l893wwc30krxpsy487rb91wkcag65hw71"))
+ (patches
+ (search-patches
+ "rust-comrak-0.7-rustsec-2021-0026.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "src/tests.rs"
+ (("data:(png|jpeg|gif|webp)" all what)
+ (string-append "data:image/" what)))
+ #t))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-entities" ,rust-entities-1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-twoway" ,rust-twoway-0.2)
+ ("rust-typed-arena" ,rust-typed-arena-1)
+ ("rust-unicode-categories"
+ ,rust-unicode-categories-0.1))
+ #:cargo-development-inputs
+ (("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/kivikakk/comrak")
+ (synopsis "Markdown parser and formatter")
+ (description "This package provides a parser and formatter for Github
+Flavored Markdown, that is compatible with CommonMark.")
+ (license license:bsd-2)))
+
(define-public rust-concurrent-queue-1
(package
(name "rust-concurrent-queue")
diff --git a/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
new file mode 100644
index 0000000000..9a74b7b971
--- /dev/null
+++ b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
@@ -0,0 +1,41 @@
+From 285e9647c6d2f90d8cb7af543b14c986a8efa631 Mon Sep 17 00:00:00 2001
+From: Asherah Connor <ashe@kivikakk.ee>
+Date: Fri, 12 Feb 2021 21:15:29 +1100
+Subject: [PATCH] SECURITY: match unsafe prefixes case-insensitively
+
+Many thanks to Kouhei Morita for reporting this.
+
+Co-authored-by: Kouhei Morita <mrtc0@ssrf.in>
+---
+ src/lexer.pest | 2 +-
+ src/tests.rs | 146 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 147 insertions(+), 1 deletion(-)
+
+diff --git a/src/lexer.pest b/src/lexer.pest
+index e97647c..7f6cd3f 100644
+--- a/src/lexer.pest
++++ b/src/lexer.pest
+@@ -55,4 +55,4 @@ table_start = { "|"? ~ table_marker ~ ("|" ~ table_marker)* ~ "|"? ~ table_space
+ table_cell_end = { "|" ~ table_spacechar* ~ table_newline? }
+ table_row_end = { table_spacechar* ~ table_newline }
+
+-dangerous_url = { "data:" ~ !("png" | "gif" | "jpeg" | "webp") | "javascript:" | "vbscript:" | "file:" }
++dangerous_url = { ^"data:" ~ !(^"image/" ~ (^"png" | ^"gif" | ^"jpeg" | ^"webp")) | ^"javascript:" | ^"vbscript:" | ^"file:" }
+diff --git a/src/tests.rs b/src/tests.rs
+index c61a493..5f3e0cc 100644
+--- a/src/tests.rs
++++ b/src/tests.rs
+@@ -998,3 +998,11 @@ fn description_lists() {
+ ),
+ );
+ }
++
++#[test]
++fn case_insensitive_safety() {
++ html(
++ "[a](javascript:a) [b](Javascript:b) [c](jaVascript:c) [d](data:xyz) [e](Data:xyz) [f](vbscripT:f) [g](FILE:g)\n",
++ "<p><a href=\"\">a</a> <a href=\"\">b</a> <a href=\"\">c</a> <a href=\"\">d</a> <a href=\"\">e</a> <a href=\"\">f</a> <a href=\"\">g</a></p>\n",
++ );
++}
+--
+2.30.1
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 07/51] gnu: Add rust-fragile-1.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-fragile-1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 17ac4a08b4..212ae82760 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14575,6 +14575,26 @@ implementation that is more efficient for smaller hash keys.")
syntax, as used by HTML forms.")
(license (list license:expat license:asl2.0))))
+(define-public rust-fragile-1
+ (package
+ (name "rust-fragile")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fragile" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wlihmkjyhvl5rckal32p010piy1l15s6l81h7z31jcd971kk839"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/mitsuhiko/rust-fragile")
+ (synopsis "Wrapper types for sending non-send values to other threads")
+ (description "This package provides wrapper types for sending non-send
+values to other threads.")
+ (license license:asl2.0)))
+
(define-public rust-fragile-0.3
(package
(name "rust-fragile")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 08/51] gnu: rust-either-1: Update to 1.6.1.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-either-1): Update to 1.6.1.
---
gnu/packages/crates-io.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 212ae82760..dcd6d89ac2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12587,7 +12587,7 @@ signing, and verification in pure Rust.")
(define-public rust-either-1
(package
(name "rust-either")
- (version "1.5.3")
+ (version "1.6.1")
(source
(origin
(method url-fetch)
@@ -12596,7 +12596,7 @@ signing, and verification in pure Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1qyz1b1acad6w0k5928jw5zaq900zhsk7p8dlcp4hh61w4f6n7xv"))))
+ "0mwl9vngqf5jvrhmhn9x60kr5hivxyjxbmby2pybncxfqhf4z3g7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 09/51] gnu: Add rust-gspell-sys-0.4.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 48 ++++++++++++++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0d72fbf321..09aa79daba 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -26,7 +26,8 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
- #:use-module (gnu packages gtk))
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages pkg-config))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -887,6 +888,51 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-gspell-sys-0.4
+ (package
+ (name "rust-gspell-sys")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Raw C-FFI bindings for gspell")
+ (description "This package provides raw C-FFI bindings for the gspell library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 10/51] gnu: Add rust-gspell-0.4.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 66 ++++++++++++++++++++++++++++++++++++-
1 file changed, 65 insertions(+), 1 deletion(-)

Toggle diff (90 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 09aa79daba..5d66ed1c13 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -23,11 +23,13 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
+ #:use-module (gnu packages aspell)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
- #:use-module (gnu packages pkg-config))
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -933,6 +935,68 @@
(description "This package provides raw C-FFI bindings for the gspell library.")
(license license:gpl3+)))
+(define-public rust-gspell-0.4
+ (package
+ (name "rust-gspell")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10wi6p6dhdqypfqlih18mrl7vgni7y64mrhdh5ymayp4d07djshk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gspell-sys" ,rust-gspell-sys-0.4)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+
+ ;; Allow Enchant and its Aspell backend to find the en_US
+ ;; dictionary.
+ (setenv "ASPELL_DICT_DIR"
+ (string-append (assoc-ref inputs "aspell-dict-en")
+ "/lib/aspell"))
+ #t)))))
+ (native-inputs
+ `(("aspell-dict-en" ,aspell-dict-en)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Rust bindings for gspell")
+ (description "This package provides Rust bindings for the gspell spell
+checking library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 11/51] gnu: Add rust-muldiv-0.2.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-11-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-muldiv-0.2): New variable.
---
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 dcd6d89ac2..82f619e249 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23947,6 +23947,29 @@ checking.")
"Chaining APIs for both self -> Self and &mut self methods.")
(license license:expat)))
+(define-public rust-muldiv-0.2
+ (package
+ (name "rust-muldiv")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "muldiv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "014jlry2l2ph56mp8knw65637hh49q7fmrraim2bx9vz0a638684"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.9))))
+ (home-page "https://github.com/sdroege/rust-muldiv")
+ (synopsis "Perform combined multiplication and division")
+ (description "This package provides a trait for numeric types to perform
+combined multiplication and division with overflow protection.")
+ (license license:expat)))
+
(define-public rust-multi-default-trait-impl-0.1
(package
(name "rust-multi-default-trait-impl")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:57
[PATCH v7 12/51] gnu: Add rust-gstreamer-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-12-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 5d66ed1c13..41cbe597db 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -27,6 +27,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg))
@@ -997,6 +998,46 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-sys-0.8
+ (package
+ (name "rust-gstreamer-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nsk802vlcyi9p93sg60wv8fzb2mq7j52lfdda4va2kxp40xl60x"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to GStreamer")
+ (description "This package provides FFI bindings to libgstreamer-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 14/51] gnu: Add rust-gstreamer-base-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-14-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f6e1505ce5..8fbb78480b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,47 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-sys-0.8
+ (package
+ (name "rust-gstreamer-base-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v9v09jqjrwz87c4r7za3yb6g7had112d8zwjdjmhg2b2x94yf5s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to glibgstbase-1.0")
+ (description "This package provides FFI bindings to libgstbase-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 15/51] gnu: Add rust-gstreamer-video-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-15-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 8fbb78480b..9134a80fdb 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1129,6 +1129,50 @@ checking library.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-sys-0.8
+ (package
+ (name "rust-gstreamer-video-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k5prjimlrm5c68vk6wq1l9y440p5vskrq862rcb9x22z2c44pv1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: ABI mismatch
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstvideo-1.0")
+ (description "This package provides FFI bindings to libgstvideo-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 16/51] gnu: Add rust-gstreamer-player-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-16-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9134a80fdb..79c0463cc5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1089,6 +1089,50 @@ checking library.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-sys-0.8
+ (package
+ (name "rust-gstreamer-player-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g21c7yk1855k5qdyn0hcwa6v1dy9admipy8s7544d7d19rqmhww"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstplayer-1.0")
+ (description "This package provides FFI bindings to libgstplayer-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 13/51] gnu: Add rust-gstreamer-0.15.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-13-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 50 +++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 41cbe597db..f6e1505ce5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -998,6 +998,56 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-0.15
+ (package
+ (name "rust-gstreamer")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qx1fhr9ajms0128ixmi2ncr35llwppdb0z7ximw2vnd2jhn91nf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-muldiv" ,rust-muldiv-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-bytes" ,rust-serde-bytes-0.11)
+ ("rust-serde-derive" ,rust-serde-derive-1))
+ #:cargo-development-inputs
+ (("rust-futures-executor"
+ ,rust-futures-executor-0.3)
+ ("rust-ron" ,rust-ron-0.5)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer")
+ (description "This package provides Rust bindings for GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 17/51] gnu: Add rust-gstreamer-base-0.15.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-17-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 79c0463cc5..7be3276ab7 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,43 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-0.15
+ (package
+ (name "rust-gstreamer-base")
+ (version "0.15.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04hwa85j3w959i025il908bvsx6dyiawkmc0w45hn9kcrisjyma2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Base")
+ (description "This package provides Rust bindings for the base library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-base-sys-0.8
(package
(name "rust-gstreamer-base-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 18/51] gnu: Add rust-gstreamer-video-0.15.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-18-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7be3276ab7..a6c416530d 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1210,6 +1210,50 @@ GStreamer.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-0.15
+ (package
+ (name "rust-gstreamer-video")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jaday8gsmhixv5k78wxcsricmvqfsip486750ad8ih2jjdfdmqa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base" ,rust-gstreamer-base-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer video")
+ (description "This package provides Rust bindings for the video library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-video-sys-0.8
(package
(name "rust-gstreamer-video-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 19/51] gnu: Add rust-gstreamer-player-0.15.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-19-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index a6c416530d..f5e9972653 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1126,6 +1126,46 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-0.15
+ (package
+ (name "rust-gstreamer-player")
+ (version "0.15.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167nv3s6pwr746gjm2i0vd6ygfmbp80hi4wm46lly3jgciy4kcq4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-player-sys"
+ ,rust-gstreamer-player-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video"
+ ,rust-gstreamer-video-0.15)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad))) ; for -lgstplayer-1.0
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer player")
+ (description "This package provides Rust bindings for the player library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-player-sys-0.8
(package
(name "rust-gstreamer-player-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 20/51] gnu: Add rust-gstreamer-audio-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-20-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-audio-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f5e9972653..de4251b515 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,51 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-audio-sys-0.8
+ (package
+ (name "rust-gstreamer-audio-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-audio-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rxw1s57yrw1zsbindaf2sj05df4qh17bshadqfw77y4xr9izjdv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build?
+ #t
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstaudio-1.0")
+ (description "This package provides FFI bindings to libgstaudio-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-base-0.15
(package
(name "rust-gstreamer-base")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 21/51] gnu: Add rust-gstreamer-pbutils-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-21-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index de4251b515..044de7671e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,51 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-sys-0.8
+ (package
+ (name "rust-gstreamer-pbutils-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1s4dgmq9ai1jz5w5vllji8087khw7hja97hii4lgl29figkakdsf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-audio-sys"
+ ,rust-gstreamer-audio-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstpbutils-1.0")
+ (description "This package provides FFI bindings to libgstpbutils-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-player-0.15
(package
(name "rust-gstreamer-player")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 22/51] gnu: Add rust-gstreamer-pbutils-0.15.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-22-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 044de7671e..61dc047ac4 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,43 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-0.15
+ (package
+ (name "rust-gstreamer-pbutils")
+ (version "0.15.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q8hv8i41mwhr84ydwlv7qspf49s5i7pz3lnjwl0l9gyp2anq97d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils-sys"
+ ,rust-gstreamer-pbutils-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer base utils")
+ (description "This package provides Rust bindings for the pb_utils library
+of GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-pbutils-sys-0.8
(package
(name "rust-gstreamer-pbutils-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 24/51] gnu: Add rust-ammonia-3.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-24-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ammonia-3): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 1536fa5bca..b5f2a57c58 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1725,6 +1725,40 @@ options to use calloc or a mutable global variable for pre-zeroed memory.")
be used with the stdlib.")
(license license:bsd-3)))
+(define-public rust-ammonia-3
+ (package
+ (name "rust-ammonia")
+ (version "3.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ammonia" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fzaj1fx3yhz2qd47gfvz7n8xjrnn37w2hp4qlyzpczlf18wisl9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-matches" ,rust-matches-0.1)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-version-sync" ,rust-version-sync-0.8))))
+ (home-page "https://github.com/rust-ammonia/ammonia")
+ (synopsis "HTML Sanitization")
+ (description "Ammonia is a whitelist-based HTML sanitization library.
+It is designed to prevent cross-site scripting, layout breaking, and
+clickjacking caused by untrusted user-provided HTML being mixed into a larger
+web page.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-android-glue-0.2
(package
(name "rust-android-glue")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 25/51] gnu: Add rust-html2pango-0.3.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-25-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-html2pango-0.3): New variable.
---
gnu/packages/crates-gtk.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 61dc047ac4..917006cb9a 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1569,6 +1569,40 @@ GStreamer.")
(description "This package provides FFI bindings to libgtk-3.")
(license license:expat)))
+(define-public rust-html2pango-0.3
+ (package
+ (name "rust-html2pango")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "html2pango" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0f0phim3bgmq0gcsvm9q8674190d5v5idlsqyxykxjf36d02i6s6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ammonia" ,rust-ammonia-3)
+ ("rust-anyhow" ,rust-anyhow-1)
+ ("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-linkify" ,rust-linkify-0.4)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-regex" ,rust-regex-1))
+ #:cargo-development-inputs
+ (("rust-pretty-assertions"
+ ,rust-pretty-assertions-0.6))))
+ (home-page "https://gitlab.gnome.org/World/html2pango")
+ (synopsis "Convert HTML to pango.")
+ (description "html2pango converts html tags to Pango markup. It also
+converts raw links to http links and strips unwanted tags.")
+ (license license:gpl3)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 26/51] gnu: Add rust-pangocairo-sys-0.11.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-26-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-sys-0.11): New variable.
---
gnu/packages/crates-gtk.scm | 53 ++++++++++++++++++++++++++++++++-----
1 file changed, 47 insertions(+), 6 deletions(-)

Toggle diff (79 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 917006cb9a..99fc6fe451 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1805,8 +1805,54 @@ converts raw links to http links and strips unwanted tags.")
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+(define-public rust-pangocairo-sys-0.11
+ (package
+ (name "rust-pangocairo-sys")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167b1z6ns3lw1dqfq3mnhmknf7isi5vacp2fp0rh4bwcd5zwkk4l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to pangocairo")
+ (description "This package provides FFI bindings to pangocairo.")
+ (license license:expat)))
+
(define-public rust-pangocairo-sys-0.10
(package
+ (inherit rust-pangocairo-sys-0.11)
(name "rust-pangocairo-sys")
(version "0.10.1")
(source
@@ -1818,7 +1864,6 @@ converts raw links to http links and strips unwanted tags.")
(sha256
(base32
"1zlyf5vajarnxg5034b8qa5w5zajv96lfvlgiki26svpmcqip4m3"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
@@ -1830,8 +1875,4 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))
(inputs
- `(("gtk+" ,gtk+)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libgtk-3")
- (description "This package provides FFI bindings to libgtk-3.")
- (license license:expat)))
+ `(("gtk+" ,gtk+)))))
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 27/51] gnu: Add rust-pangocairo-0.10.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-27-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 52 +++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)

Toggle diff (65 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 99fc6fe451..7a0fdd6a59 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1738,6 +1738,58 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-pangocairo-0.10
+ (package
+ (name "rust-pangocairo")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10z8hlc82984nwvy5pnyh95ls9s5r1qrlkpn14zh4pjsl1ksxx80"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.11))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the PangoCairo library")
+ (description
+ "Rust bindings for the PangoCairo library.")
+ (license license:expat)))
+
(define-public rust-pangocairo-0.9
(package
(name "rust-pangocairo")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 28/51] gnu: Add rust-letter-avatar-1.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-28-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-1): New variable.
---
gnu/packages/crates-gtk.scm | 43 +++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)

Toggle diff (56 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7a0fdd6a59..e945adf3af 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1603,6 +1603,49 @@ GStreamer.")
converts raw links to http links and strips unwanted tags.")
(license license:gpl3)))
+(define-public rust-letter-avatar-1
+ (package
+ (name "rust-letter-avatar")
+ (version "1.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0if2mihpxn4xissv68qciqn5vywy0kl0sx9hcyrhd70s2fyn09k6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pangocairo" ,rust-pangocairo-0.10)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/jsparber/letter-avatar")
+ (synopsis "Generate user avatars")
+ (description "This package provides a user avatar generator based, that
+renders username initials.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 29/51] gnu: Add rust-libhandy-sys-0.5.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-29-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-sys-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index e945adf3af..7b91a1d824 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1646,6 +1646,50 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-libhandy-sys-0.5
+ (package
+ (name "rust-libhandy-sys")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ih4ws1d9n4qp4rwgsfilklgchqq3prnrb7h3avik1wi5s2ay1yp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "FFI bindings for libhandy")
+ (description "This package provides raw FFI bindings to libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 23/51] gnu: Add rust-markup5ever-rcdom-0.1.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-23-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-markup5ever-rcdom-0.1): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 82f619e249..1536fa5bca 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22668,6 +22668,35 @@ platform-independently.")
(base32
"08ayl9aqjnmf7ly1ipy6dk3wjvyfn4w51l40jzh1fh984ykldbzi"))))))
+(define-public rust-markup5ever-rcdom-0.1
+ (package
+ (name "rust-markup5ever-rcdom")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "markup5ever_rcdom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0axf6vrms8579lvhbjaj0v7bhs8xb7s26d4sam2g3m6qpi1xl5gh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test files not included in release.
+ #:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-markup5ever" ,rust-markup5ever-0.10)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-xml5ever" ,rust-xml5ever-0.16))
+ #:cargo-development-inputs
+ (("rust-rustc-test" ,rust-rustc-test-0.3))))
+ (home-page "https://github.com/servo/html5ever")
+ (synopsis "html5ever test DOM structure")
+ (description "This package provides a basic DOM structure for use by tests
+in html5ever/xml5ever. It is not supposed to be used in user-facing code.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-match-cfg-0.1
(package
(name "rust-match-cfg")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 30/51] gnu: Add rust-libhandy-0.5.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-30-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 7b91a1d824..a4203397d4 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1690,6 +1690,60 @@ renders username initials.")
(description "This package provides raw FFI bindings to libhandy.")
(license license:gpl3+)))
+(define-public rust-libhandy-0.5
+ (package
+ (name "rust-libhandy")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "01zska4i6641pj8d9gcc2kclx5vvsbbyfpv4rn5kahs11rigba9a"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-libhandy-sys" ,rust-libhandy-sys-0.5)
+ ("rust-pango" ,rust-pango-0.8))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "Rust bindings for libhandy")
+ (description "This package provides Rust bindings for libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 31/51] gnu: Add rust-loggerv-0.7.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-31-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-loggerv-0.7): New variable.
---
gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index b5f2a57c58..672bd12f4d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22183,6 +22183,41 @@ by inspecting the system for user preference.")
`(#:cargo-inputs
(("rust-log" ,rust-log-0.4))))))
+(define-public rust-loggerv-0.7
+ (package
+ (name "rust-loggerv")
+ (version "0.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "loggerv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0x6k903wpm557fkcbr5isgh4yqkkbzw4fm7hwyy61rvimqaxxn30"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ansi-term" ,rust-ansi-term-0.12)
+ ("rust-atty" ,rust-atty-0.2)
+ ("rust-log" ,rust-log-0.4))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "src/lib.rs"
+ (("assert_eq!\\(logger\\.colors, DEFAULT_COLORS\\);" all)
+ (string-append "// " all)))
+ #t)))))
+ (home-page "https://github.com/clux/loggerv")
+ (synopsis "Logger with colors")
+ (description "This package provides a simple log implementation that logs
+to stdout and stderr with colors.")
+ (license license:expat)))
+
(define-public rust-logtest-2
(package
(name "rust-logtest")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 32/51] gnu: Add rust-lmdb-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-32-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-sys-0.8): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 672bd12f4d..cb9f212b8e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21930,6 +21930,30 @@ punctuation.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-lmdb-sys-0.8
+ (package
+ (name "rust-lmdb-sys")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1scc28phjcywr9jq78d01g35rig8l2bwydxcdzl5i27yij1r5cym"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cc" ,rust-cc-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "Rust bindings for liblmdb")
+ (description "This package provides Rust bindings for liblmdb.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 33/51] gnu: Add rust-lmdb-0.8.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-33-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-0.8): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index cb9f212b8e..2363a08aeb 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21954,6 +21954,35 @@ punctuation.")
(description "This package provides Rust bindings for liblmdb.")
(license license:asl2.0)))
+(define-public rust-lmdb-0.8
+ (package
+ (name "rust-lmdb")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fc54in9i27v1gpxncay5s85lqx27m0r2vyrfylnljfnnpphh2av"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; use of unstable feature
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-lmdb-sys" ,rust-lmdb-sys-0.8))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-rand" ,rust-rand-0.8)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "LMDB wrapper")
+ (description "This package provides an idiomatic Rust wrapper for LMDB.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 34/51] gnu: Add rust-mdl-1.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-34-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-mdl-1): New variable.
---
gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2363a08aeb..ce70671131 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23077,6 +23077,34 @@ compression function.")
(supported-systems '("x86_64-linux" "i686-linux"))
(license license:expat)))
+(define-public rust-mdl-1
+ (package
+ (name "rust-mdl")
+ (version "1.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "mdl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mavphw0ynhggm310rbldzifcrc507jax1nzwrmj4cz1xv7vw24l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-bincode" ,rust-bincode-1)
+ ("rust-lmdb" ,rust-lmdb-0.8)
+ ("rust-serde" ,rust-serde-1))))
+ (home-page "https://gitlab.gnome.org/danigm/mdl")
+ (synopsis "Data model library")
+ (description "This package provides a data model library to share app state
+between threads and process and persist the data in the filesystem. It
+implements a way to store structs instances in an LMDB database and other
+methods like BTreeMap.")
+ (license license:gpl3)))
+
(define-public rust-measureme-0.7
(package
(name "rust-measureme")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 35/51] gnu: Add rust-aes-soft-0.6.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-35-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-soft-0.6): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ce70671131..8e49848ea5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1263,6 +1263,30 @@ acceleration.")
("rust-subtle" ,rust-subtle-2)
("rust-zeroize" ,rust-zeroize-1))))))
+(define-public rust-aes-soft-0.6
+ (package
+ (name "rust-aes-soft")
+ (version "0.6.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes-soft" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0wj0fi2pvmlw09yvb1aqf0mfkzrfxmjsf90finijh255ir4wf55y"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Bit-sliced implementation of AES (Rijndael) block ciphers")
+ (description "This package provides a bit-sliced implementation of
+AES (Rijndael) block ciphers.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-soft-0.4
(package
(name "rust-aes-soft")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 36/51] gnu: Add rust-aesni-0.10.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-36-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aesni-0.10): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8e49848ea5..ea1ff15b1d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1332,6 +1332,31 @@ AES (Rijndael) block ciphers.")
("rust-byteorder" ,rust-byteorder-1)
("rust-opaque-debug" ,rust-opaque-debug-0.2))))))
+(define-public rust-aesni-0.10
+ (package
+ (name "rust-aesni")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aesni" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1kmh07fp9hbi1aa8dr2rybbgw8vqz6hjmk34c4w7sbscx7si2bpa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "AES (Rijndael) block ciphers implementation using AES-NI")
+ (description "This package provides an implementation of AES (Rijndael)
+block ciphers using AES-NI.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aesni-0.7
(package
(name "rust-aesni")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 37/51] gnu: Add rust-aes-0.6.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-37-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-0.6): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index ea1ff15b1d..f192479ee7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1162,6 +1162,31 @@ with Associated Data (AEAD) algorithms.")
(("rust-generic-array" ,rust-generic-array-0.12)
("rust-heapless" ,rust-heapless-0.5))))))
+(define-public rust-aes-0.6
+ (package
+ (name "rust-aes")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0q85mw70mgr4glza9y9lrs9nxfa1cdcqzfk6wx0smb3623pr2hw8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-aes-soft" ,rust-aes-soft-0.6)
+ ("rust-aesni" ,rust-aesni-0.10)
+ ("rust-cipher" ,rust-cipher-0.2))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Facade for AES (Rijndael) block ciphers implementations")
+ (description "This package provides a facade for AES (Rijndael) block
+ciphers implementations.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-0.4
(package
(name "rust-aes")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 38/51] gnu: Add rust-block-modes-0.7.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-38-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-block-modes-0.7): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f192479ee7..b9ac0e1915 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -5206,6 +5206,33 @@ algorithms. This package is deprecated. Please use block-cipher instead.")
`(#:cargo-inputs
(("rust-generic-array" ,rust-generic-array-0.8))))))
+(define-public rust-block-modes-0.7
+ (package
+ (name "rust-block-modes")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "block-modes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1w3jc3n7k4xq98b9mfina4wwpg1fq1s3b0mm5whqialb7q3yi82p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-padding" ,rust-block-padding-0.2)
+ ("rust-cipher" ,rust-cipher-0.2))
+ #:cargo-development-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-hex-literal" ,rust-hex-literal-0.2)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Block cipher modes of operation")
+ (description "This packagee provides block cipher operation modes.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-block-padding-0.2
(package
(name "rust-block-padding")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 39/51] gnu: Add rust-hmac-0.10.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-39-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hmac-0.10): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index b9ac0e1915..e490987c7c 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -18060,8 +18060,38 @@ Derivation Function (HKDF).")
(("rust-digest" ,rust-digest-0.8)
("rust-hmac" ,rust-hmac-0.7))))))
+(define-public rust-hmac-0.10
+ (package
+ (name "rust-hmac")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hmac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "058yxq54x7xn0gk2vy9bl51r32c9z7qlcl2b80bjh3lk3rmiqi61"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.10)
+ ("rust-digest" ,rust-digest-0.9))
+ #:cargo-development-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.8)
+ ("rust-md-5" ,rust-md-5-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))
+ (home-page "https://github.com/RustCrypto/MACs")
+ (synopsis "Generic implementation of Hash-based Message Authentication Code")
+ (description
+ "This package provides a generic implementation of @acronym{HMAC,
+Hash-based Message Authentication Code}.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-hmac-0.8
(package
+ (inherit rust-hmac-0.10)
(name "rust-hmac")
(version "0.8.1")
(source
@@ -18073,7 +18103,6 @@ Derivation Function (HKDF).")
(sha256
(base32
"0h48wc7iysh4xd6ci4prh8bb7nszijrh9w3blaaq8a6cilk8hs0j"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
@@ -18081,13 +18110,7 @@ Derivation Function (HKDF).")
#:cargo-development-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
("rust-md-5" ,rust-md-5-0.9)
- ("rust-sha2" ,rust-sha2-0.9))))
- (home-page "https://github.com/RustCrypto/MACs")
- (synopsis "Generic implementation of Hash-based Message Authentication Code")
- (description
- "This package provides a generic implementation of @acronym{HMAC,
-Hash-based Message Authentication Code}.")
- (license (list license:expat license:asl2.0))))
+ ("rust-sha2" ,rust-sha2-0.9))))))
(define-public rust-hmac-0.7
(package
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 40/51] gnu: Add rust-hkdf-0.10.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-40-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hkdf-0.10): New variable.
---
gnu/packages/crates-io.scm | 38 ++++++++++++++++++++++++++++++++------
1 file changed, 32 insertions(+), 6 deletions(-)

Toggle diff (73 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e490987c7c..06ef9ea979 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -18013,23 +18013,24 @@ compile time.")
`(#:cargo-inputs
(("rust-proc-macro-hack" ,rust-proc-macro-hack-0.4))))))
-(define-public rust-hkdf-0.9
+(define-public rust-hkdf-0.10
(package
(name "rust-hkdf")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "hkdf" version))
- (file-name (string-append name "-" version ".tar.gz"))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ "0kwn3scjvv2x8zc6nz3wrnzxp9shpsdxnjqiyv2r65r3kiijzasi"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-digest" ,rust-digest-0.9)
- ("rust-hmac" ,rust-hmac-0.8))
+ ("rust-hmac" ,rust-hmac-0.10))
#:cargo-development-inputs
(("rust-bencher" ,rust-bencher-0.1)
("rust-crypto-tests" ,rust-crypto-tests-0.5)
@@ -18038,10 +18039,35 @@ compile time.")
("rust-sha2" ,rust-sha2-0.9))))
(home-page "https://github.com/RustCrypto/KDFs/")
(synopsis "HMAC-based Extract-and-Expand Key Derivation Function (HKDF)")
- (description "This package provides a HMAC-based Extract-and-Expand Key
+ (description "This package provides an HMAC-based Extract-and-Expand Key
Derivation Function (HKDF).")
(license (list license:expat license:asl2.0))))
+(define-public rust-hkdf-0.9
+ (package
+ (inherit rust-hkdf-0.10)
+ (name "rust-hkdf")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hkdf" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-digest" ,rust-digest-0.9)
+ ("rust-hmac" ,rust-hmac-0.8))
+ #:cargo-development-inputs
+ (("rust-bencher" ,rust-bencher-0.1)
+ ("rust-crypto-tests" ,rust-crypto-tests-0.5)
+ ("rust-hex" ,rust-hex-0.4)
+ ("rust-sha-1" ,rust-sha-1-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))))
+
(define-public rust-hkdf-0.8
(package
(inherit rust-hkdf-0.9)
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 41/51] gnu: Add rust-dbus-0.2.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-41-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-dbus-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index a4203397d4..b292463108 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -228,6 +228,46 @@
("rust-x11" ,rust-x11-2)
("rust-pkg-config" ,rust-pkg-config-0.3))))))
+(define-public rust-dbus-0.2
+ (package
+ (name "rust-dbus")
+ (version "0.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dbus" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0b85dl7y396g8xh1xh89wxnb1fvvf840dar9axavfhhhlq7c385l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: fatal warnings are still fatal
+ #:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-tempdir" ,rust-tempdir-0.3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/diwic/dbus-rs")
+ (synopsis "Rust bindings to D-Bus")
+ (description "This package provides Rust bindings to D-Bus, a bus commonly
+used for inter-process communication.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-gdk-0.13
(package
(name "rust-gdk")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 42/51] gnu: Add rust-secret-service-1.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-42-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-secret-service-1): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (55 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index b292463108..f03cc8c669 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2109,3 +2109,48 @@ renders username initials.")
("rust-tempfile" ,rust-tempfile-3))))
(inputs
`(("gtk+" ,gtk+)))))
+
+(define-public rust-secret-service-1
+ (package
+ (name "rust-secret-service")
+ (version "1.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "secret-service" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "12hxz35i7sw5xsdldz1c6776fmz98z4dwh5779jis98w61020xbd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: see rust-dbus
+ #:cargo-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-block-modes" ,rust-block-modes-0.7)
+ ("rust-dbus" ,rust-dbus-0.2)
+ ("rust-hkdf" ,rust-hkdf-0.10)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-num" ,rust-num-0.3)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-sha2" ,rust-sha2-0.9))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/hwchen/secret-service-rs.git")
+ (synopsis "Secret Service interface")
+ (description "This package provides a Rust library to interface with
+the Secret Service API")
+ (license (list license:expat license:asl2.0))))
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 43/51] gnu: Add rust-atk-sys-0.10.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-43-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-atk-sys-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 53 +++++++++++++++++++++++++++++++------
1 file changed, 45 insertions(+), 8 deletions(-)

Toggle diff (75 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f03cc8c669..b851b00bcc 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -36,8 +36,52 @@
;;; Please: Try to add new module packages in alphabetic order.
;;;
+(define-public rust-atk-sys-0.10
+ (package
+ (name "rust-atk-sys")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atk-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1knzvq2jdkx1nav619jbqsx2ivzh901rsp2wl57wr50x2fpy8c7m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libatk-1")
+ (description "FFI bindings to libatk-1")
+ (license license:expat)))
+
(define-public rust-atk-sys-0.9
(package
+ (inherit rust-atk-sys-0.10)
(name "rust-atk-sys")
(version "0.9.1")
(source
@@ -57,14 +101,7 @@
("rust-pkg-config" ,rust-pkg-config-0.3))
#:cargo-development-inputs
(("rust-shell-words" ,rust-shell-words-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("atk" ,atk)
- ("glib" ,glib)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libatk-1")
- (description "FFI bindings to libatk-1")
- (license license:expat)))
+ ("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-atk-0.8
(package
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 44/51] gnu: Add rust-gtk-sys-0.10.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-44-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gtk-sys-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 53 +++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)

Toggle diff (66 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index b851b00bcc..275eb90f04 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1611,6 +1611,59 @@ GStreamer.")
"LGPL-licensed docs for Gtk-rs crates.")
(license license:lgpl2.0)))
+(define-public rust-gtk-sys-0.10
+ (package
+ (name "rust-gtk-sys")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gtk-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0mq4i161kk6dwiz19ayxgm9fhx7n3r5lm9lbjiyk0qs811pxmb49"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; TODO: ABI mismatch
+ #:cargo-inputs
+ (("rust-atk-sys" ,rust-atk-sys-0.10)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libgtk-3")
+ (description "This package provides FFI bindings to libgtk-3.")
+ (license license:expat)))
+
(define-public rust-gtk-sys-0.9
(package
(name "rust-gtk-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 45/51] gnu: Add rust-atk-0.9.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-45-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-atk-0.9): New variable.
---
gnu/packages/crates-gtk.scm | 56 +++++++++++++++++++++++++++++++------
1 file changed, 48 insertions(+), 8 deletions(-)

Toggle diff (78 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 275eb90f04..4997cb2dff 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -103,8 +103,55 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-atk-0.9
+ (package
+ (name "rust-atk")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atk" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "09n46zp8jgxspdzhmi93cag79jjnr0ila94n8nr53g8hw88ljaw1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atk-sys" ,rust-atk-sys-0.10)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the ATK library")
+ (description "Rust bindings for the ATK library")
+ (license license:expat)))
+
(define-public rust-atk-0.8
(package
+ (inherit rust-atk-0.9)
(name "rust-atk")
(version "0.8.0")
(source
@@ -125,14 +172,7 @@
("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1)
("rust-libc" ,rust-libc-0.2))
#:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
- (inputs
- `(("atk" ,atk)
- ("glib" ,glib)))
- (home-page "https://gtk-rs.org/")
- (synopsis "Rust bindings for the ATK library")
- (description "Rust bindings for the ATK library")
- (license license:expat)))
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-cairo-rs-0.9
(package
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 46/51] gnu: Add rust-gtk-0.9.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-46-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gtk-0.9): New variable.
---
gnu/packages/crates-gtk.scm | 71 +++++++++++++++++++++++++++++++++----
1 file changed, 65 insertions(+), 6 deletions(-)

Toggle diff (100 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 4997cb2dff..ced7b903bc 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1582,8 +1582,72 @@ GStreamer.")
(description "This package provides FFI bindings to libgstvideo-1.0.")
(license license:expat)))
+(define-public rust-gtk-0.9
+ (package
+ (name "rust-gtk")
+ (version "0.9.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gtk" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0smdll32vlamp4kvxa6sg5m653icas21jd36fvq3laq7ahh2y0ig"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atk" ,rust-atk-0.9)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-cc" ,rust-cc-1)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the GTK+ 3 library")
+ (description "This package provides Rust bindings for the GTK+ 3 library.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
+ (inherit rust-gtk-0.9)
(name "rust-gtk")
(version "0.8.1")
(source
@@ -1594,7 +1658,6 @@ GStreamer.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32 "13ygzblfv40l2kp70rnjymz7vk2g2wdjs04lhmk9q8wh0bbyiqc7"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-atk" ,rust-atk-0.8)
@@ -1624,11 +1687,7 @@ GStreamer.")
("cairo" ,cairo)
("glib" ,glib)
("gtk+" ,gtk+)
- ("pango" ,pango)))
- (home-page "https://gtk-rs.org/")
- (synopsis "Rust bindings for the GTK+ 3 library")
- (description "This package provides Rust bindings for the GTK+ 3 library.")
- (license license:expat)))
+ ("pango" ,pango)))))
(define-public rust-gtk-rs-lgpl-docs-0.1
(package
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 47/51] gnu: Add rust-sourceview4-sys-0.2.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-47-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-sys-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (64 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index ced7b903bc..d8f2080e82 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2343,3 +2343,57 @@ renders username initials.")
(description "This package provides a Rust library to interface with
the Secret Service API")
(license (list license:expat license:asl2.0))))
+
+(define-public rust-sourceview4-sys-0.2
+ (package
+ (name "rust-sourceview4-sys")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "146l7fni9zc68rr1aim5di4mzrk22r8jxb96ww8fgp6f51np690v"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "FFI bindings for GtkSourceView")
+ (description "This package provides FFI bindings for GtkSourceView, version
+4.x.")
+ (license license:lgpl2.1+)))
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 48/51] gnu: Add rust-sourceview4-0.2.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-48-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 59 +++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (69 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index d8f2080e82..653abaf272 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2397,3 +2397,62 @@ the Secret Service API")
(description "This package provides FFI bindings for GtkSourceView, version
4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-0.2
+ (package
+ (name "rust-sourceview4")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1c35bm98gmn93qralgjlippdjm2d6199j811qgrn1zd4iv3j3kv7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk" ,rust-gtk-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-sourceview4-sys"
+ ,rust-sourceview4-sys-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "API bindings for GtkSourceView")
+ (description "This package provides API bindings for GtkSourceView,
+version 4.x.")
+ (license license:lgpl2.1+)))
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 49/51] gnu: Add rust-sourceview4-for-fractal.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-49-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 653abaf272..97b9681e6c 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -20,6 +20,7 @@
(define-module (gnu packages crates-gtk)
#:use-module (guix build-system cargo)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
@@ -2456,3 +2457,31 @@ the Secret Service API")
(description "This package provides API bindings for GtkSourceView,
version 4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-for-fractal
+ (package
+ (inherit rust-sourceview4-0.2)
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/World/Rust/sourceview4-rs/")
+ (commit "fa8819fa7ecbe56f44d951656d3825f468915754")))
+ (file-name "rust-sourceview4-0.2.0.tar.gz")
+ (sha256
+ (base32
+ "0aib8385fxdpw79sasfzn6q11sqx3wigkb267if9fb12bagycgpk"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.8))))
+ (properties `((hidden? . #t)))))
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 50/51] gnu: Add rust-letter-avatar-for-fractal.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-50-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 97b9681e6c..bab1c285eb 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1876,6 +1876,30 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-letter-avatar-for-fractal
+ (package
+ (inherit rust-letter-avatar-1)
+ (name "rust-letter-avatar")
+ (version "1.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00hnlyckr25h5hvisk90vf88diww6cds140s8cpfhjx4p33kxnm8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.8)
+ ("rust-pango" ,rust-pango-0.8)
+ ("rust-pangocairo" ,rust-pangocairo-0.9)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))))
+ (properties '((hidden? . #t)))))
+
(define-public rust-libhandy-sys-0.5
(package
(name "rust-libhandy-sys")
--
2.30.2
L
L
Leo Prikler wrote on 15 Mar 2021 18:58
[PATCH v7 51/51] gnu: Add fractal.
(address . 44492@debbugs.gnu.org)
20210315175838.1931-51-leo.prikler@student.tugraz.at
* gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/gnome.scm (fractal): New variable.
---
gnu/local.mk | 1 +
gnu/packages/gnome.scm | 143 +++++++++++++++++-
...ractal-switch-from-failure-to-anyhow.patch | 143 ++++++++++++++++++
3 files changed, 286 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch

Toggle diff (321 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index d07aaeb90b..784d961487 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1007,6 +1007,7 @@ dist_patch_DATA = \
%D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/fpc-reproducibility.patch \
%D%/packages/patches/fplll-std-fenv.patch \
+ %D%/packages/patches/fractal-switch-from-failure-to-anyhow.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freebayes-devendor-deps.patch \
%D%/packages/patches/freeimage-unbundle.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index af8722a02e..8b494891c6 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -12138,7 +12138,6 @@ editing environment for translation issues within the GNU gettext/GNOME desktop
world.")
(license license:gpl3+)))
-
(define-public ocrfeeder
(package
(name "ocrfeeder")
@@ -12201,3 +12200,145 @@ world.")
(description "OCRFeeder is a complete Optical Character Recognition and
Document Analysis and Recognition program.")
(license license:gpl3+)))
+
+(define-public fractal
+ (package
+ (name "fractal")
+ (version "4.4.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/GNOME/fractal")
+ (commit version)))
+ (file-name (string-append "fractal-" version))
+ (sha256
+ (base32
+ "1v2aw41gfmixki6g7j7mcav7i7qkn17k7zndvvfv08rgsrvma8qd"))
+ (patches
+ (search-patches
+ "fractal-switch-from-failure-to-anyhow.patch"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:imported-modules
+ (,@%cargo-build-system-modules
+ ,@%meson-build-system-modules)
+ #:modules
+ ((guix build cargo-build-system)
+ (guix build utils)
+ ((guix build meson-build-system) #:prefix meson:))
+ #:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-comrak" ,rust-comrak-0.7)
+ ("rust-directories" ,rust-directories-2)
+ ("rust-dirs" ,rust-dirs-2)
+ ("rust-either" ,rust-either-1)
+ ("rust-fragile" ,rust-fragile-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gettext" ,rust-gettext-rs-0.4)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gspell" ,rust-gspell-0.4)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils" ,rust-gstreamer-pbutils-0.15)
+ ("rust-gstreamer-player" ,rust-gstreamer-player-0.15)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-html2pango" ,rust-html2pango-0.3)
+ ("rust-letter-avatar" ,rust-letter-avatar-for-fractal)
+ ("rust-libhandy" ,rust-libhandy-0.5)
+ ("rust-loggerv" ,rust-loggerv-0.7)
+ ("rust-md5" ,rust-md5-0.7)
+ ("rust-mdl" ,rust-mdl-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-reqwest" ,rust-reqwest-0.10)
+ ("rust-ruma-identifiers" ,rust-ruma-identifiers-0.17)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-secret-service" ,rust-secret-service-1)
+ ("rust-sourceview4" ,rust-sourceview4-for-fractal))
+ #:install-source? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-cargo
+ (lambda* (#:key vendor-dir #:allow-other-keys)
+ (substitute* "fractal-gtk/Cargo.toml"
+ (("git = .*") "")
+ ;; rust-gettext-rs
+ (("branch = \"no-gettext\"") "version = \"0.4.0\"")
+ ;; rust-sourceview4
+ (("rev = \"fa8819fa7ecbe56f44d951656d3825f468915754\"")
+ "version = \"0.2.0\"")
+ ;; rust-either
+ (("rev = \"60c99bc0723491e2dfd42bbe9b485c5f9323e96b\"")
+ "version = \"1.6.0\"")
+ (("\"serde_untagged\"") "\"serde\""))
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ (substitute* "meson.build"
+ (("'Cargo.lock',") ""))
+ (substitute* "scripts/cargo.sh"
+ (("export CARGO_HOME=.*" all)
+ (string-append all "\
+mkdir -p $CARGO_HOME
+cp $1/.cargo/config $CARGO_HOME
+")))
+
+ #t))
+ (add-after 'unpack 'skip-gtk-update-icon-cache
+ (lambda _
+ (substitute* "scripts/meson_post_install.py"
+ (("gtk-update-icon-cache") (which "true")))
+ #t))
+ (add-after 'configure 'configure-harder
+ (lambda* (#:key vendor-dir inputs #:allow-other-keys)
+ (for-each
+ (lambda (d)
+ (copy-recursively
+ (string-append (assoc-ref inputs "rust-sourceview4") "/" d)
+ (string-append vendor-dir "/rust-" d "-0.2.0")))
+ '("sourceview4" "sourceview4-sys"))
+ (delete-file-recursively
+ (car (find-files vendor-dir "fractal.*" #:directories? #t)))
+ #t))
+ (add-after 'patch-cargo-checksums 'really-configure
+ (lambda args
+ (apply (assoc-ref meson:%standard-phases 'configure)
+ #:build-type "release"
+ #:configure-flags '()
+ args)))
+ (replace 'build (assoc-ref meson:%standard-phases 'build))
+ (replace 'check
+ (lambda args
+ ((assoc-ref meson:%standard-phases 'check)
+ #:test-target "test"
+ #:parallel-tests? #t
+ #:tests? #t)))
+ (replace 'install (assoc-ref meson:%standard-phases 'install)))))
+ (native-inputs
+ `(("glib:bin" ,glib "bin")
+ ("gettext" ,gettext-minimal)
+ ("meson" ,meson-for-build)
+ ("ninja" ,ninja)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,gspell)
+ ("gst-editing-services" ,gst-editing-services)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("libhandy" ,libhandy-0.0)
+ ("openssl" ,openssl)))
+ (synopsis "Matrix messaging app for GNOME")
+ (description "Fractal is a Matrix messaging app for GNOME written in Rust.
+Its interface is optimized for collaboration in large groups, such as free
+software projects.")
+ (home-page "https://wiki.gnome.org/Apps/Fractal")
+ (license license:gpl3)))
diff --git a/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
new file mode 100644
index 0000000000..6b830ecf94
--- /dev/null
+++ b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
@@ -0,0 +1,143 @@
+From e4ca9dc5c0f4401f350338e4cd9b0734db9371bf Mon Sep 17 00:00:00 2001
+From: Yuki Okushi <huyuumi.dev@gmail.com>
+Date: Thu, 13 Aug 2020 14:41:50 +0900
+Subject: [PATCH] Switch from failure to anyhow
+
+---
+ Cargo.lock | 8 +++++++-
+ fractal-gtk/Cargo.toml | 2 +-
+ fractal-gtk/src/appop/attach.rs | 2 +-
+ fractal-gtk/src/cache/mod.rs | 2 +-
+ fractal-gtk/src/cache/state.rs | 7 +++----
+ fractal-gtk/src/util.rs | 8 ++++----
+ 6 files changed, 17 insertions(+), 12 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index c0b5e5e2..f26d9787 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -88,6 +88,12 @@ dependencies = [
+ "winapi 0.3.9",
+ ]
+
++[[package]]
++name = "anyhow"
++version = "1.0.32"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6b602bfe940d21c130f3895acd65221e8a61270debe89d628b9cb4e3ccb8569b"
++
+ [[package]]
+ name = "arrayref"
+ version = "0.3.6"
+@@ -580,6 +586,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+ name = "fractal-gtk"
+ version = "4.4.0"
+ dependencies = [
++ "anyhow",
+ "cairo-rs",
+ "chrono",
+ "clap",
+@@ -587,7 +594,6 @@ dependencies = [
+ "directories",
+ "dirs",
+ "either 1.5.99",
+- "failure",
+ "fractal-matrix-api",
+ "fragile",
+ "gdk",
+diff --git a/fractal-gtk/Cargo.toml b/fractal-gtk/Cargo.toml
+index 960f64b5..e1c6a33d 100644
+--- a/fractal-gtk/Cargo.toml
++++ b/fractal-gtk/Cargo.toml
+@@ -6,11 +6,11 @@ workspace = "../"
+ edition = "2018"
+
+ [dependencies]
++anyhow = "1.0.32"
+ clap = "2.33.0"
+ comrak = "0.7.0"
+ directories = "2.0.2"
+ dirs = "2.0.2"
+-failure = "0.1.6"
+ fragile = "1.0.0"
+ gspell = "0.4.0"
+ gdk = "0.12.1"
+diff --git a/fractal-gtk/src/appop/attach.rs b/fractal-gtk/src/appop/attach.rs
+index 3f0813aa..3b5bff4c 100644
+--- a/fractal-gtk/src/appop/attach.rs
++++ b/fractal-gtk/src/appop/attach.rs
+@@ -6,7 +6,7 @@ use std::io::prelude::*;
+ use std::path::PathBuf;
+ use std::sync::{Arc, Mutex};
+
+-use failure::Error;
++use anyhow::Error;
+
+ use gtk::prelude::*;
+
+diff --git a/fractal-gtk/src/cache/mod.rs b/fractal-gtk/src/cache/mod.rs
+index 76942866..8943eac6 100644
+--- a/fractal-gtk/src/cache/mod.rs
++++ b/fractal-gtk/src/cache/mod.rs
+@@ -12,7 +12,7 @@ use std::thread;
+
+ use crate::types::Room;
+ use crate::types::RoomList;
+-use failure::Error;
++use anyhow::Error;
+ use fractal_api::identifiers::{DeviceId, UserId};
+ use std::collections::HashMap;
+ use std::hash::Hash;
+diff --git a/fractal-gtk/src/cache/state.rs b/fractal-gtk/src/cache/state.rs
+index 7cb5372a..0e62c59b 100644
+--- a/fractal-gtk/src/cache/state.rs
++++ b/fractal-gtk/src/cache/state.rs
+@@ -4,8 +4,7 @@ use mdl::Model;
+ use mdl::Store;
+ use serde::{Deserialize, Serialize};
+
+-use failure::err_msg;
+-use failure::Error;
++use anyhow::{anyhow, Error};
+
+ use std::cell::RefCell;
+ use std::fs::remove_dir_all;
+@@ -127,8 +126,8 @@ impl FCache {
+ guard.take();
+
+ let fname = cache_dir_path(None, "cache.mdl")
+- .or_else(|_| Err(err_msg("Can't remove cache file")))?;
+- remove_dir_all(fname).or_else(|_| Err(err_msg("Can't remove cache file")))
++ .or_else(|_| Err(anyhow!("Can't remove cache file")))?;
++ remove_dir_all(fname).or_else(|_| Err(anyhow!("Can't remove cache file")))
+ }
+
+ #[allow(dead_code)]
+diff --git a/fractal-gtk/src/util.rs b/fractal-gtk/src/util.rs
+index 764a8e8e..b2feb12c 100644
+--- a/fractal-gtk/src/util.rs
++++ b/fractal-gtk/src/util.rs
+@@ -1,6 +1,6 @@
+ use crate::globals::CACHE_PATH;
+-use failure::format_err;
+-use failure::Error as FailError;
++use anyhow::anyhow;
++use anyhow::Error as AnyhowError;
+ use gdk::prelude::*;
+ use gdk_pixbuf::Pixbuf;
+ use gio::{Settings, SettingsExt, SettingsSchemaSource};
+@@ -21,9 +21,9 @@ pub fn cache_dir_path(dir: Option<&str>, name: &str) -> Result<PathBuf, IoError>
+ Ok(path.join(name))
+ }
+
+-pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, FailError> {
++pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, AnyhowError> {
+ let image = cairo::ImageSurface::create(cairo::Format::ARgb32, pb.get_width(), pb.get_height())
+- .or_else(|_| Err(format_err!("Cairo Error")))?;
++ .or_else(|_| Err(anyhow!("Cairo Error")))?;
+
+ let g = cairo::Context::new(&image);
+ g.set_source_pixbuf(pb, 0.0, 0.0);
+--
+2.30.1
+
--
2.30.2
E
E
Efraim Flashner wrote on 16 Mar 2021 13:42
Re: [bug#44492] [PATCH v5 09/51] gnu: Add rust-gspell-sys-0.4.
(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)(address . 44492@debbugs.gnu.org)
YFCn0dzDDo7cJAC8@3900XT
Sometimes the rust-*-sys packages bundle the source code for the package
they wrap, is that the case here? That it wants pkg-config is good, but
it's worth checking.

On Mon, Mar 15, 2021 at 04:43:42PM +0100, Leo Prikler wrote:
Toggle quote (53 lines)
> * gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
> ---
> gnu/packages/crates-gtk.scm | 48 ++++++++++++++++++++++++++++++++++++-
> 1 file changed, 47 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
> index 0d72fbf321..09aa79daba 100644
> --- a/gnu/packages/crates-gtk.scm
> +++ b/gnu/packages/crates-gtk.scm
> @@ -26,7 +26,8 @@
> #:use-module (gnu packages crates-io)
> #:use-module (gnu packages crates-graphics)
> #:use-module (gnu packages glib)
> - #:use-module (gnu packages gtk))
> + #:use-module (gnu packages gtk)
> + #:use-module (gnu packages pkg-config))
>
> ;;;
> ;;; Please: Try to add new module packages in alphabetic order.
> @@ -887,6 +888,51 @@
> (("rust-shell-words" ,rust-shell-words-0.1)
> ("rust-tempfile" ,rust-tempfile-3))))))
>
> +(define-public rust-gspell-sys-0.4
> + (package
> + (name "rust-gspell-sys")
> + (version "0.4.0")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (crate-uri "gspell-sys" version))
> + (file-name
> + (string-append name "-" version ".tar.gz"))
> + (sha256
> + (base32
> + "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c"))))
> + (build-system cargo-build-system)
> + (arguments
> + `(#:cargo-inputs
> + (("rust-glib-sys" ,rust-glib-sys-0.9)
> + ("rust-gobject-sys" ,rust-gobject-sys-0.9)
> + ("rust-gtk-sys" ,rust-gtk-sys-0.9)
> + ("rust-libc" ,rust-libc-0.2)
> + ("rust-pkg-config" ,rust-pkg-config-0.3))
> + #:cargo-development-inputs
> + (("rust-shell-words" ,rust-shell-words-0.1)
> + ("rust-tempfile" ,rust-tempfile-3))
> + #:phases
> + (modify-phases %standard-phases
> + (add-before 'check 'pre-check
> + (lambda* (#:key inputs #:allow-other-keys)
> + (setenv "CC" (which "gcc"))

Even if it can't be cross compiled now it should still be
(cc-for-target)

Toggle quote (10 lines)
> + #t)))))
> + (native-inputs
> + `(("pkg-config" ,pkg-config)))
> + (inputs
> + `(("atk" ,atk)
> + ("cairo" ,cairo)
> + ("glib" ,glib)
> + ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
> + 'gspell))

Unless there's a problem with circular package modules you should really
just import gnome into the package module.

Toggle quote (17 lines)
> + ("gtk+" ,gtk+)
> + ("pango" ,pango)))
> + (home-page "https://gitlab.gnome.org/World/Rust/gspell-rs")
> + (synopsis "Raw C-FFI bindings for gspell")
> + (description "This package provides raw C-FFI bindings for the gspell library.")
> + (license license:gpl3+)))
> +
> (define-public rust-gtk-0.8
> (package
> (name "rust-gtk")
> --
> 2.30.2
>
>
>
>

--
Efraim Flashner <efraim@flashner.co.il> ????? ?????
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAmBQp88ACgkQQarn3Mo9
g1FiwxAAm8ZrllsLAItxi5+rTxtfENg0fpd6UA3Y98TLpa+Bow17edXsCpITGmk3
TKp54fuASXkLcsa+uoozrKhA+PgZlL93OR3yzpKL0dnvSeCdbSBBaHrtbF8dgpiz
tscJ9h282zAh+DPIvPqPuwvmIy8C5N40/Ipjbj2ZJNJBj0XtBr5zc0F771r4BE0h
PkYoG6RCJ7iIbBgveYQeoRWOZNmaw3wdduWRnO2ALWWXQo2htkwW+xg+N+07VIbe
dRne3peRkAtu0pejSjYbRWzb5aHEaOxPOlzad7r96Xj94HtgRUf7pQD29m8fJJRA
U54KdPz1I8DGYERp5oX+qndTHZqD0g5Zcxz+2jMweqTZkeF6cnta2v93KHsW7pd4
rmUcsAG/kUKxiemgG9f+KMX4ky4gmiyqE8CCpeTmhRgfG8u62qkVaGdPKZq2S5VS
6KoIbgHYvNZsJGcUn6vUzbo8MjG7lYNwGERowW+dYkD+ppuQAaMApXlQDnmVN42O
3LlSmTFvWKBTqvezcfVowCCdXF9kAU4qdqOpMhxKq+n2CF9V1sb3ZnJ94W5gFtYY
iEsSCU/tkauUbeDoSXbg98rdP3EQQpAqoqyhJuzuiykH2wak4Gcu2MmxBcd955Xt
LOzI4Xnw/7uYMp9zRaY8I9sEVYK9LPhSZqGygNcLnZXD+z5h8P4=
=R1/D
-----END PGP SIGNATURE-----


E
E
Efraim Flashner wrote on 16 Mar 2021 13:43
Re: [bug#44492] [PATCH v6 05/51] gnu: Add rust-twoway-0.2.
(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)(address . 44492@debbugs.gnu.org)
YFCn15CVgjlnH8CU@3900XT
rust-twoway-0.2 and 0.1 use the same cargo-inputs. You can have 0.1
inherit all the arguments from 0.2 if you want.

On Mon, Mar 15, 2021 at 06:13:30PM +0100, Leo Prikler wrote:
Toggle quote (77 lines)
> * gnu/packages/crates-io.scm (rust-twoway-0.2): New variable.
> ---
> gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
> 1 file changed, 31 insertions(+), 8 deletions(-)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 78cdc54718..91bcbacfae 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -45873,8 +45873,38 @@ design abstracts away all the internals of the WebSocket protocol but still
> makes them accessible for those who wants full control over the network.")
> (license (list license:expat license:asl2.0))))
>
> +(define-public rust-twoway-0.2
> + (package
> + (name "rust-twoway")
> + (version "0.2.1")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (crate-uri "twoway" version))
> + (file-name
> + (string-append name "-" version ".tar.gz"))
> + (sha256
> + (base32
> + "1g55kf4rx0q682fvzxdixqihmlbamn5ms2yqvcm92fny21chfh3b"))))
> + (build-system cargo-build-system)
> + (arguments
> + `(#:skip-build? #t
> + #:cargo-inputs
> + (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
> + ("rust-jetscii" ,rust-jetscii-0.3)
> + ("rust-memchr" ,rust-memchr-2)
> + ("rust-unchecked-index"
> + ,rust-unchecked-index-0.2))))
> + (home-page "https://github.com/bluss/twoway")
> + (synopsis "Fast substring search for strings and byte strings")
> + (description
> + "This package provides a fast substring search for strings and byte
> +strings.")
> + (license (list license:expat license:asl2.0))))
> +
> (define-public rust-twoway-0.1
> (package
> + (inherit rust-twoway-0.2)
> (name "rust-twoway")
> (version "0.1.8")
> (source
> @@ -45884,20 +45914,13 @@ makes them accessible for those who wants full control over the network.")
> (file-name (string-append name "-" version ".tar.gz"))
> (sha256
> (base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))
> - (build-system cargo-build-system)
> (arguments
> `(#:skip-build? #t
> #:cargo-inputs
> (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
> ("rust-jetscii" ,rust-jetscii-0.3)
> ("rust-memchr" ,rust-memchr-2)
> - ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
> - (home-page "https://github.com/bluss/twoway")
> - (synopsis "Fast substring search for strings and byte strings")
> - (description
> - "This package provides a fast substring search for strings and byte
> -strings.")
> - (license (list license:expat license:asl2.0))))
> + ("rust-unchecked-index" ,rust-unchecked-index-0.2))))))
>
> (define-public rust-typeable-0.1
> (package
> --
> 2.30.2
>
>
>
>

--
Efraim Flashner <efraim@flashner.co.il> ????? ?????
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAmBQp9cACgkQQarn3Mo9
g1ERGA/+MNAMPkJugXF3jUW68w/8Y6PfiGiR7lPGBGpEJ3bZ9Hemi+5NgbslghkA
hXrY/TbP7MVHH/+HQPFVFQuv+awZrqbs6KHpES2YyfzvfMlGGGe1F34bIKAVXkxk
SPUrTS1GHAu6WWuNGNvmaYV/e51zlH46LIfhJ/FESALd0gM8jx/ms+mCgP1Px4YY
bTSjMz4RCzbjv1AMqN5UUzfBW1Vj/qdeLDhsdZNEfNfFp5HXTymrZ7ofkPbyi0Gz
GhC4CEdJLSRO2ZGDjww5JHejmq3bHwjJMKgu3UR41w2qc90ByrzcAZd5j9pF2WQH
b4gLuHjEiaqN94ytLiOeHyBRbwIX4wuaOt5YRhtUTMnex6nAXVuNBu0vPC4gpi0E
B4m6yjPrPnmV3YlROnfR6kYnNPO1NTP67vvYeelbBwH0dAVCFh13MN2yQE7ZDg1x
98bmecfLX3de46Wl8dqt6gCX+sr/3VZa5B4pPEMrsXLsqW/BHiYrPQINN9TYIPMq
MF7FB9pioffyjocwMapRdGoJnkQsRAErQu/4Fh64D0c4vLOWbKtcAoNoU9T+mMRf
AMB2Np8Ix2PpghlOuRcq8cmN3YNxOW+Mfmvc5FqNMs0+6M5MjMGBVkGTk1kttrji
Usd0yP4467izy5TdLx6IpMk2MLIjtHuian5e36IDqKwxrvcDNn8=
=45eK
-----END PGP SIGNATURE-----


L
L
Leo Prikler wrote on 16 Mar 2021 14:12
Re: [bug#44492] [PATCH v5 09/51] gnu: Add rust-gspell-sys-0.4.
(name . Efraim Flashner)(address . efraim@flashner.co.il)(address . 44492@debbugs.gnu.org)
ed714805bc4124912aef8b298f2a9f2024ead813.camel@student.tugraz.at
Am Dienstag, den 16.03.2021, 14:42 +0200 schrieb Efraim Flashner:
Toggle quote (5 lines)
> Sometimes the rust-*-sys packages bundle the source code for the
> package
> they wrap, is that the case here? That it wants pkg-config is good,
> but
> it's worth checking.
As far as I'm aware, none of the GNOME crates do this. Fractal would
even use a version of the gettext crate, that doesn't bundle gettext,
but alas, we ship the bundled one in Guix.

Toggle quote (59 lines)
> On Mon, Mar 15, 2021 at 04:43:42PM +0100, Leo Prikler wrote:
> > * gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
> > ---
> > gnu/packages/crates-gtk.scm | 48
> > ++++++++++++++++++++++++++++++++++++-
> > 1 file changed, 47 insertions(+), 1 deletion(-)
> >
> > diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-
> > gtk.scm
> > index 0d72fbf321..09aa79daba 100644
> > --- a/gnu/packages/crates-gtk.scm
> > +++ b/gnu/packages/crates-gtk.scm
> > @@ -26,7 +26,8 @@
> > #:use-module (gnu packages crates-io)
> > #:use-module (gnu packages crates-graphics)
> > #:use-module (gnu packages glib)
> > - #:use-module (gnu packages gtk))
> > + #:use-module (gnu packages gtk)
> > + #:use-module (gnu packages pkg-config))
> >
> > ;;;
> > ;;; Please: Try to add new module packages in alphabetic order.
> > @@ -887,6 +888,51 @@
> > (("rust-shell-words" ,rust-shell-words-0.1)
> > ("rust-tempfile" ,rust-tempfile-3))))))
> >
> > +(define-public rust-gspell-sys-0.4
> > + (package
> > + (name "rust-gspell-sys")
> > + (version "0.4.0")
> > + (source
> > + (origin
> > + (method url-fetch)
> > + (uri (crate-uri "gspell-sys" version))
> > + (file-name
> > + (string-append name "-" version ".tar.gz"))
> > + (sha256
> > + (base32
> > + "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c")))
> > )
> > + (build-system cargo-build-system)
> > + (arguments
> > + `(#:cargo-inputs
> > + (("rust-glib-sys" ,rust-glib-sys-0.9)
> > + ("rust-gobject-sys" ,rust-gobject-sys-0.9)
> > + ("rust-gtk-sys" ,rust-gtk-sys-0.9)
> > + ("rust-libc" ,rust-libc-0.2)
> > + ("rust-pkg-config" ,rust-pkg-config-0.3))
> > + #:cargo-development-inputs
> > + (("rust-shell-words" ,rust-shell-words-0.1)
> > + ("rust-tempfile" ,rust-tempfile-3))
> > + #:phases
> > + (modify-phases %standard-phases
> > + (add-before 'check 'pre-check
> > + (lambda* (#:key inputs #:allow-other-keys)
> > + (setenv "CC" (which "gcc"))
>
> Even if it can't be cross compiled now it should still be
> (cc-for-target)
Good catch, will do so in v8.

Toggle quote (14 lines)
> > + #t)))))
> > + (native-inputs
> > + `(("pkg-config" ,pkg-config)))
> > + (inputs
> > + `(("atk" ,atk)
> > + ("cairo" ,cairo)
> > + ("glib" ,glib)
> > + ("gspell" ,(module-ref (resolve-module '(gnu packages
> > gnome))
> > + 'gspell))
>
> Unless there's a problem with circular package modules you should
> really
> just import gnome into the package module.
That's exactly the problem though. Rust packages in gnome.scm need
stuff from crates-gtk and doing it this way helps resolve the issue.
Should I add a comment about that?

Regards,
Leo
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 01/51] gnu: Add rust-ruma-identifiers-validation-0.1.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-1-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-validation-0.1): New
variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 299a2d1443..a188656e08 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33320,6 +33320,30 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-validation-0.1
+ (package
+ (name "rust-ruma-identifiers-validation")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-validation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nv0zqsq5lhybckvfr5wmcp8pipqfs2hjgn9kvn9w33xacfzs4n1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Validation logic for RUMA")
+ (description "This package provides the validation logic needed by other
+rust-ruma packages.")
+ (license license:expat)))
+
(define-public rust-runtime-0.3
(package
(name "rust-runtime")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 02/51] gnu: Add rust-ruma-identifiers-macros-0.17.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-2-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-macros-0.17): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a188656e08..80348b01d3 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33320,6 +33320,33 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-macros-0.17
+ (package
+ (name "rust-ruma-identifiers-macros")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers-macros" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "03p3qp12h4aajixcyk44q2bcid6fa4nmipysvcpy4w5cbak7wvwq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Create Matrix identifiers")
+ (description "This package provides procedural macros for creating Matrix
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-validation-0.1
(package
(name "rust-ruma-identifiers-validation")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 03/51] gnu: Add rust-ruma-identifiers-0.17.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-3-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ruma-identifiers-0.17): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 80348b01d3..f2c39c17c1 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -33320,6 +33320,40 @@ console applications.")
(base32
"1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
+(define-public rust-ruma-identifiers-0.17
+ (package
+ (name "rust-ruma-identifiers")
+ (version "0.17.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ruma-identifiers" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vjxws5yw1c8lmwc5p036319vwwna1sxb7pkl6lw1pl8rwp0j5sr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-either" ,rust-either-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-ruma-identifiers-macros"
+ ,rust-ruma-identifiers-macros-0.17)
+ ("rust-ruma-identifiers-validation"
+ ,rust-ruma-identifiers-validation-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-strum" ,rust-strum-0.18))
+ #:cargo-development-inputs
+ (("rust-matches" ,rust-matches-0.1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
+ (home-page "https://www.ruma.io/")
+ (synopsis "Rust types for Matrix resource identifiers")
+ (description "This package provides Rust type bindings for Matrix resource
+identifiers.")
+ (license license:expat)))
+
(define-public rust-ruma-identifiers-macros-0.17
(package
(name "rust-ruma-identifiers-macros")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 04/51] gnu: Add rust-entities-1.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-4-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-entities-1): New variable.
---
gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f2c39c17c1..c4627d5ac5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12899,6 +12899,27 @@ Standard.")
"Streaming transcoding for encoding_rs.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-entities-1
+ (package
+ (name "rust-entities")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "entities" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnpr0zvj97wm9pnh7fnl74rzaar39hhg65p03cm08bqqgj0lcmm"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page "https://github.com/p-jackson/entities")
+ (synopsis "Raw data for converting HTML entities")
+ (description "This package provides the raw data needed to convert to and
+from HTML entities.")
+ (license license:expat)))
+
(define-public rust-enum-as-inner-0.3
(package
(name "rust-enum-as-inner")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 05/51] gnu: Add rust-twoway-0.2.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-5-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-twoway-0.2): New variable.
---
gnu/packages/crates-io.scm | 44 ++++++++++++++++++++++++++------------
1 file changed, 30 insertions(+), 14 deletions(-)

Toggle diff (69 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c4627d5ac5..cf015f52fb 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -45904,25 +45904,28 @@ design abstracts away all the internals of the WebSocket protocol but still
makes them accessible for those who wants full control over the network.")
(license (list license:expat license:asl2.0))))
-(define-public rust-twoway-0.1
+(define-public rust-twoway-0.2
(package
(name "rust-twoway")
- (version "0.1.8")
+ (version "0.2.1")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "twoway" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "twoway" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g55kf4rx0q682fvzxdixqihmlbamn5ms2yqvcm92fny21chfh3b"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
- ("rust-jetscii" ,rust-jetscii-0.3)
- ("rust-memchr" ,rust-memchr-2)
- ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
+ ("rust-jetscii" ,rust-jetscii-0.3)
+ ("rust-memchr" ,rust-memchr-2)
+ ("rust-unchecked-index"
+ ,rust-unchecked-index-0.2))))
(home-page "https://github.com/bluss/twoway")
(synopsis "Fast substring search for strings and byte strings")
(description
@@ -45930,6 +45933,19 @@ makes them accessible for those who wants full control over the network.")
strings.")
(license (list license:expat license:asl2.0))))
+(define-public rust-twoway-0.1
+ (package
+ (inherit rust-twoway-0.2)
+ (name "rust-twoway")
+ (version "0.1.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "twoway" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))))
+
(define-public rust-typeable-0.1
(package
(name "rust-typeable")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 06/51] gnu: Add rust-comrak-0.7.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-6-leo.prikler@student.tugraz.at
* gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/crates-io.scm (rust-comrak-0.7): New variable.
---
gnu/local.mk | 1 +
gnu/packages/crates-io.scm | 44 +++++++++++++++++++
.../rust-comrak-0.7-rustsec-2021-0026.patch | 41 +++++++++++++++++
3 files changed, 86 insertions(+)
create mode 100644 gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch

Toggle diff (116 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 0422beac82..3fb496a771 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1642,6 +1642,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-1.45-linker-locale.patch \
%D%/packages/patches/rust-1.48-linker-locale.patch \
%D%/packages/patches/rust-bootstrap-stage0-test.patch \
+ %D%/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch \
%D%/packages/patches/rust-coresimd-doctest.patch \
%D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \
%D%/packages/patches/rust-nettle-disable-vendor.patch \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index cf015f52fb..7e07a9b8e7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -7766,6 +7766,50 @@ harness.")
("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-comrak-0.7
+ (package
+ (name "rust-comrak")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "comrak" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07026j0ghwgv5z61fc4l893wwc30krxpsy487rb91wkcag65hw71"))
+ (patches
+ (search-patches
+ "rust-comrak-0.7-rustsec-2021-0026.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "src/tests.rs"
+ (("data:(png|jpeg|gif|webp)" all what)
+ (string-append "data:image/" what)))
+ #t))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-entities" ,rust-entities-1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-twoway" ,rust-twoway-0.2)
+ ("rust-typed-arena" ,rust-typed-arena-1)
+ ("rust-unicode-categories"
+ ,rust-unicode-categories-0.1))
+ #:cargo-development-inputs
+ (("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/kivikakk/comrak")
+ (synopsis "Markdown parser and formatter")
+ (description "This package provides a parser and formatter for Github
+Flavored Markdown, that is compatible with CommonMark.")
+ (license license:bsd-2)))
+
(define-public rust-concurrent-queue-1
(package
(name "rust-concurrent-queue")
diff --git a/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
new file mode 100644
index 0000000000..9a74b7b971
--- /dev/null
+++ b/gnu/packages/patches/rust-comrak-0.7-rustsec-2021-0026.patch
@@ -0,0 +1,41 @@
+From 285e9647c6d2f90d8cb7af543b14c986a8efa631 Mon Sep 17 00:00:00 2001
+From: Asherah Connor <ashe@kivikakk.ee>
+Date: Fri, 12 Feb 2021 21:15:29 +1100
+Subject: [PATCH] SECURITY: match unsafe prefixes case-insensitively
+
+Many thanks to Kouhei Morita for reporting this.
+
+Co-authored-by: Kouhei Morita <mrtc0@ssrf.in>
+---
+ src/lexer.pest | 2 +-
+ src/tests.rs | 146 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 147 insertions(+), 1 deletion(-)
+
+diff --git a/src/lexer.pest b/src/lexer.pest
+index e97647c..7f6cd3f 100644
+--- a/src/lexer.pest
++++ b/src/lexer.pest
+@@ -55,4 +55,4 @@ table_start = { "|"? ~ table_marker ~ ("|" ~ table_marker)* ~ "|"? ~ table_space
+ table_cell_end = { "|" ~ table_spacechar* ~ table_newline? }
+ table_row_end = { table_spacechar* ~ table_newline }
+
+-dangerous_url = { "data:" ~ !("png" | "gif" | "jpeg" | "webp") | "javascript:" | "vbscript:" | "file:" }
++dangerous_url = { ^"data:" ~ !(^"image/" ~ (^"png" | ^"gif" | ^"jpeg" | ^"webp")) | ^"javascript:" | ^"vbscript:" | ^"file:" }
+diff --git a/src/tests.rs b/src/tests.rs
+index c61a493..5f3e0cc 100644
+--- a/src/tests.rs
++++ b/src/tests.rs
+@@ -998,3 +998,11 @@ fn description_lists() {
+ ),
+ );
+ }
++
++#[test]
++fn case_insensitive_safety() {
++ html(
++ "[a](javascript:a) [b](Javascript:b) [c](jaVascript:c) [d](data:xyz) [e](Data:xyz) [f](vbscripT:f) [g](FILE:g)\n",
++ "<p><a href=\"\">a</a> <a href=\"\">b</a> <a href=\"\">c</a> <a href=\"\">d</a> <a href=\"\">e</a> <a href=\"\">f</a> <a href=\"\">g</a></p>\n",
++ );
++}
+--
+2.30.1
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 07/51] gnu: Add rust-fragile-1.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-7-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-fragile-1): New variable.
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7e07a9b8e7..1610ec45ea 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14585,6 +14585,26 @@ implementation that is more efficient for smaller hash keys.")
syntax, as used by HTML forms.")
(license (list license:expat license:asl2.0))))
+(define-public rust-fragile-1
+ (package
+ (name "rust-fragile")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fragile" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wlihmkjyhvl5rckal32p010piy1l15s6l81h7z31jcd971kk839"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/mitsuhiko/rust-fragile")
+ (synopsis "Wrapper types for sending non-send values to other threads")
+ (description "This package provides wrapper types for sending non-send
+values to other threads.")
+ (license license:asl2.0)))
+
(define-public rust-fragile-0.3
(package
(name "rust-fragile")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 08/51] gnu: rust-either-1: Update to 1.6.1.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-8-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-either-1): Update to 1.6.1.
---
gnu/packages/crates-io.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 1610ec45ea..66dedb042b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12597,7 +12597,7 @@ signing, and verification in pure Rust.")
(define-public rust-either-1
(package
(name "rust-either")
- (version "1.5.3")
+ (version "1.6.1")
(source
(origin
(method url-fetch)
@@ -12606,7 +12606,7 @@ signing, and verification in pure Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1qyz1b1acad6w0k5928jw5zaq900zhsk7p8dlcp4hh61w4f6n7xv"))))
+ "0mwl9vngqf5jvrhmhn9x60kr5hivxyjxbmby2pybncxfqhf4z3g7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 09/51] gnu: Add rust-gspell-sys-0.4.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-9-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-sys-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 48 ++++++++++++++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0d72fbf321..ecc6891cf1 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -26,7 +26,8 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
- #:use-module (gnu packages gtk))
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages pkg-config))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -887,6 +888,51 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-gspell-sys-0.4
+ (package
+ (name "rust-gspell-sys")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07snannzd36wlms2x880ylkq7h1162g0kv9y54wlrc2nd11kjc2c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (cc-for-target))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Raw C-FFI bindings for gspell")
+ (description "This package provides raw C-FFI bindings for the gspell library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 10/51] gnu: Add rust-gspell-0.4.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-10-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gspell-0.4): New variable.
---
gnu/packages/crates-gtk.scm | 66 ++++++++++++++++++++++++++++++++++++-
1 file changed, 65 insertions(+), 1 deletion(-)

Toggle diff (90 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index ecc6891cf1..d5c095a079 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -23,11 +23,13 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
+ #:use-module (gnu packages aspell)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
- #:use-module (gnu packages pkg-config))
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -933,6 +935,68 @@
(description "This package provides raw C-FFI bindings for the gspell library.")
(license license:gpl3+)))
+(define-public rust-gspell-0.4
+ (package
+ (name "rust-gspell")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gspell" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10wi6p6dhdqypfqlih18mrl7vgni7y64mrhdh5ymayp4d07djshk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gspell-sys" ,rust-gspell-sys-0.4)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+
+ ;; Allow Enchant and its Aspell backend to find the en_US
+ ;; dictionary.
+ (setenv "ASPELL_DICT_DIR"
+ (string-append (assoc-ref inputs "aspell-dict-en")
+ "/lib/aspell"))
+ #t)))))
+ (native-inputs
+ `(("aspell-dict-en" ,aspell-dict-en)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,(module-ref (resolve-module '(gnu packages gnome))
+ 'gspell))
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/gspell-rs")
+ (synopsis "Rust bindings for gspell")
+ (description "This package provides Rust bindings for the gspell spell
+checking library.")
+ (license license:gpl3+)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 11/51] gnu: Add rust-muldiv-0.2.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-11-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-muldiv-0.2): New variable.
---
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 66dedb042b..c6cc5d7c5b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23962,6 +23962,29 @@ checking.")
"Chaining APIs for both self -> Self and &mut self methods.")
(license license:expat)))
+(define-public rust-muldiv-0.2
+ (package
+ (name "rust-muldiv")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "muldiv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "014jlry2l2ph56mp8knw65637hh49q7fmrraim2bx9vz0a638684"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.9))))
+ (home-page "https://github.com/sdroege/rust-muldiv")
+ (synopsis "Perform combined multiplication and division")
+ (description "This package provides a trait for numeric types to perform
+combined multiplication and division with overflow protection.")
+ (license license:expat)))
+
(define-public rust-multi-default-trait-impl-0.1
(package
(name "rust-multi-default-trait-impl")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 12/51] gnu: Add rust-gstreamer-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-12-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index d5c095a079..9195c02f83 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -27,6 +27,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg))
@@ -997,6 +998,46 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-sys-0.8
+ (package
+ (name "rust-gstreamer-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nsk802vlcyi9p93sg60wv8fzb2mq7j52lfdda4va2kxp40xl60x"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to GStreamer")
+ (description "This package provides FFI bindings to libgstreamer-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 13/51] gnu: Add rust-gstreamer-0.15.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-13-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 50 +++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9195c02f83..0a4fbab4ac 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -998,6 +998,56 @@
checking library.")
(license license:gpl3+)))
+(define-public rust-gstreamer-0.15
+ (package
+ (name "rust-gstreamer")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qx1fhr9ajms0128ixmi2ncr35llwppdb0z7ximw2vnd2jhn91nf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-muldiv" ,rust-muldiv-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-bytes" ,rust-serde-bytes-0.11)
+ ("rust-serde-derive" ,rust-serde-derive-1))
+ #:cargo-development-inputs
+ (("rust-futures-executor"
+ ,rust-futures-executor-0.3)
+ ("rust-ron" ,rust-ron-0.5)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer")
+ (description "This package provides Rust bindings for GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 14/51] gnu: Add rust-gstreamer-base-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-14-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 43 ++++++++++++++++++++++++++++++++++++-
1 file changed, 42 insertions(+), 1 deletion(-)

Toggle diff (63 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 0a4fbab4ac..36791107bd 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,47 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-sys-0.8
+ (package
+ (name "rust-gstreamer-base-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v9v09jqjrwz87c4r7za3yb6g7had112d8zwjdjmhg2b2x94yf5s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to glibgstbase-1.0")
+ (description "This package provides FFI bindings to libgstbase-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
@@ -1075,7 +1116,7 @@ checking library.")
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda* (#:key inputs #:allow-other-keys)
- (setenv "CC" (which "gcc"))
+ (setenv "CC" (cc-for-target))
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)))
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:26
[PATCH v8 15/51] gnu: Add rust-gstreamer-video-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-15-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 36791107bd..997b9b4f0e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1129,6 +1129,50 @@ checking library.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-sys-0.8
+ (package
+ (name "rust-gstreamer-video-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k5prjimlrm5c68vk6wq1l9y440p5vskrq862rcb9x22z2c44pv1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: ABI mismatch
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (which "gcc"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstvideo-1.0")
+ (description "This package provides FFI bindings to libgstvideo-1.0.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
(name "rust-gtk")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 16/51] gnu: Add rust-gstreamer-player-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-16-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 997b9b4f0e..50a05d4a82 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1089,6 +1089,50 @@ checking library.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-sys-0.8
+ (package
+ (name "rust-gstreamer-player-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g21c7yk1855k5qdyn0hcwa6v1dy9admipy8s7544d7d19rqmhww"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (cc-for-target))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstplayer-1.0")
+ (description "This package provides FFI bindings to libgstplayer-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-sys-0.8
(package
(name "rust-gstreamer-sys")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 18/51] gnu: Add rust-gstreamer-video-0.15.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-18-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-video-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 197139cd1e..af550cea69 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1210,6 +1210,50 @@ GStreamer.")
(description "This package provides FFI bindings to libgstreamer-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-video-0.15
+ (package
+ (name "rust-gstreamer-video")
+ (version "0.15.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-video" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jaday8gsmhixv5k78wxcsricmvqfsip486750ad8ih2jjdfdmqa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel"
+ ,rust-futures-channel-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base" ,rust-gstreamer-base-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer video")
+ (description "This package provides Rust bindings for the video library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-video-sys-0.8
(package
(name "rust-gstreamer-video-sys")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 17/51] gnu: Add rust-gstreamer-base-0.15.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-17-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-base-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 50a05d4a82..197139cd1e 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,43 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-base-0.15
+ (package
+ (name "rust-gstreamer-base")
+ (version "0.15.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-base" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04hwa85j3w959i025il908bvsx6dyiawkmc0w45hn9kcrisjyma2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer Base")
+ (description "This package provides Rust bindings for the base library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-base-sys-0.8
(package
(name "rust-gstreamer-base-sys")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 19/51] gnu: Add rust-gstreamer-player-0.15.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-19-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-player-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index af550cea69..3d492c2937 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1126,6 +1126,46 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-player-0.15
+ (package
+ (name "rust-gstreamer-player")
+ (version "0.15.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-player" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167nv3s6pwr746gjm2i0vd6ygfmbp80hi4wm46lly3jgciy4kcq4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-player-sys"
+ ,rust-gstreamer-player-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video"
+ ,rust-gstreamer-video-0.15)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad))) ; for -lgstplayer-1.0
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer player")
+ (description "This package provides Rust bindings for the player library of
+GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-player-sys-0.8
(package
(name "rust-gstreamer-player-sys")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 20/51] gnu: Add rust-gstreamer-audio-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-20-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-audio-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 3d492c2937..4280211c27 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1048,6 +1048,51 @@ checking library.")
(description "This package provides Rust bindings for GStreamer.")
(license (list license:expat license:asl2.0))))
+(define-public rust-gstreamer-audio-sys-0.8
+ (package
+ (name "rust-gstreamer-audio-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-audio-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rxw1s57yrw1zsbindaf2sj05df4qh17bshadqfw77y4xr9izjdv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build?
+ #t
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-base-sys"
+ ,rust-gstreamer-base-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (cc-for-target))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstaudio-1.0")
+ (description "This package provides FFI bindings to libgstaudio-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-base-0.15
(package
(name "rust-gstreamer-base")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 21/51] gnu: Add rust-gstreamer-pbutils-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-21-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-sys-0.8): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 4280211c27..89791f2df0 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,51 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-sys-0.8
+ (package
+ (name "rust-gstreamer-pbutils-sys")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1s4dgmq9ai1jz5w5vllji8087khw7hja97hii4lgl29figkakdsf"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer-audio-sys"
+ ,rust-gstreamer-audio-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-gstreamer-video-sys"
+ ,rust-gstreamer-video-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CC" (cc-for-target))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "FFI bindings to libgstpbutils-1.0")
+ (description "This package provides FFI bindings to libgstpbutils-1.0.")
+ (license license:expat)))
+
(define-public rust-gstreamer-player-0.15
(package
(name "rust-gstreamer-player")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 22/51] gnu: Add rust-gstreamer-pbutils-0.15.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-22-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gstreamer-pbutils-0.15): New variable.
---
gnu/packages/crates-gtk.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 89791f2df0..9b07a23af8 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1171,6 +1171,43 @@ GStreamer.")
(description "This package provides FFI bindings to libgstbase-1.0.")
(license license:expat)))
+(define-public rust-gstreamer-pbutils-0.15
+ (package
+ (name "rust-gstreamer-pbutils")
+ (version "0.15.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gstreamer-pbutils" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q8hv8i41mwhr84ydwlv7qspf49s5i7pz3lnjwl0l9gyp2anq97d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils-sys"
+ ,rust-gstreamer-pbutils-sys-0.8)
+ ("rust-gstreamer-sys" ,rust-gstreamer-sys-0.8)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rustdoc-stripper"
+ ,rust-rustdoc-stripper-0.1))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "https://gstreamer.freedesktop.org")
+ (synopsis "Rust bindings for GStreamer base utils")
+ (description "This package provides Rust bindings for the pb_utils library
+of GStreamer.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-gstreamer-pbutils-sys-0.8
(package
(name "rust-gstreamer-pbutils-sys")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 23/51] gnu: Add rust-markup5ever-rcdom-0.1.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-23-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-markup5ever-rcdom-0.1): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index c6cc5d7c5b..dbc1e95212 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22683,6 +22683,35 @@ platform-independently.")
(base32
"08ayl9aqjnmf7ly1ipy6dk3wjvyfn4w51l40jzh1fh984ykldbzi"))))))
+(define-public rust-markup5ever-rcdom-0.1
+ (package
+ (name "rust-markup5ever-rcdom")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "markup5ever_rcdom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0axf6vrms8579lvhbjaj0v7bhs8xb7s26d4sam2g3m6qpi1xl5gh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test files not included in release.
+ #:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-markup5ever" ,rust-markup5ever-0.10)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-xml5ever" ,rust-xml5ever-0.16))
+ #:cargo-development-inputs
+ (("rust-rustc-test" ,rust-rustc-test-0.3))))
+ (home-page "https://github.com/servo/html5ever")
+ (synopsis "html5ever test DOM structure")
+ (description "This package provides a basic DOM structure for use by tests
+in html5ever/xml5ever. It is not supposed to be used in user-facing code.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-match-cfg-0.1
(package
(name "rust-match-cfg")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 24/51] gnu: Add rust-ammonia-3.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-24-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-ammonia-3): New variable.
---
gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index dbc1e95212..4285891f28 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1725,6 +1725,40 @@ options to use calloc or a mutable global variable for pre-zeroed memory.")
be used with the stdlib.")
(license license:bsd-3)))
+(define-public rust-ammonia-3
+ (package
+ (name "rust-ammonia")
+ (version "3.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ammonia" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fzaj1fx3yhz2qd47gfvz7n8xjrnn37w2hp4qlyzpczlf18wisl9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-matches" ,rust-matches-0.1)
+ ("rust-tendril" ,rust-tendril-0.4)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-version-sync" ,rust-version-sync-0.8))))
+ (home-page "https://github.com/rust-ammonia/ammonia")
+ (synopsis "HTML Sanitization")
+ (description "Ammonia is a whitelist-based HTML sanitization library.
+It is designed to prevent cross-site scripting, layout breaking, and
+clickjacking caused by untrusted user-provided HTML being mixed into a larger
+web page.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-android-glue-0.2
(package
(name "rust-android-glue")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 25/51] gnu: Add rust-html2pango-0.3.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-25-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-html2pango-0.3): New variable.
---
gnu/packages/crates-gtk.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9b07a23af8..5185930355 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1569,6 +1569,40 @@ GStreamer.")
(description "This package provides FFI bindings to libgtk-3.")
(license license:expat)))
+(define-public rust-html2pango-0.3
+ (package
+ (name "rust-html2pango")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "html2pango" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0f0phim3bgmq0gcsvm9q8674190d5v5idlsqyxykxjf36d02i6s6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ammonia" ,rust-ammonia-3)
+ ("rust-anyhow" ,rust-anyhow-1)
+ ("rust-html5ever" ,rust-html5ever-0.25)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-linkify" ,rust-linkify-0.4)
+ ("rust-maplit" ,rust-maplit-1)
+ ("rust-markup5ever-rcdom"
+ ,rust-markup5ever-rcdom-0.1)
+ ("rust-regex" ,rust-regex-1))
+ #:cargo-development-inputs
+ (("rust-pretty-assertions"
+ ,rust-pretty-assertions-0.6))))
+ (home-page "https://gitlab.gnome.org/World/html2pango")
+ (synopsis "Convert HTML to pango.")
+ (description "html2pango converts html tags to Pango markup. It also
+converts raw links to http links and strips unwanted tags.")
+ (license license:gpl3)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 26/51] gnu: Add rust-pangocairo-sys-0.11.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-26-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-sys-0.11): New variable.
---
gnu/packages/crates-gtk.scm | 53 ++++++++++++++++++++++++++++++++-----
1 file changed, 47 insertions(+), 6 deletions(-)

Toggle diff (79 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 5185930355..cabd7db11b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1805,8 +1805,54 @@ converts raw links to http links and strips unwanted tags.")
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+(define-public rust-pangocairo-sys-0.11
+ (package
+ (name "rust-pangocairo-sys")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "167b1z6ns3lw1dqfq3mnhmknf7isi5vacp2fp0rh4bwcd5zwkk4l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to pangocairo")
+ (description "This package provides FFI bindings to pangocairo.")
+ (license license:expat)))
+
(define-public rust-pangocairo-sys-0.10
(package
+ (inherit rust-pangocairo-sys-0.11)
(name "rust-pangocairo-sys")
(version "0.10.1")
(source
@@ -1818,7 +1864,6 @@ converts raw links to http links and strips unwanted tags.")
(sha256
(base32
"1zlyf5vajarnxg5034b8qa5w5zajv96lfvlgiki26svpmcqip4m3"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
@@ -1830,8 +1875,4 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))
(inputs
- `(("gtk+" ,gtk+)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libgtk-3")
- (description "This package provides FFI bindings to libgtk-3.")
- (license license:expat)))
+ `(("gtk+" ,gtk+)))))
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 27/51] gnu: Add rust-pangocairo-0.10.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-27-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-pangocairo-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 52 +++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)

Toggle diff (65 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index cabd7db11b..cf9e384c1a 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1738,6 +1738,58 @@ converts raw links to http links and strips unwanted tags.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-pangocairo-0.10
+ (package
+ (name "rust-pangocairo")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10z8hlc82984nwvy5pnyh95ls9s5r1qrlkpn14zh4pjsl1ksxx80"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.11))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the PangoCairo library")
+ (description
+ "Rust bindings for the PangoCairo library.")
+ (license license:expat)))
+
(define-public rust-pangocairo-0.9
(package
(name "rust-pangocairo")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 28/51] gnu: Add rust-letter-avatar-1.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-28-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-1): New variable.
---
gnu/packages/crates-gtk.scm | 43 +++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)

Toggle diff (56 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index cf9e384c1a..aa77f02af0 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1603,6 +1603,49 @@ GStreamer.")
converts raw links to http links and strips unwanted tags.")
(license license:gpl3)))
+(define-public rust-letter-avatar-1
+ (package
+ (name "rust-letter-avatar")
+ (version "1.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0if2mihpxn4xissv68qciqn5vywy0kl0sx9hcyrhd70s2fyn09k6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pangocairo" ,rust-pangocairo-0.10)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("glib" ,glib)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/jsparber/letter-avatar")
+ (synopsis "Generate user avatars")
+ (description "This package provides a user avatar generator based, that
+renders username initials.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 29/51] gnu: Add rust-libhandy-sys-0.5.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-29-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-sys-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index aa77f02af0..32ac1ac249 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1646,6 +1646,50 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-libhandy-sys-0.5
+ (package
+ (name "rust-libhandy-sys")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ih4ws1d9n4qp4rwgsfilklgchqq3prnrb7h3avik1wi5s2ay1yp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "FFI bindings for libhandy")
+ (description "This package provides raw FFI bindings to libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 30/51] gnu: Add rust-libhandy-0.5.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-30-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-libhandy-0.5): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (67 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 32ac1ac249..f8f56ebc76 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1690,6 +1690,60 @@ renders username initials.")
(description "This package provides raw FFI bindings to libhandy.")
(license license:gpl3+)))
+(define-public rust-libhandy-0.5
+ (package
+ (name "rust-libhandy")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libhandy" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "01zska4i6641pj8d9gcc2kclx5vvsbbyfpv4rn5kahs11rigba9a"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-libhandy-sys" ,rust-libhandy-sys-0.5)
+ ("rust-pango" ,rust-pango-0.8))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,(module-ref (resolve-interface '(gnu packages gnome))
+ 'libhandy-0.0))
+ ("pango" ,pango)))
+ (home-page
+ "https://gitlab.gnome.org/World/Rust/libhandy-rs")
+ (synopsis "Rust bindings for libhandy")
+ (description "This package provides Rust bindings for libhandy.")
+ (license license:gpl3+)))
+
(define-public rust-pango-0.9
(package
(name "rust-pango")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 31/51] gnu: Add rust-loggerv-0.7.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-31-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-loggerv-0.7): New variable.
---
gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 4285891f28..a9b89a47b5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -22198,6 +22198,41 @@ by inspecting the system for user preference.")
`(#:cargo-inputs
(("rust-log" ,rust-log-0.4))))))
+(define-public rust-loggerv-0.7
+ (package
+ (name "rust-loggerv")
+ (version "0.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "loggerv" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0x6k903wpm557fkcbr5isgh4yqkkbzw4fm7hwyy61rvimqaxxn30"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ansi-term" ,rust-ansi-term-0.12)
+ ("rust-atty" ,rust-atty-0.2)
+ ("rust-log" ,rust-log-0.4))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "src/lib.rs"
+ (("assert_eq!\\(logger\\.colors, DEFAULT_COLORS\\);" all)
+ (string-append "// " all)))
+ #t)))))
+ (home-page "https://github.com/clux/loggerv")
+ (synopsis "Logger with colors")
+ (description "This package provides a simple log implementation that logs
+to stdout and stderr with colors.")
+ (license license:expat)))
+
(define-public rust-logtest-2
(package
(name "rust-logtest")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 32/51] gnu: Add rust-lmdb-sys-0.8.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-32-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-sys-0.8): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a9b89a47b5..0afa68eba2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21945,6 +21945,30 @@ punctuation.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-lmdb-sys-0.8
+ (package
+ (name "rust-lmdb-sys")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1scc28phjcywr9jq78d01g35rig8l2bwydxcdzl5i27yij1r5cym"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cc" ,rust-cc-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "Rust bindings for liblmdb")
+ (description "This package provides Rust bindings for liblmdb.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 33/51] gnu: Add rust-lmdb-0.8.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-33-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-lmdb-0.8): New variable.
---
gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0afa68eba2..bd1b4dcd16 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -21969,6 +21969,35 @@ punctuation.")
(description "This package provides Rust bindings for liblmdb.")
(license license:asl2.0)))
+(define-public rust-lmdb-0.8
+ (package
+ (name "rust-lmdb")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lmdb" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fc54in9i27v1gpxncay5s85lqx27m0r2vyrfylnljfnnpphh2av"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; use of unstable feature
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-lmdb-sys" ,rust-lmdb-sys-0.8))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-rand" ,rust-rand-0.8)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/danburkert/lmdb-rs.git")
+ (synopsis "LMDB wrapper")
+ (description "This package provides an idiomatic Rust wrapper for LMDB.")
+ (license license:asl2.0)))
+
(define-public rust-lmdb-rkv-0.14
(package
(name "rust-lmdb-rkv")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 34/51] gnu: Add rust-mdl-1.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-34-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-mdl-1): New variable.
---
gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bd1b4dcd16..e53650dcc7 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23092,6 +23092,34 @@ compression function.")
(supported-systems '("x86_64-linux" "i686-linux"))
(license license:expat)))
+(define-public rust-mdl-1
+ (package
+ (name "rust-mdl")
+ (version "1.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "mdl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mavphw0ynhggm310rbldzifcrc507jax1nzwrmj4cz1xv7vw24l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-bincode" ,rust-bincode-1)
+ ("rust-lmdb" ,rust-lmdb-0.8)
+ ("rust-serde" ,rust-serde-1))))
+ (home-page "https://gitlab.gnome.org/danigm/mdl")
+ (synopsis "Data model library")
+ (description "This package provides a data model library to share app state
+between threads and process and persist the data in the filesystem. It
+implements a way to store structs instances in an LMDB database and other
+methods like BTreeMap.")
+ (license license:gpl3)))
+
(define-public rust-measureme-0.7
(package
(name "rust-measureme")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 35/51] gnu: Add rust-aes-soft-0.6.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-35-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-soft-0.6): New variable.
---
gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e53650dcc7..62744faa20 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1263,6 +1263,30 @@ acceleration.")
("rust-subtle" ,rust-subtle-2)
("rust-zeroize" ,rust-zeroize-1))))))
+(define-public rust-aes-soft-0.6
+ (package
+ (name "rust-aes-soft")
+ (version "0.6.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes-soft" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0wj0fi2pvmlw09yvb1aqf0mfkzrfxmjsf90finijh255ir4wf55y"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Bit-sliced implementation of AES (Rijndael) block ciphers")
+ (description "This package provides a bit-sliced implementation of
+AES (Rijndael) block ciphers.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-soft-0.4
(package
(name "rust-aes-soft")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 36/51] gnu: Add rust-aesni-0.10.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-36-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aesni-0.10): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 62744faa20..01eee2f4f4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1332,6 +1332,31 @@ AES (Rijndael) block ciphers.")
("rust-byteorder" ,rust-byteorder-1)
("rust-opaque-debug" ,rust-opaque-debug-0.2))))))
+(define-public rust-aesni-0.10
+ (package
+ (name "rust-aesni")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aesni" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1kmh07fp9hbi1aa8dr2rybbgw8vqz6hjmk34c4w7sbscx7si2bpa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-cipher" ,rust-cipher-0.2)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "AES (Rijndael) block ciphers implementation using AES-NI")
+ (description "This package provides an implementation of AES (Rijndael)
+block ciphers using AES-NI.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aesni-0.7
(package
(name "rust-aesni")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 37/51] gnu: Add rust-aes-0.6.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-37-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-aes-0.6): New variable.
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 01eee2f4f4..cc904820f4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -1162,6 +1162,31 @@ with Associated Data (AEAD) algorithms.")
(("rust-generic-array" ,rust-generic-array-0.12)
("rust-heapless" ,rust-heapless-0.5))))))
+(define-public rust-aes-0.6
+ (package
+ (name "rust-aes")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0q85mw70mgr4glza9y9lrs9nxfa1cdcqzfk6wx0smb3623pr2hw8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-aes-soft" ,rust-aes-soft-0.6)
+ ("rust-aesni" ,rust-aesni-0.10)
+ ("rust-cipher" ,rust-cipher-0.2))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Facade for AES (Rijndael) block ciphers implementations")
+ (description "This package provides a facade for AES (Rijndael) block
+ciphers implementations.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-aes-0.4
(package
(name "rust-aes")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 38/51] gnu: Add rust-block-modes-0.7.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-38-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-block-modes-0.7): New variable.
---
gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index cc904820f4..558660b7b2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -5206,6 +5206,33 @@ algorithms. This package is deprecated. Please use block-cipher instead.")
`(#:cargo-inputs
(("rust-generic-array" ,rust-generic-array-0.8))))))
+(define-public rust-block-modes-0.7
+ (package
+ (name "rust-block-modes")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "block-modes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1w3jc3n7k4xq98b9mfina4wwpg1fq1s3b0mm5whqialb7q3yi82p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-padding" ,rust-block-padding-0.2)
+ ("rust-cipher" ,rust-cipher-0.2))
+ #:cargo-development-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-hex-literal" ,rust-hex-literal-0.2)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Block cipher modes of operation")
+ (description "This packagee provides block cipher operation modes.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-block-padding-0.2
(package
(name "rust-block-padding")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 39/51] gnu: Add rust-hmac-0.10.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-39-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hmac-0.10): New variable.
---
gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++--------
1 file changed, 31 insertions(+), 8 deletions(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 558660b7b2..2d00bfa73a 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -18070,8 +18070,38 @@ Derivation Function (HKDF).")
(("rust-digest" ,rust-digest-0.8)
("rust-hmac" ,rust-hmac-0.7))))))
+(define-public rust-hmac-0.10
+ (package
+ (name "rust-hmac")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hmac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "058yxq54x7xn0gk2vy9bl51r32c9z7qlcl2b80bjh3lk3rmiqi61"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.10)
+ ("rust-digest" ,rust-digest-0.9))
+ #:cargo-development-inputs
+ (("rust-crypto-mac" ,rust-crypto-mac-0.8)
+ ("rust-md-5" ,rust-md-5-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))
+ (home-page "https://github.com/RustCrypto/MACs")
+ (synopsis "Generic implementation of Hash-based Message Authentication Code")
+ (description
+ "This package provides a generic implementation of @acronym{HMAC,
+Hash-based Message Authentication Code}.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-hmac-0.8
(package
+ (inherit rust-hmac-0.10)
(name "rust-hmac")
(version "0.8.1")
(source
@@ -18083,7 +18113,6 @@ Derivation Function (HKDF).")
(sha256
(base32
"0h48wc7iysh4xd6ci4prh8bb7nszijrh9w3blaaq8a6cilk8hs0j"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
@@ -18091,13 +18120,7 @@ Derivation Function (HKDF).")
#:cargo-development-inputs
(("rust-crypto-mac" ,rust-crypto-mac-0.8)
("rust-md-5" ,rust-md-5-0.9)
- ("rust-sha2" ,rust-sha2-0.9))))
- (home-page "https://github.com/RustCrypto/MACs")
- (synopsis "Generic implementation of Hash-based Message Authentication Code")
- (description
- "This package provides a generic implementation of @acronym{HMAC,
-Hash-based Message Authentication Code}.")
- (license (list license:expat license:asl2.0))))
+ ("rust-sha2" ,rust-sha2-0.9))))))
(define-public rust-hmac-0.7
(package
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 40/51] gnu: Add rust-hkdf-0.10.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-40-leo.prikler@student.tugraz.at
* gnu/packages/crates-io.scm (rust-hkdf-0.10): New variable.
---
gnu/packages/crates-io.scm | 38 ++++++++++++++++++++++++++++++++------
1 file changed, 32 insertions(+), 6 deletions(-)

Toggle diff (73 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2d00bfa73a..637ec9a202 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -18023,23 +18023,24 @@ compile time.")
`(#:cargo-inputs
(("rust-proc-macro-hack" ,rust-proc-macro-hack-0.4))))))
-(define-public rust-hkdf-0.9
+(define-public rust-hkdf-0.10
(package
(name "rust-hkdf")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "hkdf" version))
- (file-name (string-append name "-" version ".tar.gz"))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ "0kwn3scjvv2x8zc6nz3wrnzxp9shpsdxnjqiyv2r65r3kiijzasi"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-digest" ,rust-digest-0.9)
- ("rust-hmac" ,rust-hmac-0.8))
+ ("rust-hmac" ,rust-hmac-0.10))
#:cargo-development-inputs
(("rust-bencher" ,rust-bencher-0.1)
("rust-crypto-tests" ,rust-crypto-tests-0.5)
@@ -18048,10 +18049,35 @@ compile time.")
("rust-sha2" ,rust-sha2-0.9))))
(home-page "https://github.com/RustCrypto/KDFs/")
(synopsis "HMAC-based Extract-and-Expand Key Derivation Function (HKDF)")
- (description "This package provides a HMAC-based Extract-and-Expand Key
+ (description "This package provides an HMAC-based Extract-and-Expand Key
Derivation Function (HKDF).")
(license (list license:expat license:asl2.0))))
+(define-public rust-hkdf-0.9
+ (package
+ (inherit rust-hkdf-0.10)
+ (name "rust-hkdf")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hkdf" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-digest" ,rust-digest-0.9)
+ ("rust-hmac" ,rust-hmac-0.8))
+ #:cargo-development-inputs
+ (("rust-bencher" ,rust-bencher-0.1)
+ ("rust-crypto-tests" ,rust-crypto-tests-0.5)
+ ("rust-hex" ,rust-hex-0.4)
+ ("rust-sha-1" ,rust-sha-1-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))))
+
(define-public rust-hkdf-0.8
(package
(inherit rust-hkdf-0.9)
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 41/51] gnu: Add rust-dbus-0.2.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-41-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-dbus-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index f8f56ebc76..5dd0dde649 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -228,6 +228,46 @@
("rust-x11" ,rust-x11-2)
("rust-pkg-config" ,rust-pkg-config-0.3))))))
+(define-public rust-dbus-0.2
+ (package
+ (name "rust-dbus")
+ (version "0.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dbus" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0b85dl7y396g8xh1xh89wxnb1fvvf840dar9axavfhhhlq7c385l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: fatal warnings are still fatal
+ #:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-tempdir" ,rust-tempdir-0.3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/diwic/dbus-rs")
+ (synopsis "Rust bindings to D-Bus")
+ (description "This package provides Rust bindings to D-Bus, a bus commonly
+used for inter-process communication.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-gdk-0.13
(package
(name "rust-gdk")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 42/51] gnu: Add rust-secret-service-1.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-42-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-secret-service-1): New variable.
---
gnu/packages/crates-gtk.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (55 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 5dd0dde649..42344b2739 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2109,3 +2109,48 @@ renders username initials.")
("rust-tempfile" ,rust-tempfile-3))))
(inputs
`(("gtk+" ,gtk+)))))
+
+(define-public rust-secret-service-1
+ (package
+ (name "rust-secret-service")
+ (version "1.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "secret-service" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "12hxz35i7sw5xsdldz1c6776fmz98z4dwh5779jis98w61020xbd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; XXX: see rust-dbus
+ #:cargo-inputs
+ (("rust-aes" ,rust-aes-0.6)
+ ("rust-block-modes" ,rust-block-modes-0.7)
+ ("rust-dbus" ,rust-dbus-0.2)
+ ("rust-hkdf" ,rust-hkdf-0.10)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-num" ,rust-num-0.3)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-sha2" ,rust-sha2-0.9))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("dbus" ,dbus)))
+ (home-page "https://github.com/hwchen/secret-service-rs.git")
+ (synopsis "Secret Service interface")
+ (description "This package provides a Rust library to interface with
+the Secret Service API")
+ (license (list license:expat license:asl2.0))))
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 43/51] gnu: Add rust-atk-sys-0.10.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-43-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-atk-sys-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 53 +++++++++++++++++++++++++++++++------
1 file changed, 45 insertions(+), 8 deletions(-)

Toggle diff (75 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 42344b2739..36074b5d77 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -36,8 +36,52 @@
;;; Please: Try to add new module packages in alphabetic order.
;;;
+(define-public rust-atk-sys-0.10
+ (package
+ (name "rust-atk-sys")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atk-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1knzvq2jdkx1nav619jbqsx2ivzh901rsp2wl57wr50x2fpy8c7m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libatk-1")
+ (description "FFI bindings to libatk-1")
+ (license license:expat)))
+
(define-public rust-atk-sys-0.9
(package
+ (inherit rust-atk-sys-0.10)
(name "rust-atk-sys")
(version "0.9.1")
(source
@@ -57,14 +101,7 @@
("rust-pkg-config" ,rust-pkg-config-0.3))
#:cargo-development-inputs
(("rust-shell-words" ,rust-shell-words-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("atk" ,atk)
- ("glib" ,glib)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libatk-1")
- (description "FFI bindings to libatk-1")
- (license license:expat)))
+ ("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-atk-0.8
(package
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 44/51] gnu: Add rust-gtk-sys-0.10.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-44-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gtk-sys-0.10): New variable.
---
gnu/packages/crates-gtk.scm | 53 +++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)

Toggle diff (66 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 36074b5d77..87afa30ddf 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1611,6 +1611,59 @@ GStreamer.")
"LGPL-licensed docs for Gtk-rs crates.")
(license license:lgpl2.0)))
+(define-public rust-gtk-sys-0.10
+ (package
+ (name "rust-gtk-sys")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gtk-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0mq4i161kk6dwiz19ayxgm9fhx7n3r5lm9lbjiyk0qs811pxmb49"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; TODO: ABI mismatch
+ #:cargo-inputs
+ (("rust-atk-sys" ,rust-atk-sys-0.10)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libgtk-3")
+ (description "This package provides FFI bindings to libgtk-3.")
+ (license license:expat)))
+
(define-public rust-gtk-sys-0.9
(package
(name "rust-gtk-sys")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 45/51] gnu: Add rust-atk-0.9.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-45-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-atk-0.9): New variable.
---
gnu/packages/crates-gtk.scm | 56 +++++++++++++++++++++++++++++++------
1 file changed, 48 insertions(+), 8 deletions(-)

Toggle diff (78 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 87afa30ddf..db1160e2d5 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -103,8 +103,55 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
+(define-public rust-atk-0.9
+ (package
+ (name "rust-atk")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atk" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "09n46zp8jgxspdzhmi93cag79jjnr0ila94n8nr53g8hw88ljaw1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atk-sys" ,rust-atk-sys-0.10)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the ATK library")
+ (description "Rust bindings for the ATK library")
+ (license license:expat)))
+
(define-public rust-atk-0.8
(package
+ (inherit rust-atk-0.9)
(name "rust-atk")
(version "0.8.0")
(source
@@ -125,14 +172,7 @@
("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1)
("rust-libc" ,rust-libc-0.2))
#:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
- (inputs
- `(("atk" ,atk)
- ("glib" ,glib)))
- (home-page "https://gtk-rs.org/")
- (synopsis "Rust bindings for the ATK library")
- (description "Rust bindings for the ATK library")
- (license license:expat)))
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-cairo-rs-0.9
(package
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 46/51] gnu: Add rust-gtk-0.9.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-46-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-gtk-0.9): New variable.
---
gnu/packages/crates-gtk.scm | 71 +++++++++++++++++++++++++++++++++----
1 file changed, 65 insertions(+), 6 deletions(-)

Toggle diff (100 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index db1160e2d5..689aea6f2d 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1582,8 +1582,72 @@ GStreamer.")
(description "This package provides FFI bindings to libgstvideo-1.0.")
(license license:expat)))
+(define-public rust-gtk-0.9
+ (package
+ (name "rust-gtk")
+ (version "0.9.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gtk" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0smdll32vlamp4kvxa6sg5m653icas21jd36fvq3laq7ahh2y0ig"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atk" ,rust-atk-0.9)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-cc" ,rust-cc-1)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs"
+ ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-pango-sys" ,rust-pango-sys-0.10)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("pango" ,pango)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the GTK+ 3 library")
+ (description "This package provides Rust bindings for the GTK+ 3 library.")
+ (license license:expat)))
+
(define-public rust-gtk-0.8
(package
+ (inherit rust-gtk-0.9)
(name "rust-gtk")
(version "0.8.1")
(source
@@ -1594,7 +1658,6 @@ GStreamer.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32 "13ygzblfv40l2kp70rnjymz7vk2g2wdjs04lhmk9q8wh0bbyiqc7"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-atk" ,rust-atk-0.8)
@@ -1624,11 +1687,7 @@ GStreamer.")
("cairo" ,cairo)
("glib" ,glib)
("gtk+" ,gtk+)
- ("pango" ,pango)))
- (home-page "https://gtk-rs.org/")
- (synopsis "Rust bindings for the GTK+ 3 library")
- (description "This package provides Rust bindings for the GTK+ 3 library.")
- (license license:expat)))
+ ("pango" ,pango)))))
(define-public rust-gtk-rs-lgpl-docs-0.1
(package
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 47/51] gnu: Add rust-sourceview4-sys-0.2.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-47-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-sys-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 54 +++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (64 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 689aea6f2d..9d7f73a66a 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2343,3 +2343,57 @@ renders username initials.")
(description "This package provides a Rust library to interface with
the Secret Service API")
(license (list license:expat license:asl2.0))))
+
+(define-public rust-sourceview4-sys-0.2
+ (package
+ (name "rust-sourceview4-sys")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "146l7fni9zc68rr1aim5di4mzrk22r8jxb96ww8fgp6f51np690v"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.10)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.10)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3)
+ ("rust-system-deps" ,rust-system-deps-1))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "FFI bindings for GtkSourceView")
+ (description "This package provides FFI bindings for GtkSourceView, version
+4.x.")
+ (license license:lgpl2.1+)))
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 48/51] gnu: Add rust-sourceview4-0.2.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-48-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-0.2): New variable.
---
gnu/packages/crates-gtk.scm | 59 +++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (69 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9d7f73a66a..9e9b6c1961 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -2397,3 +2397,62 @@ the Secret Service API")
(description "This package provides FFI bindings for GtkSourceView, version
4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-0.2
+ (package
+ (name "rust-sourceview4")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourceview4" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1c35bm98gmn93qralgjlippdjm2d6199j811qgrn1zd4iv3j3kv7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.9)
+ ("rust-gdk" ,rust-gdk-0.13)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.9)
+ ("rust-gdk-sys" ,rust-gdk-sys-0.10)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.10)
+ ("rust-glib-sys" ,rust-glib-sys-0.10)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.10)
+ ("rust-gtk" ,rust-gtk-0.9)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.10)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.9)
+ ("rust-sourceview4-sys"
+ ,rust-sourceview4-sys-0.2))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'fix-version-requirements
+ (lambda* (#:key inputs vendor-dir #:allow-other-keys)
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("pango" ,pango)))
+ (home-page "https://gitlab.gnome.org/World/Rust/sourceview4-rs")
+ (synopsis "API bindings for GtkSourceView")
+ (description "This package provides API bindings for GtkSourceView,
+version 4.x.")
+ (license license:lgpl2.1+)))
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 50/51] gnu: Add rust-letter-avatar-for-fractal.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-50-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-letter-avatar-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index bd608991f6..8ec8a47c9b 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -1876,6 +1876,30 @@ converts raw links to http links and strips unwanted tags.")
renders username initials.")
(license license:gpl3+)))
+(define-public rust-letter-avatar-for-fractal
+ (package
+ (inherit rust-letter-avatar-1)
+ (name "rust-letter-avatar")
+ (version "1.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "letter-avatar" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00hnlyckr25h5hvisk90vf88diww6cds140s8cpfhjx4p33kxnm8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-rs" ,rust-cairo-rs-0.8)
+ ("rust-pango" ,rust-pango-0.8)
+ ("rust-pangocairo" ,rust-pangocairo-0.9)
+ ("rust-unicode-segmentation"
+ ,rust-unicode-segmentation-1))))
+ (properties '((hidden? . #t)))))
+
(define-public rust-libhandy-sys-0.5
(package
(name "rust-libhandy-sys")
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 51/51] gnu: Add fractal.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-51-leo.prikler@student.tugraz.at
* gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/gnome.scm (fractal): New variable.
---
gnu/local.mk | 1 +
gnu/packages/gnome.scm | 143 +++++++++++++++++-
...ractal-switch-from-failure-to-anyhow.patch | 143 ++++++++++++++++++
3 files changed, 286 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch

Toggle diff (321 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 3fb496a771..52baef2e0c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1006,6 +1006,7 @@ dist_patch_DATA = \
%D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/fpc-reproducibility.patch \
%D%/packages/patches/fplll-std-fenv.patch \
+ %D%/packages/patches/fractal-switch-from-failure-to-anyhow.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freebayes-devendor-deps.patch \
%D%/packages/patches/freeimage-unbundle.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index adb036d5e5..76806f08c1 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -12145,7 +12145,6 @@ editing environment for translation issues within the GNU gettext/GNOME desktop
world.")
(license license:gpl3+)))
-
(define-public ocrfeeder
(package
(name "ocrfeeder")
@@ -12208,3 +12207,145 @@ world.")
(description "OCRFeeder is a complete Optical Character Recognition and
Document Analysis and Recognition program.")
(license license:gpl3+)))
+
+(define-public fractal
+ (package
+ (name "fractal")
+ (version "4.4.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/GNOME/fractal")
+ (commit version)))
+ (file-name (string-append "fractal-" version))
+ (sha256
+ (base32
+ "1v2aw41gfmixki6g7j7mcav7i7qkn17k7zndvvfv08rgsrvma8qd"))
+ (patches
+ (search-patches
+ "fractal-switch-from-failure-to-anyhow.patch"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:imported-modules
+ (,@%cargo-build-system-modules
+ ,@%meson-build-system-modules)
+ #:modules
+ ((guix build cargo-build-system)
+ (guix build utils)
+ ((guix build meson-build-system) #:prefix meson:))
+ #:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-comrak" ,rust-comrak-0.7)
+ ("rust-directories" ,rust-directories-2)
+ ("rust-dirs" ,rust-dirs-2)
+ ("rust-either" ,rust-either-1)
+ ("rust-fragile" ,rust-fragile-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gettext" ,rust-gettext-rs-0.4)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gspell" ,rust-gspell-0.4)
+ ("rust-gstreamer" ,rust-gstreamer-0.15)
+ ("rust-gstreamer-pbutils" ,rust-gstreamer-pbutils-0.15)
+ ("rust-gstreamer-player" ,rust-gstreamer-player-0.15)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-html2pango" ,rust-html2pango-0.3)
+ ("rust-letter-avatar" ,rust-letter-avatar-for-fractal)
+ ("rust-libhandy" ,rust-libhandy-0.5)
+ ("rust-loggerv" ,rust-loggerv-0.7)
+ ("rust-md5" ,rust-md5-0.7)
+ ("rust-mdl" ,rust-mdl-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-reqwest" ,rust-reqwest-0.10)
+ ("rust-ruma-identifiers" ,rust-ruma-identifiers-0.17)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-secret-service" ,rust-secret-service-1)
+ ("rust-sourceview4" ,rust-sourceview4-for-fractal))
+ #:install-source? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-cargo
+ (lambda* (#:key vendor-dir #:allow-other-keys)
+ (substitute* "fractal-gtk/Cargo.toml"
+ (("git = .*") "")
+ ;; rust-gettext-rs
+ (("branch = \"no-gettext\"") "version = \"0.4.0\"")
+ ;; rust-sourceview4
+ (("rev = \"fa8819fa7ecbe56f44d951656d3825f468915754\"")
+ "version = \"0.2.0\"")
+ ;; rust-either
+ (("rev = \"60c99bc0723491e2dfd42bbe9b485c5f9323e96b\"")
+ "version = \"1.6.0\"")
+ (("\"serde_untagged\"") "\"serde\""))
+ (substitute*
+ (map
+ (lambda (dir) (string-append dir "/Cargo.toml"))
+ (find-files vendor-dir "system-deps.*" #:directories? #t))
+ (("0.0.10") ,(package-version rust-version-compare-0.0)))
+ (substitute* "meson.build"
+ (("'Cargo.lock',") ""))
+ (substitute* "scripts/cargo.sh"
+ (("export CARGO_HOME=.*" all)
+ (string-append all "\
+mkdir -p $CARGO_HOME
+cp $1/.cargo/config $CARGO_HOME
+")))
+
+ #t))
+ (add-after 'unpack 'skip-gtk-update-icon-cache
+ (lambda _
+ (substitute* "scripts/meson_post_install.py"
+ (("gtk-update-icon-cache") (which "true")))
+ #t))
+ (add-after 'configure 'configure-harder
+ (lambda* (#:key vendor-dir inputs #:allow-other-keys)
+ (for-each
+ (lambda (d)
+ (copy-recursively
+ (string-append (assoc-ref inputs "rust-sourceview4") "/" d)
+ (string-append vendor-dir "/rust-" d "-0.2.0")))
+ '("sourceview4" "sourceview4-sys"))
+ (delete-file-recursively
+ (car (find-files vendor-dir "fractal.*" #:directories? #t)))
+ #t))
+ (add-after 'patch-cargo-checksums 'really-configure
+ (lambda args
+ (apply (assoc-ref meson:%standard-phases 'configure)
+ #:build-type "release"
+ #:configure-flags '()
+ args)))
+ (replace 'build (assoc-ref meson:%standard-phases 'build))
+ (replace 'check
+ (lambda args
+ ((assoc-ref meson:%standard-phases 'check)
+ #:test-target "test"
+ #:parallel-tests? #t
+ #:tests? #t)))
+ (replace 'install (assoc-ref meson:%standard-phases 'install)))))
+ (native-inputs
+ `(("glib:bin" ,glib "bin")
+ ("gettext" ,gettext-minimal)
+ ("meson" ,meson-for-build)
+ ("ninja" ,ninja)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("gspell" ,gspell)
+ ("gst-editing-services" ,gst-editing-services)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-bad" ,gst-plugins-bad)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("libhandy" ,libhandy-0.0)
+ ("openssl" ,openssl)))
+ (synopsis "Matrix messaging app for GNOME")
+ (description "Fractal is a Matrix messaging app for GNOME written in Rust.
+Its interface is optimized for collaboration in large groups, such as free
+software projects.")
+ (home-page "https://wiki.gnome.org/Apps/Fractal")
+ (license license:gpl3)))
diff --git a/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
new file mode 100644
index 0000000000..6b830ecf94
--- /dev/null
+++ b/gnu/packages/patches/fractal-switch-from-failure-to-anyhow.patch
@@ -0,0 +1,143 @@
+From e4ca9dc5c0f4401f350338e4cd9b0734db9371bf Mon Sep 17 00:00:00 2001
+From: Yuki Okushi <huyuumi.dev@gmail.com>
+Date: Thu, 13 Aug 2020 14:41:50 +0900
+Subject: [PATCH] Switch from failure to anyhow
+
+---
+ Cargo.lock | 8 +++++++-
+ fractal-gtk/Cargo.toml | 2 +-
+ fractal-gtk/src/appop/attach.rs | 2 +-
+ fractal-gtk/src/cache/mod.rs | 2 +-
+ fractal-gtk/src/cache/state.rs | 7 +++----
+ fractal-gtk/src/util.rs | 8 ++++----
+ 6 files changed, 17 insertions(+), 12 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index c0b5e5e2..f26d9787 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -88,6 +88,12 @@ dependencies = [
+ "winapi 0.3.9",
+ ]
+
++[[package]]
++name = "anyhow"
++version = "1.0.32"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6b602bfe940d21c130f3895acd65221e8a61270debe89d628b9cb4e3ccb8569b"
++
+ [[package]]
+ name = "arrayref"
+ version = "0.3.6"
+@@ -580,6 +586,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+ name = "fractal-gtk"
+ version = "4.4.0"
+ dependencies = [
++ "anyhow",
+ "cairo-rs",
+ "chrono",
+ "clap",
+@@ -587,7 +594,6 @@ dependencies = [
+ "directories",
+ "dirs",
+ "either 1.5.99",
+- "failure",
+ "fractal-matrix-api",
+ "fragile",
+ "gdk",
+diff --git a/fractal-gtk/Cargo.toml b/fractal-gtk/Cargo.toml
+index 960f64b5..e1c6a33d 100644
+--- a/fractal-gtk/Cargo.toml
++++ b/fractal-gtk/Cargo.toml
+@@ -6,11 +6,11 @@ workspace = "../"
+ edition = "2018"
+
+ [dependencies]
++anyhow = "1.0.32"
+ clap = "2.33.0"
+ comrak = "0.7.0"
+ directories = "2.0.2"
+ dirs = "2.0.2"
+-failure = "0.1.6"
+ fragile = "1.0.0"
+ gspell = "0.4.0"
+ gdk = "0.12.1"
+diff --git a/fractal-gtk/src/appop/attach.rs b/fractal-gtk/src/appop/attach.rs
+index 3f0813aa..3b5bff4c 100644
+--- a/fractal-gtk/src/appop/attach.rs
++++ b/fractal-gtk/src/appop/attach.rs
+@@ -6,7 +6,7 @@ use std::io::prelude::*;
+ use std::path::PathBuf;
+ use std::sync::{Arc, Mutex};
+
+-use failure::Error;
++use anyhow::Error;
+
+ use gtk::prelude::*;
+
+diff --git a/fractal-gtk/src/cache/mod.rs b/fractal-gtk/src/cache/mod.rs
+index 76942866..8943eac6 100644
+--- a/fractal-gtk/src/cache/mod.rs
++++ b/fractal-gtk/src/cache/mod.rs
+@@ -12,7 +12,7 @@ use std::thread;
+
+ use crate::types::Room;
+ use crate::types::RoomList;
+-use failure::Error;
++use anyhow::Error;
+ use fractal_api::identifiers::{DeviceId, UserId};
+ use std::collections::HashMap;
+ use std::hash::Hash;
+diff --git a/fractal-gtk/src/cache/state.rs b/fractal-gtk/src/cache/state.rs
+index 7cb5372a..0e62c59b 100644
+--- a/fractal-gtk/src/cache/state.rs
++++ b/fractal-gtk/src/cache/state.rs
+@@ -4,8 +4,7 @@ use mdl::Model;
+ use mdl::Store;
+ use serde::{Deserialize, Serialize};
+
+-use failure::err_msg;
+-use failure::Error;
++use anyhow::{anyhow, Error};
+
+ use std::cell::RefCell;
+ use std::fs::remove_dir_all;
+@@ -127,8 +126,8 @@ impl FCache {
+ guard.take();
+
+ let fname = cache_dir_path(None, "cache.mdl")
+- .or_else(|_| Err(err_msg("Can't remove cache file")))?;
+- remove_dir_all(fname).or_else(|_| Err(err_msg("Can't remove cache file")))
++ .or_else(|_| Err(anyhow!("Can't remove cache file")))?;
++ remove_dir_all(fname).or_else(|_| Err(anyhow!("Can't remove cache file")))
+ }
+
+ #[allow(dead_code)]
+diff --git a/fractal-gtk/src/util.rs b/fractal-gtk/src/util.rs
+index 764a8e8e..b2feb12c 100644
+--- a/fractal-gtk/src/util.rs
++++ b/fractal-gtk/src/util.rs
+@@ -1,6 +1,6 @@
+ use crate::globals::CACHE_PATH;
+-use failure::format_err;
+-use failure::Error as FailError;
++use anyhow::anyhow;
++use anyhow::Error as AnyhowError;
+ use gdk::prelude::*;
+ use gdk_pixbuf::Pixbuf;
+ use gio::{Settings, SettingsExt, SettingsSchemaSource};
+@@ -21,9 +21,9 @@ pub fn cache_dir_path(dir: Option<&str>, name: &str) -> Result<PathBuf, IoError>
+ Ok(path.join(name))
+ }
+
+-pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, FailError> {
++pub fn get_pixbuf_data(pb: &Pixbuf) -> Result<Vec<u8>, AnyhowError> {
+ let image = cairo::ImageSurface::create(cairo::Format::ARgb32, pb.get_width(), pb.get_height())
+- .or_else(|_| Err(format_err!("Cairo Error")))?;
++ .or_else(|_| Err(anyhow!("Cairo Error")))?;
+
+ let g = cairo::Context::new(&image);
+ g.set_source_pixbuf(pb, 0.0, 0.0);
+--
+2.30.1
+
--
2.31.0
L
L
Leo Prikler wrote on 17 Mar 2021 21:27
[PATCH v8 49/51] gnu: Add rust-sourceview4-for-fractal.
(address . 44492@debbugs.gnu.org)
20210317202735.14024-49-leo.prikler@student.tugraz.at
* gnu/packages/crates-gtk.scm (rust-sourceview4-for-fractal): New variable.
---
gnu/packages/crates-gtk.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
index 9e9b6c1961..bd608991f6 100644
--- a/gnu/packages/crates-gtk.scm
+++ b/gnu/packages/crates-gtk.scm
@@ -20,6 +20,7 @@
(define-module (gnu packages crates-gtk)
#:use-module (guix build-system cargo)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
@@ -2456,3 +2457,31 @@ the Secret Service API")
(description "This package provides API bindings for GtkSourceView,
version 4.x.")
(license license:lgpl2.1+)))
+
+(define-public rust-sourceview4-for-fractal
+ (package
+ (inherit rust-sourceview4-0.2)
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/World/Rust/sourceview4-rs/")
+ (commit "fa8819fa7ecbe56f44d951656d3825f468915754")))
+ (file-name "rust-sourceview4-0.2.0.tar.gz")
+ (sha256
+ (base32
+ "0aib8385fxdpw79sasfzn6q11sqx3wigkb267if9fb12bagycgpk"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-gdk" ,rust-gdk-0.12)
+ ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
+ ("rust-gio" ,rust-gio-0.9)
+ ("rust-gio-sys" ,rust-gio-sys-0.10)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-gtk" ,rust-gtk-0.8)
+ ("rust-gtk-sys" ,rust-gtk-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.8))))
+ (properties `((hidden? . #t)))))
--
2.31.0
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 44492@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 44492
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch