1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
4 ;;; This file is part of GNU Guix.
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;;; GNU General Public License for more details.
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19 (define-module (gnu packages crates-gtk)
20 #:use-module (guix build-system cargo)
21 #:use-module (guix download)
22 #:use-module ((guix licenses) #:prefix license:)
23 #:use-module (guix packages)
24 #:use-module (gnu packages)
25 #:use-module (gnu packages crates-io)
26 #:use-module (gnu packages crates-graphics)
27 #:use-module (gnu packages glib)
28 #:use-module (gnu packages gtk))
31 ;;; Please: Try to add new module packages in alphabetic order.
34 (define-public rust-cairo-rs-0.8
36 (name "rust-cairo-rs")
41 (uri (crate-uri "cairo-rs" version))
43 (string-append name "-" version ".tar.gz"))
46 "11303v1fv6hsc9n70ak380gknkf0098phpcxqdhkmahqjsx4jw0m"))))
47 (build-system cargo-build-system)
50 (("rust-bitflags" ,rust-bitflags-1)
51 ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
52 ("rust-glib" ,rust-glib-0.9)
53 ("rust-glib-sys" ,rust-glib-sys-0.9)
54 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
55 ("rust-libc" ,rust-libc-0.2))
56 #:cargo-development-inputs
57 (("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1)
58 ("rust-tempfile" ,rust-tempfile-3))))
61 (home-page "https://gtk-rs.org/")
62 (synopsis "Rust bindings for the Cairo library")
64 "Rust bindings for the Cairo library.")
65 (license license:expat)))
67 (define-public rust-cairo-rs-0.7
69 (inherit rust-cairo-rs-0.8)
70 (name "rust-cairo-rs")
75 (uri (crate-uri "cairo-rs" version))
77 (string-append name "-" version ".tar.gz"))
80 "171m98g41avp5mmshqir4ka21napp7ma5fx45wi9mw5hwdyv8pg0"))))
83 (("rust-bitflags" ,rust-bitflags-1)
84 ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
85 ("rust-glib" ,rust-glib-0.8)
86 ("rust-glib-sys" ,rust-glib-sys-0.9)
87 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
88 ("rust-libc" ,rust-libc-0.2)
89 ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
90 #:cargo-development-inputs
91 (("rust-tempfile" ,rust-tempfile-3))))))
93 (define-public rust-cairo-sys-rs-0.9
95 (name "rust-cairo-sys-rs")
100 (uri (crate-uri "cairo-sys-rs" version))
102 (string-append name "-" version ".tar.gz"))
105 "0qsdy6s57yvscg2rfm7wdqrlhzbn1aq9lhk3dy1vw5f7r81blrgz"))))
106 (build-system cargo-build-system)
109 (("rust-glib-sys" ,rust-glib-sys-0.9)
110 ("rust-libc" ,rust-libc-0.2)
111 ("rust-winapi" ,rust-winapi-0.3)
112 ("rust-x11" ,rust-x11-2)
113 ("rust-pkg-config" ,rust-pkg-config-0.3))))
116 (home-page "https://gtk-rs.org/")
117 (synopsis "FFI bindings to libcairo")
118 (description "This package provides FFI bindings to libcairo.")
119 (license license:expat)))
121 (define-public rust-gdk-pixbuf-0.8
123 (name "rust-gdk-pixbuf")
128 (uri (crate-uri "gdk-pixbuf" version))
130 (string-append name "-" version ".tar.gz"))
133 "1mxxca0fkcw2rsd3kl3nvlb8ys4cgxqx4n5isjbv0adk8q624j72"))))
134 (build-system cargo-build-system)
137 (("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.9)
138 ("rust-gio" ,rust-gio-0.8)
139 ("rust-gio-sys" ,rust-gio-sys-0.9)
140 ("rust-glib" ,rust-glib-0.9)
141 ("rust-glib-sys" ,rust-glib-sys-0.9)
142 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
143 ("rust-libc" ,rust-libc-0.2)
144 ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
145 #:cargo-development-inputs
146 (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
148 `(("gdk-pixbuf" ,gdk-pixbuf)))
149 (home-page "https://gtk-rs.org/")
150 (synopsis "Rust bindings for the GdkPixbuf library")
152 "Rust bindings for the GdkPixbuf library.")
153 (license license:expat)))
155 (define-public rust-gdk-pixbuf-0.7
157 (inherit rust-gdk-pixbuf-0.8)
158 (name "rust-gdk-pixbuf")
163 (uri (crate-uri "gdk-pixbuf" version))
165 (string-append name "-" version ".tar.gz"))
168 "1k2g3w2p57m68bi5sldvkmgjgslgqswrjsijjhqaibdvw67409lp"))))
171 (("rust-fragile" ,rust-fragile-0.3)
172 ("rust-futures-preview" ,rust-futures-preview-0.3)
173 ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.9)
174 ("rust-gio" ,rust-gio-0.7)
175 ("rust-gio-sys" ,rust-gio-sys-0.9)
176 ("rust-glib" ,rust-glib-0.8)
177 ("rust-glib-sys" ,rust-glib-sys-0.9)
178 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
179 ("rust-libc" ,rust-libc-0.2)
180 ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
181 #:cargo-development-inputs
182 (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
184 (define-public rust-gdk-pixbuf-sys-0.9
186 (name "rust-gdk-pixbuf-sys")
191 (uri (crate-uri "gdk-pixbuf-sys" version))
193 (string-append name "-" version ".tar.gz"))
196 "1c2andpjb10y7bahh6nxnksh9m3g5qh4mgq9znx634cy1831p6fq"))))
197 (build-system cargo-build-system)
199 `(#:tests? #f ; tests not included in release
201 (("rust-gio-sys" ,rust-gio-sys-0.9)
202 ("rust-glib-sys" ,rust-glib-sys-0.9)
203 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
204 ("rust-libc" ,rust-libc-0.2)
205 ("rust-pkg-config" ,rust-pkg-config-0.3))
206 #:cargo-development-inputs
207 (("rust-shell-words" ,rust-shell-words-0.1)
208 ("rust-tempfile" ,rust-tempfile-3))))
210 `(("gdk-pixbuf" ,gdk-pixbuf)))
211 (home-page "https://gtk-rs.org/")
212 (synopsis "FFI bindings to libgdk_pixbuf-2.0")
213 (description "This package provides FFI bindings to @code{libgdk_pixbuf-2.0}.")
214 (license license:expat)))
216 (define-public rust-gio-0.8
223 (uri (crate-uri "gio" version))
225 (string-append name "-" version ".tar.gz"))
228 "19cnla2ya0mi6wwaabd5mxbq2kzq46dg6jq2z19rpqyc2na0zl8c"))))
229 (build-system cargo-build-system)
231 `(#:tests? #f ; Not all files included in the tarball.
233 (("rust-bitflags" ,rust-bitflags-1)
234 ("rust-futures-channel" ,rust-futures-channel-0.3)
235 ("rust-futures-core" ,rust-futures-core-0.3)
236 ("rust-futures-io" ,rust-futures-io-0.3)
237 ("rust-futures-util" ,rust-futures-util-0.3)
238 ("rust-gio-sys" ,rust-gio-sys-0.9)
239 ("rust-glib" ,rust-glib-0.9)
240 ("rust-glib-sys" ,rust-glib-sys-0.9)
241 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
242 ("rust-lazy-static" ,rust-lazy-static-1)
243 ("rust-libc" ,rust-libc-0.2)
244 ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
245 #:cargo-development-inputs
246 (("rust-gir-format-check" ,rust-gir-format-check-0.1)
247 ("rust-serial-test" ,rust-serial-test-0.1)
248 ("rust-serial-test-derive" ,rust-serial-test-derive-0.1))))
251 (home-page "https://gtk-rs.org/")
252 (synopsis "Rust bindings for the Gio library")
253 (description "Rust bindings for the Gio library.")
254 (license license:expat)))
256 (define-public rust-gio-0.7
258 (inherit rust-gio-0.8)
264 (uri (crate-uri "gio" version))
266 (string-append name "-" version ".tar.gz"))
269 "1qv0wc1hqyb81c03h81s3xrl9jslrw23fr4yhygxbhih9k9vaqb2"))))
272 (("rust-bitflags" ,rust-bitflags-1)
273 ("rust-fragile" ,rust-fragile-0.3)
274 ("rust-futures-preview" ,rust-futures-preview-0.3)
275 ("rust-gio-sys" ,rust-gio-sys-0.9)
276 ("rust-glib" ,rust-glib-0.8)
277 ("rust-glib-sys" ,rust-glib-sys-0.9)
278 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
279 ("rust-lazy-static" ,rust-lazy-static-1)
280 ("rust-libc" ,rust-libc-0.2)
281 ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
282 #:cargo-development-inputs
283 (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
285 (define-public rust-gio-sys-0.9
287 (name "rust-gio-sys")
292 (uri (crate-uri "gio-sys" version))
294 (string-append name "-" version ".tar.gz"))
297 "049rafihxp3maxg3fwj6062ni9dcfilvhfq6ibnfgsmr89925bag"))))
298 (build-system cargo-build-system)
300 `(#:tests? #f ; Some test libraries not included in release.
302 (("rust-glib-sys" ,rust-glib-sys-0.9)
303 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
304 ("rust-libc" ,rust-libc-0.2)
305 ("rust-pkg-config" ,rust-pkg-config-0.3))
306 #:cargo-development-inputs
307 (("rust-shell-words" ,rust-shell-words-0.1)
308 ("rust-tempfile" ,rust-tempfile-3))))
311 (home-page "http://gtk-rs.org/")
312 (synopsis "FFI bindings to libgio-2.0")
313 (description "This package provides FFI bindings to libgio-2.0.")
314 (license license:expat)))
316 (define-public rust-gir-format-check-0.1
318 (name "rust-gir-format-check")
323 (uri (crate-uri "gir-format-check" version))
325 (string-append name "-" version ".tar.gz"))
328 "0znl4qcgmg0656zk9vjkwdn9wj1zpkd0m0l5jnzmahd80ii7vf4b"))))
329 (build-system cargo-build-system)
330 (home-page "https://github.com/gtk-rs/gir-format-check")
331 (synopsis "File format checker")
332 (description "File format checker in Rust.")
333 (license license:expat)))
335 (define-public rust-glib-0.9
342 (uri (crate-uri "glib" version))
344 (string-append name "-" version ".tar.gz"))
347 "1h3100mf7kdfxibjz5na0sqzbd2mcsyd8pzivn3666w414x5gys0"))))
348 (build-system cargo-build-system)
351 (("rust-bitflags" ,rust-bitflags-1)
352 ("rust-futures-channel" ,rust-futures-channel-0.3)
353 ("rust-futures-core" ,rust-futures-core-0.3)
354 ("rust-futures-executor" ,rust-futures-executor-0.3)
355 ("rust-futures-preview" ,rust-futures-preview-0.3)
356 ("rust-futures-task" ,rust-futures-task-0.3)
357 ("rust-futures-util" ,rust-futures-util-0.3)
358 ("rust-glib-sys" ,rust-glib-sys-0.9)
359 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
360 ("rust-lazy-static" ,rust-lazy-static-1)
361 ("rust-libc" ,rust-libc-0.2))
362 #:cargo-development-inputs
363 (("rust-tempfile" ,rust-tempfile-3))))
366 (home-page "https://gtk-rs.org/")
367 (synopsis "Rust bindings for the GLib library")
369 "Rust bindings for the GLib library.")
370 (license license:expat)))
372 (define-public rust-glib-0.8
374 (inherit rust-glib-0.9)
380 (uri (crate-uri "glib" version))
382 (string-append name "-" version ".tar.gz"))
385 "0ysy87zrwyzhfpf3d8rkyyr3amwj85wky05fsl7kx95s84l269xy"))))
388 (("rust-bitflags" ,rust-bitflags-1)
389 ("rust-futures-preview" ,rust-futures-preview-0.3)
390 ("rust-glib-sys" ,rust-glib-sys-0.9)
391 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
392 ("rust-lazy-static" ,rust-lazy-static-1)
393 ("rust-libc" ,rust-libc-0.2))
394 #:cargo-development-inputs
395 (("rust-tempfile" ,rust-tempfile-3))))))
397 (define-public rust-glib-sys-0.9
399 (name "rust-glib-sys")
404 (uri (crate-uri "glib-sys" version))
406 (string-append name "-" version ".tar.gz"))
409 "1qhnwfqqcp63mx4q9744rfkq78g6ky2j8ppsxxgw0ipl08w6z1cm"))))
410 (build-system cargo-build-system)
412 `(#:tests? #f ; Some test libraries not included in release.
414 (("rust-libc" ,rust-libc-0.2)
415 ("rust-pkg-config" ,rust-pkg-config-0.3))
416 #:cargo-development-inputs
417 (("rust-shell-words" ,rust-shell-words-0.1)
418 ("rust-tempfile" ,rust-tempfile-3))))
421 (home-page "http://gtk-rs.org/")
422 (synopsis "FFI bindings to libglib-2.0")
423 (description "This package provides FFI bindings to libglib-2.0.")
424 (license license:expat)))
426 (define-public rust-gobject-sys-0.9
428 (name "rust-gobject-sys")
433 (uri (crate-uri "gobject-sys" version))
435 (string-append name "-" version ".tar.gz"))
438 "1nakflbp3gjaas4fw7sn3p1p32khyfpcq1h06z7yqd10yq2ail9i"))))
439 (build-system cargo-build-system)
441 `(#:tests? #f ; Some test libraries not included in release.
443 (("rust-glib-sys" ,rust-glib-sys-0.9)
444 ("rust-libc" ,rust-libc-0.2)
445 ("rust-pkg-config" ,rust-pkg-config-0.3))
446 #:cargo-development-inputs
447 (("rust-shell-words" ,rust-shell-words-0.1)
448 ("rust-tempfile" ,rust-tempfile-3))))
451 (home-page "http://gtk-rs.org/")
452 (synopsis "FFI bindings to libgobject-2.0")
453 (description "This package provides FFI bindings to libgobject-2.0.")
454 (license license:expat)))
456 (define-public rust-gtk-rs-lgpl-docs-0.1
458 (name "rust-gtk-rs-lgpl-docs")
463 (uri (crate-uri "gtk-rs-lgpl-docs" version))
464 (file-name (string-append name "-" version ".tar.gz"))
466 (base32 "0xm3lm15j8yfn2jzh3sz6hrq2g2k917ahnp5caxw9c7z8sgr9f4m"))))
467 (build-system cargo-build-system)
470 (("rust-rustdoc-stripper" ,rust-rustdoc-stripper-0.1))))
471 (home-page "https://gtk-rs.org/")
472 (synopsis "LGPL-licensed docs for Gtk-rs crates")
474 "LGPL-licensed docs for Gtk-rs crates.")
475 (license license:lgpl2.0)))
477 (define-public rust-pango-0.8
484 (uri (crate-uri "pango" version))
486 (string-append name "-" version ".tar.gz"))
489 "0xq50950il3228grzs4xvc5s6phxcl5l50grz6syvs0vixr6p70y"))))
490 (build-system cargo-build-system)
493 (("rust-bitflags" ,rust-bitflags-1)
494 ("rust-glib" ,rust-glib-0.9)
495 ("rust-glib-sys" ,rust-glib-sys-0.9)
496 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
497 ("rust-lazy-static" ,rust-lazy-static-1)
498 ("rust-libc" ,rust-libc-0.2)
499 ("rust-pango-sys" ,rust-pango-sys-0.9)
500 ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
501 #:cargo-development-inputs
502 (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
505 (home-page "https://gtk-rs.org/")
506 (synopsis "Rust bindings for the Pango library")
508 "Rust bindings for the Pango library.")
509 (license license:expat)))
511 (define-public rust-pango-0.7
513 (inherit rust-pango-0.8)
519 (uri (crate-uri "pango" version))
521 (string-append name "-" version ".tar.gz"))
524 "11np7nxb69g3kid2l78b7k519x1wk1c3f9yy7swgzy24n5qs0grr"))))
527 (("rust-bitflags" ,rust-bitflags-1)
528 ("rust-glib" ,rust-glib-0.8)
529 ("rust-glib-sys" ,rust-glib-sys-0.9)
530 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
531 ("rust-lazy-static" ,rust-lazy-static-1)
532 ("rust-libc" ,rust-libc-0.2)
533 ("rust-pango-sys" ,rust-pango-sys-0.9)
534 ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
535 #:cargo-development-inputs
536 (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
538 (define-public rust-pango-sys-0.9
540 (name "rust-pango-sys")
545 (uri (crate-uri "pango-sys" version))
547 (string-append name "-" version ".tar.gz"))
550 "0zdynikh6jrfa31fpmbrwnz46a57idci73zzkf0z0g3vj223vfc6"))))
551 (build-system cargo-build-system)
553 `(#:tests? #f ; Some test files not included in release.
555 (("rust-glib-sys" ,rust-glib-sys-0.9)
556 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
557 ("rust-libc" ,rust-libc-0.2)
558 ("rust-pkg-config" ,rust-pkg-config-0.3))
559 #:cargo-development-inputs
560 (("rust-shell-words" ,rust-shell-words-0.1)
561 ("rust-tempfile" ,rust-tempfile-3))))
564 (home-page "https://gtk-rs.org/")
565 (synopsis "FFI bindings to libpango-1.0")
566 (description "This package provides FFI bindings to @code{libpango-1.0}.")
567 (license license:expat)))
569 (define-public rust-pangocairo-0.9
571 (name "rust-pangocairo")
576 (uri (crate-uri "pangocairo" version))
578 (string-append name "-" version ".tar.gz"))
581 "0bap3h78hdqdyln58349qjjbcv45m8a0a16c4n9fprdj1my0gldx"))))
582 (build-system cargo-build-system)
585 (("rust-bitflags" ,rust-bitflags-1)
586 ("rust-cairo-rs" ,rust-cairo-rs-0.8)
587 ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
588 ("rust-glib" ,rust-glib-0.9)
589 ("rust-glib-sys" ,rust-glib-sys-0.9)
590 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
591 ("rust-libc" ,rust-libc-0.2)
592 ("rust-pango" ,rust-pango-0.8)
593 ("rust-pango-sys" ,rust-pango-sys-0.9)
594 ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.10)
595 ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
596 #:cargo-development-inputs
597 (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
600 (home-page "http://gtk-rs.org/")
601 (synopsis "Rust bindings for the PangoCairo library")
603 "Rust bindings for the PangoCairo library.")
604 (license license:expat)))
606 (define-public rust-pangocairo-0.8
608 (inherit rust-pangocairo-0.9)
609 (name "rust-pangocairo")
614 (uri (crate-uri "pangocairo" version))
616 (string-append name "-" version ".tar.gz"))
619 "0qjiwsp73x3w0493dzycyjzxnzwq7ixwmf1ccr5r41pjhxbnk1kl"))))
622 (("rust-bitflags" ,rust-bitflags-1)
623 ("rust-cairo-rs" ,rust-cairo-rs-0.7)
624 ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
625 ("rust-glib" ,rust-glib-0.8)
626 ("rust-glib-sys" ,rust-glib-sys-0.9)
627 ("rust-gobject-sys" ,rust-gobject-sys-0.9)
628 ("rust-libc" ,rust-libc-0.2)
629 ("rust-pango" ,rust-pango-0.7)
630 ("rust-pango-sys" ,rust-pango-sys-0.9)
631 ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.10)
632 ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
633 #:cargo-development-inputs
634 (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
636 (define-public rust-pangocairo-sys-0.10
638 (name "rust-pangocairo-sys")
643 (uri (crate-uri "pangocairo-sys" version))
645 (string-append name "-" version ".tar.gz"))
648 "1zlyf5vajarnxg5034b8qa5w5zajv96lfvlgiki26svpmcqip4m3"))))
649 (build-system cargo-build-system)
652 (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
653 ("rust-glib-sys" ,rust-glib-sys-0.9)
654 ("rust-libc" ,rust-libc-0.2)
655 ("rust-pango-sys" ,rust-pango-sys-0.9)
656 ("rust-pkg-config" ,rust-pkg-config-0.3))
657 #:cargo-development-inputs
658 (("rust-shell-words" ,rust-shell-words-0.1)
659 ("rust-tempfile" ,rust-tempfile-3))))
662 (home-page "https://gtk-rs.org/")
663 (synopsis "FFI bindings to libgtk-3")
664 (description "This package provides FFI bindings to libgtk-3.")
665 (license license:expat)))