summaryrefslogtreecommitdiff
path: root/gnu/packages/gtk.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/gtk.scm')
-rw-r--r--gnu/packages/gtk.scm181
1 files changed, 75 insertions, 106 deletions
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index cc25fac2aa..2cd4e77c34 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -191,7 +191,7 @@ tools have full access to view and control running applications.")
("pkg-config" ,pkg-config)
("python" ,python-wrapper)))
(inputs
- `(("bash-minimal" ,bash-minimal)
+ `(("bash-minimal" ,bash-minimal) ;for glib-or-gtk-wrap
("drm" ,libdrm)
("ghostscript" ,ghostscript)
("libspectre" ,libspectre)
@@ -243,54 +243,41 @@ output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.")
(define-public harfbuzz
(package
- (name "harfbuzz")
- (version "2.8.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/harfbuzz/harfbuzz"
- "/releases/download/" version "/harfbuzz-"
- version ".tar.xz"))
- (sha256
- (base32
- "1rvv86wpm3y04fqns1655268rhvhvms469837709v2z2bhwn316m"))))
- (build-system gnu-build-system)
- (outputs '("out"
- "bin")) ; 160K, only hb-view depend on cairo
- (inputs
- (list cairo))
- (propagated-inputs
- ;; There are all in the Requires or Requires.private field of '.pc'.
- (list glib graphite2 icu4c))
- (native-inputs
- `(("glib:bin" ,glib "bin") ;for glib-mkenums
- ("gobject-introspection" ,gobject-introspection)
- ("pkg-config" ,pkg-config)
- ("python" ,python-wrapper)
- ("which" ,which)))
- (arguments
- `(#:configure-flags `("--with-graphite2"
- "--with-gobject"
- ,(string-append
- "--bindir=" (assoc-ref %outputs "bin") "/bin"))))
- (synopsis "OpenType text shaping engine")
- (description
- "HarfBuzz is an OpenType text shaping engine.")
- (license (license:x11-style "file://COPYING"
- "See 'COPYING' in the distribution."))
- (home-page "https://www.freedesktop.org/wiki/Software/HarfBuzz/")))
-
-(define-public harfbuzz-3
- (package
- (inherit harfbuzz)
- (version "3.4.0")
+ (name "harfbuzz")
+ (version "4.4.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/harfbuzz/harfbuzz"
- "/releases/download/" version
- "/harfbuzz-" version ".tar.xz"))
+ "/releases/download/" version "/harfbuzz-"
+ version ".tar.xz"))
(sha256
(base32
- "0lprrl8iih8ji1n17xwm5llz05a1hv4g04b7a3y229dq9myahn3i"))))))
+ "1vn9id3i5196bq9q8xpcpzavk0a2xqff5k973pq54blv16n37g65"))))
+ (build-system gnu-build-system)
+ (outputs '("out"
+ "bin")) ;160K, only hb-view depend on cairo
+ (inputs
+ (list cairo))
+ (propagated-inputs
+ ;; There are all in the Requires or Requires.private field of '.pc'.
+ (list glib graphite2 icu4c))
+ (native-inputs
+ (list `(,glib "bin") ;for glib-mkenums
+ gobject-introspection
+ pkg-config
+ python-wrapper
+ which))
+ (arguments
+ (list #:configure-flags
+ #~(list "--with-graphite2"
+ "--with-gobject"
+ (string-append "--bindir=" #$output:bin "/bin"))))
+ (synopsis "OpenType text shaping engine")
+ (description
+ "HarfBuzz is an OpenType text shaping engine.")
+ (license (license:x11-style "file://COPYING"
+ "See 'COPYING' in the distribution."))
+ (home-page "https://www.freedesktop.org/wiki/Software/HarfBuzz/")))
(define-public harfbuzz-4
(package
@@ -371,7 +358,7 @@ applications.")
(define-public pango
(package
(name "pango")
- (version "1.48.10")
+ (version "1.50.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/pango/"
@@ -380,7 +367,7 @@ applications.")
(patches (search-patches "pango-skip-libthai-test.patch"))
(sha256
(base32
- "166wxhsjb6hb0dk7wkkdcmpvasl9n0a0aa64mdgagzfdidwzbq91"))))
+ "0cxdwfvr0rsw82nfqzp29mznlx84q2fri9lrfbgrbinlldlz6xq4"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
@@ -396,26 +383,26 @@ applications.")
(("\\[ 'test-harfbuzz'.*") "")))))))
(propagated-inputs
;; These are all in Requires or Requires.private of the '.pc' files.
- `(("cairo" ,cairo)
- ("fontconfig" ,fontconfig)
- ("freetype" ,freetype)
- ("fribidi" ,fribidi)
- ("glib" ,glib)
- ("harfbuzz" ,harfbuzz)
- ("libthai" ,libthai)
- ;; Some packages, such as Openbox, expect Pango to be built with the
- ;; optional libxft support.
- ("libxft" ,libxft)
- ("libxrender" ,libxrender)))
+ (list cairo
+ fontconfig
+ freetype
+ fribidi
+ glib
+ harfbuzz
+ libthai
+ ;; Some packages, such as Openbox, expect Pango to be built with the
+ ;; optional libxft support.
+ libxft
+ libxrender))
(inputs
(list bash-minimal zlib))
(native-inputs
- `(("glib" ,glib "bin") ; glib-mkenums, etc.
- ("gobject-introspection" ,gobject-introspection) ; g-ir-compiler, etc.
- ("help2man" ,help2man)
- ("perl" ,perl)
- ("pkg-config" ,pkg-config)
- ("python" ,python-wrapper)))
+ (list `(,glib "bin") ;glib-mkenums, etc.
+ gobject-introspection ;g-ir-compiler, etc.
+ help2man
+ perl
+ pkg-config
+ python-wrapper))
(synopsis "Text and font handling library")
(description "Pango is a library for laying out and rendering of text, with
an emphasis on internationalization. Pango can be used anywhere that text
@@ -425,22 +412,6 @@ handling for GTK+-2.x.")
(home-page "https://pango.gnome.org/")
(license license:lgpl2.0+)))
-;; TODO: Make this the default package in next release cycle.
-(define-public pango-next
- (package
- (inherit pango)
- (name "pango")
- (version "1.50.4")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/pango/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (patches (search-patches "pango-skip-libthai-test.patch"))
- (sha256
- (base32
- "0qn1a7ccs3p5vc6swbqm6hdzka879l0gp9220lq4bcf2gpl67bgl"))))))
-
(define-public pango-1.42
(package
(inherit pango)
@@ -693,9 +664,8 @@ highlighting and other features typical of a source code editor.")
(with-directory-excursion "docs"
(substitute* "meson.build"
(("http://docbook.sourceforge.net/release/xsl/current/")
- (string-append (assoc-ref ,(if (%current-target-system)
- '(or native-inputs inputs)
- 'inputs) "docbook-xsl")
+ (string-append (assoc-ref (or native-inputs inputs)
+ "docbook-xsl")
"/xml/xsl/docbook-xsl-1.79.2/")))
(substitute* (find-files "." "\\.xml$")
(("http://www.oasis-open.org/docbook/xml/4\\.3/")
@@ -709,11 +679,11 @@ highlighting and other features typical of a source code editor.")
(("\\[ 'pixbuf-fail', \\['conform', 'slow'\\], \\],")
""))))
;; The slow tests take longer than the specified timeout.
- ,@(if (any (cute string=? <> (%current-system))
- '("armhf-linux" "aarch64-linux"))
+ ,@(if (target-arm? (%current-system))
'((replace 'check
- (lambda _
- (invoke "meson" "test" "--timeout-multiplier" "5"))))
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "meson" "test" "--timeout-multiplier" "5")))))
'()))))
(propagated-inputs
(list ;; Required by gdk-pixbuf-2.0.pc
@@ -1317,7 +1287,7 @@ application suites.")
libxkbcommon
libxrandr
libxrender
- pango-next
+ pango
vulkan-headers
vulkan-loader ;for vulkan graphics API support
wayland ;for wayland display-backend
@@ -1709,10 +1679,8 @@ library.")
(build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
- `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
- #:configure-flags
- (list
- "-Dbuild-documentation=true")
+ '(#:glib-or-gtk? #t
+ #:configure-flags '("-Dbuild-documentation=true")
#:phases
(modify-phases %standard-phases
(add-after 'install 'move-doc
@@ -1722,19 +1690,18 @@ library.")
(mkdir-p (string-append doc "/share"))
(rename-file
(string-append out "/share/doc")
- (string-append doc "/share/doc"))
- #t))))))
+ (string-append doc "/share/doc"))))))))
(native-inputs
- `(("dot" ,graphviz)
- ("doxygen" ,doxygen)
- ("m4" ,m4)
- ("mm-common" ,mm-common)
- ("perl" ,perl)
- ("pkg-config" ,pkg-config)
- ("python" ,python)
- ("xsltproc" ,libxslt)))
+ (list doxygen
+ graphviz ;for 'dot'
+ libxslt ;for 'xsltproc'
+ m4
+ mm-common
+ perl
+ pkg-config
+ python))
(propagated-inputs
- (list cairo cairomm glibmm pango-next))
+ (list cairo cairomm glibmm pango))
(home-page "https://pango.gnome.org//")
(synopsis "C++ interface to the Pango text rendering library")
(description
@@ -1746,7 +1713,7 @@ library.")
(package
(inherit pangomm)
(name "pangomm")
- (version "2.46.0")
+ (version "2.46.2")
(source
(origin
(method url-fetch)
@@ -1755,7 +1722,7 @@ library.")
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
- (base32 "06zczkaxf5p5kjgnzrfylzi40w9a8lxpndgs7rpn12qrsq27sy6k"))))
+ (base32 "1x56xb4k1d9g88a1d9rlcvy97mmj39rib6c3wfzpff04vjs2li2p"))))
(propagated-inputs
(list cairomm-1.14 glibmm-2.64 pango))))
@@ -1970,7 +1937,7 @@ printing and other features typical of a source code editor.")
(define-public python-pycairo
(package
(name "python-pycairo")
- (version "1.20.0")
+ (version "1.21.0")
(source
(origin
(method url-fetch)
@@ -1978,7 +1945,7 @@ printing and other features typical of a source code editor.")
version "/pycairo-" version ".tar.gz"))
(sha256
(base32
- "1326aa2ybhhhrvz3n4p22z5sic25m016ddb5yq0hvbprnw6a35an"))))
+ "0jxpyibpjadw8ah1mqbhvryr795myiznb1ikm8wgjbamibqhf695"))))
(build-system python-build-system)
(native-inputs
(list pkg-config python-pytest))
@@ -1988,6 +1955,8 @@ printing and other features typical of a source code editor.")
(synopsis "Python bindings for cairo")
(description
"Pycairo is a set of Python bindings for the Cairo graphics library.")
+ (properties
+ '((upstream-name . "pycairo")))
(license license:lgpl3+)))
;; Pycairo no longer supports Python 2 since version 1.19.0, so we stick