gnu: Split (gnu packages base), adding (gnu packages commencement).
[jackhill/guix/guix.git] / gnu / packages / gtk.scm
CommitLineData
3a08a411
AE
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
141aed80 3;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
3a08a411
AE
4;;;
5;;; This file is part of GNU Guix.
6;;;
7;;; GNU Guix is free software; you can redistribute it and/or modify it
8;;; under the terms of the GNU General Public License as published by
9;;; the Free Software Foundation; either version 3 of the License, or (at
10;;; your option) any later version.
11;;;
12;;; GNU Guix is distributed in the hope that it will be useful, but
13;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15;;; GNU General Public License for more details.
16;;;
17;;; You should have received a copy of the GNU General Public License
18;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20(define-module (gnu packages gtk)
21 #:use-module ((guix licenses)
22 #:renamer (symbol-prefix-proc 'license:))
23 #:use-module (guix packages)
24 #:use-module (guix download)
25 #:use-module (guix build-system gnu)
6131c43d
AE
26 #:use-module (gnu packages compression)
27 #:use-module (gnu packages fontutils)
28 #:use-module (gnu packages ghostscript)
3a08a411 29 #:use-module (gnu packages glib)
95d439b2 30 #:use-module (gnu packages gnome)
a2609b41 31 #:use-module (gnu packages icu4c)
e55354b8 32 #:use-module (gnu packages image)
6131c43d 33 #:use-module (gnu packages pdf)
8b79a547 34 #:use-module (gnu packages perl)
6131c43d
AE
35 #:use-module (gnu packages pkg-config)
36 #:use-module (gnu packages python)
8e70e6d2
LC
37 #:use-module (gnu packages guile)
38 #:use-module (gnu packages xml)
6131c43d 39 #:use-module (gnu packages xorg))
3a08a411
AE
40
41(define-public atk
42 (package
43 (name "atk")
3b8e4347 44 (version "2.10.0")
3a08a411
AE
45 (source (origin
46 (method url-fetch)
3b8e4347
AE
47 (uri (string-append "mirror://gnome/sources/" name "/"
48 (string-take version 4) "/" name "-"
3a08a411
AE
49 version ".tar.xz"))
50 (sha256
51 (base32
3b8e4347 52 "1c2hbg66wfvibsz2ia0ri48yr62751fn950i97c53j3b0fjifsb3"))))
3a08a411 53 (build-system gnu-build-system)
141aed80
LC
54 (inputs `(("glib" ,glib)))
55 (native-inputs
56 `(("pkg-config" ,pkg-config)
426adbe8 57 ("glib" ,glib "bin") ; glib-mkenums, etc.
141aed80 58 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
c5cc5006 59 (synopsis "GNOME accessibility toolkit")
3a08a411
AE
60 (description
61 "ATK provides the set of accessibility interfaces that are implemented
62by other toolkits and applications. Using the ATK interfaces, accessibility
63tools have full access to view and control running applications.")
64 (license license:lgpl2.0+)
65 (home-page "https://developer.gnome.org/atk/")))
6131c43d
AE
66
67(define-public cairo
68 (package
69 (name "cairo")
c3f3e150 70 (version "1.12.16")
6131c43d
AE
71 (source (origin
72 (method url-fetch)
73 (uri (string-append "http://cairographics.org/releases/cairo-"
74 version ".tar.xz"))
75 (sha256
76 (base32
c3f3e150 77 "0inqwsylqkrzcjivdirkjx5nhdgxbdc62fq284c3xppinfg9a195"))))
6131c43d
AE
78 (build-system gnu-build-system)
79 (propagated-inputs
80 `(("fontconfig" ,fontconfig)
81 ("freetype" ,freetype)
82 ("glib" ,glib)
83 ("libpng" ,libpng)
84 ("libx11" ,libx11)
85 ("libxext" ,libxext)
86 ("libxrender" ,libxrender)
87 ("pixman" ,pixman)))
88 (inputs
89 `(("ghostscript" ,ghostscript)
90 ("libspectre" ,libspectre)
6131c43d 91 ("poppler" ,poppler)
6131c43d
AE
92 ("xextproto" ,xextproto)
93 ("zlib" ,zlib)))
c4c4cc05
JD
94 (native-inputs
95 `(("pkg-config" ,pkg-config)
96 ("python" ,python-wrapper)))
6131c43d
AE
97 (arguments
98 `(#:tests? #f)) ; see http://lists.gnu.org/archive/html/bug-guix/2013-06/msg00085.html
99 (synopsis "2D graphics library")
100 (description
101 "Cairo is a 2D graphics library with support for multiple output devices.
102Currently supported output targets include the X Window System (via both
103Xlib and XCB), Quartz, Win32, image buffers, PostScript, PDF, and SVG file
104output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.
105
106Cairo is designed to produce consistent output on all output media while
107taking advantage of display hardware acceleration when available
108eg. through the X Render Extension).
109
110The cairo API provides operations similar to the drawing operators of
111PostScript and PDF. Operations in cairo including stroking and filling cubic
112Bézier splines, transforming and compositing translucent images, and
113antialiased text rendering. All drawing operations can be transformed by any
114affine transformation (scale, rotation, shear, etc.)")
115 (license license:lgpl2.1) ; or Mozilla Public License 1.1
116 (home-page "http://cairographics.org/")))
a2609b41
AE
117
118(define-public harfbuzz
119 (package
120 (name "harfbuzz")
418e82b5 121 (version "0.9.22")
a2609b41
AE
122 (source (origin
123 (method url-fetch)
124 (uri (string-append "http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-"
125 version ".tar.bz2"))
126 (sha256
127 (base32
418e82b5 128 "1nkimwadri6v2kzrmz8y0crmy59gw0kg4i4f6cc786bngs0815lq"))))
a2609b41
AE
129 (build-system gnu-build-system)
130 (inputs
131 `(("cairo" ,cairo)
c4c4cc05
JD
132 ("icu4c" ,icu4c)))
133 (native-inputs
134 `(("pkg-config" ,pkg-config)
ee3e314b 135 ("python" ,python-wrapper)))
a2609b41
AE
136 (synopsis "opentype text shaping engine")
137 (description
138 "HarfBuzz is an OpenType text shaping engine.")
139 (license (license:x11-style "file://COPYING"
140 "See 'COPYING' in the distribution."))
141 (home-page "http://www.freedesktop.org/wiki/Software/HarfBuzz/")))
4b9adff9
AE
142
143(define-public pango
144 (package
145 (name "pango")
146 (version "1.34.1")
147 (source (origin
148 (method url-fetch)
149 (uri (string-append "mirror://gnome/sources/pango/1.34/pango-"
150 version ".tar.xz"))
151 (sha256
152 (base32
153 "0k7662qix7zzh7mf6ikdj594n8jpbfm25z8swz64zbm86kgk1shs"))))
154 (build-system gnu-build-system)
cf2135ff 155 (propagated-inputs
4b9adff9 156 `(("cairo" ,cairo)
4169a4bc
AE
157 ("harfbuzz" ,harfbuzz)))
158 (inputs
141aed80 159 `(("zlib" ,zlib)))
c4c4cc05 160 (native-inputs
141aed80 161 `(("pkg-config" ,pkg-config)
426adbe8 162 ("glib" ,glib "bin") ; glib-mkenums, etc.
141aed80 163 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
4b9adff9
AE
164 (synopsis "GNOME text and font handling library")
165 (description
166 "Pango is the core text and font handling library used in GNOME
167applications. It has extensive support for the different writing systems
168used throughout the world.")
169 (license license:lgpl2.0+)
170 (home-page "https://developer.gnome.org/pango/")))
527e7961 171
5698b8b8
JD
172(define-public pangox-compat
173 (package
174 (name "pangox-compat")
175 (version "0.0.2")
176 (source (origin
177 (method url-fetch)
178 (uri (string-append
179 "mirror://gnome/sources/" name "/" (string-take version 3) "/" name "-"
180 version
181 ".tar.xz"))
182 (sha256
183 (base32
184 "0ip0ziys6mrqqmz4n71ays0kf5cs1xflj1gfpvs4fgy2nsrr482m"))))
185 (build-system gnu-build-system)
186 (inputs
187 `(("glib" ,glib)
188 ("pango" ,pango)))
189 (native-inputs
190 `(("intltool" ,intltool)
191 ("pkg-config" ,pkg-config)))
192 (home-page "https://developer.gnome.org/pango")
193 (synopsis "functions now obsolete in pango")
194 (description "Pangox was a X backend to pango. It is now obsolete and no
195longer provided by recent pango releases. pangox-compat provides the
196functions which were removed.")
197 (license license:lgpl2.0+)))
198
95d439b2
JD
199
200(define-public gtksourceview
201 (package
202 (name "gtksourceview")
203 (version "2.10.5") ; This is the last version which builds against gtk+2
204 (source (origin
205 (method url-fetch)
206 (uri (string-append "mirror://gnome/sources/gtksourceview/"
207 (string-take version 4) "/gtksourceview-"
208 version ".tar.bz2"))
209 (sha256
210 (base32
211 "07hrabhpl6n8ajz10s0d960jdwndxs87szxyn428mpxi8cvpg1f5"))))
212 (build-system gnu-build-system)
213 (inputs
c4c4cc05 214 `(("gtk" ,gtk+-2)
95d439b2 215 ("libxml2" ,libxml2)
95d439b2
JD
216 ;; These two are needed only to allow the tests to run successfully.
217 ("xorg-server" ,xorg-server)
218 ("shared-mime-info" ,shared-mime-info)))
c4c4cc05 219 (native-inputs
44add1ce 220 `(("intltool" ,intltool)
221ed17a 221 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
c4c4cc05 222 ("pkg-config" ,pkg-config)))
95d439b2
JD
223 (arguments
224 `(#:phases
225 ;; Unfortunately, some of the tests in "make check" are highly dependent
226 ;; on the environment therefore, some black magic is required.
227 (alist-cons-before
228 'check 'start-xserver
229 (lambda* (#:key inputs #:allow-other-keys)
230 (let ((xorg-server (assoc-ref inputs "xorg-server"))
231 (mime (assoc-ref inputs "shared-mime-info")))
232
233 ;; There must be a running X server and make check doesn't start one.
234 ;; Therefore we must do it.
235 (system (format #f "~a/bin/Xvfb :1 &" xorg-server))
236 (setenv "DISPLAY" ":1")
237
238 ;; The .lang files must be found in $XDG_DATA_HOME/gtksourceview-2.0
239 (system "ln -s gtksourceview gtksourceview-2.0")
240 (setenv "XDG_DATA_HOME" (getcwd))
241
242 ;; Finally, the mimetypes must be available.
243 (setenv "XDG_DATA_DIRS" (string-append mime "/share/")) ))
244 %standard-phases)))
245 (synopsis "Widget that extends the standard GTK+ 2.x 'GtkTextView' widget")
246 (description
247 "GtkSourceView is a portable C library that extends the standard GTK+
248framework for multiline text editing with support for configurable syntax
249highlighting, unlimited undo/redo, search and replace, a completion framework,
250printing and other features typical of a source code editor.")
251 (license license:lgpl2.0+)
252 (home-page "https://developer.gnome.org/gtksourceview/")))
253
527e7961
AE
254(define-public gdk-pixbuf
255 (package
256 (name "gdk-pixbuf")
257 (version "2.28.2")
258 (source (origin
259 (method url-fetch)
260 (uri (string-append "mirror://gnome/sources/gdk-pixbuf/2.28/gdk-pixbuf-"
261 version ".tar.xz"))
262 (sha256
263 (base32
264 "05s6ksvy1yan6h6zny9n3bmvygcnzma6ljl6i0z9cci2xg116c8q"))))
265 (build-system gnu-build-system)
266 (inputs
267 `(("glib" ,glib)
268 ("libjpeg" ,libjpeg)
269 ("libpng" ,libpng)
c4c4cc05
JD
270 ("libtiff" ,libtiff)))
271 (native-inputs
141aed80 272 `(("pkg-config" ,pkg-config)
426adbe8 273 ("glib" ,glib "bin") ; glib-mkenums, etc.
141aed80 274 ("gobject-introspection", gobject-introspection))) ; g-ir-compiler, etc.
527e7961
AE
275 (synopsis "GNOME image loading and manipulation library")
276 (description
277 "GdkPixbuf is a library for image loading and manipulation developed
278in the GNOME project.")
279 (license license:lgpl2.0+)
280 (home-page "https://developer.gnome.org/gdk-pixbuf/")))
cf2135ff 281
f3fb92e5
AE
282(define-public at-spi2-core
283 (package
284 (name "at-spi2-core")
285 (version "2.10.0")
286 (source (origin
287 (method url-fetch)
288 (uri (string-append "mirror://gnome/sources/" name "/"
289 (string-take version 4) "/" name "-"
290 version ".tar.xz"))
291 (sha256
292 (base32
293 "1ns44yibdgcwzwri7sr075hfs5rh5lgxkh71247a0822az3mahcn"))))
294 (build-system gnu-build-system)
295 (inputs `(("dbus" ,dbus)
296 ("glib" ,glib)
f3fb92e5 297 ("libxi" ,libxi)
c4c4cc05
JD
298 ("libxtst" ,libxtst)))
299 (native-inputs
300 `(("intltool" ,intltool)
301 ("pkg-config" ,pkg-config)))
f3fb92e5
AE
302 (arguments
303 `(#:tests? #f)) ; FIXME: dbind/dbtest fails; one should disable tests in
304 ; a more fine-grained way.
305 (synopsis "Assistive Technology Service Provider Interface, core components")
306 (description
307 "The Assistive Technology Service Provider Interface, core components,
308is part of the GNOME accessibility project.")
309 (license license:lgpl2.0+)
310 (home-page "https://projects.gnome.org/accessibility/")))
311
5fda4784
AE
312(define-public at-spi2-atk
313 (package
314 (name "at-spi2-atk")
315 (version "2.10.0")
316 (source (origin
317 (method url-fetch)
318 (uri (string-append "mirror://gnome/sources/" name "/"
319 (string-take version 4) "/" name "-"
320 version ".tar.xz"))
321 (sha256
322 (base32
323 "150sqc21difazqd53llwfdaqnwfy73bic9hia41xpfy9kcpzz9yy"))))
324 (build-system gnu-build-system)
325 (inputs `(("atk" ,atk)
326 ("at-spi2-core" ,at-spi2-core)
327 ("dbus" ,dbus)
c4c4cc05
JD
328 ("glib" ,glib)))
329 (native-inputs
330 `(("pkg-config" ,pkg-config)))
5fda4784
AE
331 (arguments
332 `(#:tests? #f)) ; FIXME: droute/droute-test fails; one should disable
333 ; tests in a more fine-grained way.
334 (synopsis "Assistive Technology Service Provider Interface, ATK bindings")
335 (description
336 "The Assistive Technology Service Provider Interface
337is part of the GNOME accessibility project.")
338 (license license:lgpl2.0+)
339 (home-page "https://projects.gnome.org/accessibility/")))
340
8b79a547 341(define-public gtk+-2
cf2135ff
AE
342 (package
343 (name "gtk+")
1c8362a8 344 (version "2.24.21")
cf2135ff
AE
345 (source (origin
346 (method url-fetch)
1c8362a8
AE
347 (uri (string-append "mirror://gnome/sources/" name "/"
348 (string-take version 4) "/" name "-"
cf2135ff
AE
349 version ".tar.xz"))
350 (sha256
351 (base32
1c8362a8 352 "1qyw73pr9ryqhir2h1kbx3vm70km4dg2fxrgkrdlpv0rvlb94bih"))))
cf2135ff 353 (build-system gnu-build-system)
4169a4bc 354 (propagated-inputs
cf2135ff 355 `(("atk" ,atk)
cf2135ff 356 ("gdk-pixbuf" ,gdk-pixbuf)
4169a4bc 357 ("pango" ,pango)))
c4c4cc05 358 (native-inputs
1c8362a8 359 `(("perl" ,perl)
426adbe8 360 ("glib" ,glib "bin")
1c8362a8
AE
361 ("pkg-config" ,pkg-config)
362 ("python-wrapper" ,python-wrapper)))
cf2135ff
AE
363 (arguments
364 `(#:phases
d4bf49b1
EB
365 (alist-cons-before
366 'configure 'disable-tests
367 (lambda _
368 ;; FIXME: re-enable tests requiring an X server
369 (substitute* "gtk/Makefile.in"
370 (("SUBDIRS = theme-bits . tests") "SUBDIRS = theme-bits .")))
cf2135ff 371 %standard-phases)))
0327ced2 372 (synopsis "Cross-platform toolkit for creating graphical user interfaces")
cf2135ff
AE
373 (description
374 "GTK+, or the GIMP Toolkit, is a multi-platform toolkit for creating
375graphical user interfaces. Offering a complete set of widgets, GTK+ is
376suitable for projects ranging from small one-off tools to complete
377application suites.")
378 (license license:lgpl2.0+)
379 (home-page "http://www.gtk.org/")))
8e70e6d2 380
8b79a547
AE
381(define-public gtk+
382 (package (inherit gtk+-2)
a58a7c92 383 (version "3.10.1")
8b79a547
AE
384 (source (origin
385 (method url-fetch)
386 (uri (string-append "mirror://gnome/sources/gtk+/"
387 (string-take version 4) "/gtk+-"
388 version ".tar.xz"))
389 (sha256
390 (base32
a58a7c92 391 "1f3a7r3z7i9xh5imlfpfcgyydzkj2fnd0v6ylvqxij0yzfbnhbn1"))))
0e112540 392 (propagated-inputs
8b79a547 393 `(("at-spi2-atk" ,at-spi2-atk)
0e112540
AE
394 ("atk" ,atk)
395 ("gdk-pixbuf" ,gdk-pixbuf)
8b79a547
AE
396 ("libxi" ,libxi)
397 ("libxinerama" ,libxinerama)
0e112540
AE
398 ("pango" ,pango)))
399 (inputs
141aed80 400 `(("libxml2" ,libxml2)))
c4c4cc05 401 (native-inputs
141aed80 402 `(("perl" ,perl)
426adbe8 403 ("glib" ,glib "bin")
8b79a547 404 ("pkg-config" ,pkg-config)
141aed80 405 ("gobject-introspection" ,gobject-introspection)
8b79a547
AE
406 ("python-wrapper" ,python-wrapper)
407 ("xorg-server" ,xorg-server)))
408 (arguments
ce2df078 409 `(#:phases
8b79a547
AE
410 (alist-replace
411 'configure
af949e8e 412 (lambda* (#:key inputs #:allow-other-keys #:rest args)
8b79a547
AE
413 (let ((configure (assoc-ref %standard-phases 'configure)))
414 ;; Disable most tests, failing in the chroot with the message:
415 ;; D-Bus library appears to be incorrectly set up; failed to read
416 ;; machine uuid: Failed to open "/etc/machine-id": No such file or
417 ;; directory.
418 ;; See the manual page for dbus-uuidgen to correct this issue.
419 (substitute* "testsuite/Makefile.in"
ce2df078
LC
420 (("SUBDIRS = gdk gtk a11y css reftests")
421 "SUBDIRS = gdk"))
8b79a547
AE
422 (apply configure args)))
423 %standard-phases)))))
5fda4784 424
8e70e6d2
LC
425;;;
426;;; Guile bindings.
427;;;
428
429(define-public guile-cairo
430 (package
431 (name "guile-cairo")
432 (version "1.4.1")
433 (source (origin
434 (method url-fetch)
435 (uri (string-append
436 "http://download.gna.org/guile-cairo/guile-cairo-"
437 version
438 ".tar.gz"))
439 (sha256
440 (base32
441 "1f5nd9n46n6cwfl1byjml02q3y2hgn7nkx98km1czgwarxl7ws3x"))))
442 (build-system gnu-build-system)
443 (arguments
444 '(#:phases (alist-cons-before
445 'configure 'set-module-directory
446 (lambda* (#:key outputs #:allow-other-keys)
447 ;; Install modules under $out/share/guile/site/2.0.
448 (let ((out (assoc-ref outputs "out")))
449 (substitute* "Makefile.in"
450 (("scmdir = ([[:graph:]]+).*" _ value)
451 (string-append "scmdir = " value "/2.0\n")))
452 (substitute* "cairo/Makefile.in"
453 (("moduledir = ([[:graph:]]+).*" _ value)
454 (string-append "moduledir = "
455 "$(prefix)/share/guile/site/2.0/cairo\n'")))))
456 (alist-cons-after
457 'install 'install-missing-file
458 (lambda* (#:key outputs #:allow-other-keys)
459 ;; By default 'vector-types.scm' is not installed, so do
460 ;; it here.
461 (let ((out (assoc-ref outputs "out")))
462 (copy-file "cairo/vector-types.scm"
463 (string-append out "/share/guile/site/2.0"
464 "/cairo/vector-types.scm"))))
465 %standard-phases))))
466 (inputs
467 `(("guile-lib" ,guile-lib)
468 ("expat" ,expat)
469 ("cairo" ,cairo)
8e70e6d2 470 ("guile" ,guile-2.0)))
c4c4cc05
JD
471 (native-inputs
472 `(("pkg-config" ,pkg-config)))
8e70e6d2
LC
473 (home-page "http://www.nongnu.org/guile-cairo/")
474 (synopsis "Cairo bindings for GNU Guile")
475 (description
476 "Guile-Cairo wraps the Cairo graphics library for Guile Scheme.
477Guile-Cairo is complete, wrapping almost all of the Cairo API. It is API
478stable, providing a firm base on which to do graphics work. Finally, and
479importantly, it is pleasant to use. You get a powerful and well-maintained
480graphics library with all of the benefits of Scheme: memory management,
481exceptions, macros, and a dynamic programming environment.")
482 (license license:lgpl3+)))
66663503
LC
483
484\f
485;;;
486;;; C++ bindings.
487;;;
488
489(define-public cairomm
490 (package
491 (name "cairomm")
492 (version "1.10.0")
493 (source (origin
494 (method url-fetch)
495 (uri (string-append "http://cairographics.org/releases/cairomm-"
496 version ".tar.gz"))
497 (sha256
498 (base32
499 "13rrp96px95m6xnvmsaqb0wcqsnizg3bz334k0yhlyxf7v29d386"))))
500 (build-system gnu-build-system)
501 (arguments
502 ;; The examples lack -lcairo.
503 '(#:make-flags '("LDFLAGS=-lcairo")))
c4c4cc05 504 (native-inputs `(("pkg-config" ,pkg-config)))
66663503
LC
505 (propagated-inputs
506 `(("libsigc++" ,libsigc++)
507 ("freetype" ,freetype)
508 ("fontconfig" ,fontconfig)
509 ("cairo" ,cairo)))
510 (home-page "http://cairographics.org/")
511 (synopsis "C++ bindings to the Cairo 2D graphics library")
512 (description
513 "Cairomm provides a C++ programming interface to the Cairo 2D graphics
514library.")
515 (license license:lgpl2.0+)))
c5cc5006
LC
516
517(define-public pangomm
518 (package
519 (name "pangomm")
520 (version "2.34.0")
521 (source (origin
522 (method url-fetch)
523 (uri (string-append "mirror://gnome/sources/pangomm/2.34/pangomm-"
524 version ".tar.xz"))
525 (sha256
526 (base32
527 "0hcyvv7c5zmivprdam6cp111i6hn2y5jsxzk00m6j9pncbzvp0hf"))))
528 (build-system gnu-build-system)
c4c4cc05 529 (native-inputs `(("pkg-config" ,pkg-config)))
c5cc5006
LC
530 (propagated-inputs
531 `(("cairo" ,cairo)
532 ("cairomm" ,cairomm)
533 ("glibmm" ,glibmm)
534 ("pango" ,pango)))
535 (home-page "http://www.pango.org/")
536 (synopsis "C++ interface to the Pango text rendering library")
537 (description
538 "Pangomm provides a C++ programming interface to the Pango text rendering
539library.")
540 (license license:lgpl2.1+)))
541
542(define-public atkmm
543 (package
544 (name "atkmm")
545 (version "2.22.7")
546 (source (origin
547 (method url-fetch)
548 (uri (string-append "mirror://gnome/sources/atkmm/2.22/atkmm-"
549 version ".tar.xz"))
550 (sha256
551 (base32
552 "06zrf2ymml2dzp53sss0d4ch4dk9v09jm8rglnrmwk4v81mq9gxz"))))
553 (build-system gnu-build-system)
c4c4cc05 554 (native-inputs `(("pkg-config" ,pkg-config)))
c5cc5006
LC
555 (propagated-inputs
556 `(("glibmm" ,glibmm) ("atk" ,atk)))
557 (home-page "http://www.gtkmm.org")
558 (synopsis "C++ interface to the ATK accessibility library")
559 (description
560 "ATKmm provides a C++ programming interface to the ATK accessibility
561toolkit.")
562 (license license:lgpl2.1+)))
563
564(define-public gtkmm
565 (package
566 (name "gtkmm")
567 (version "3.9.16")
568 (source (origin
569 (method url-fetch)
570 (uri (string-append "mirror://gnome/sources/gtkmm/3.9/gtkmm-"
571 version ".tar.xz"))
572 (sha256
573 (base32
574 "0yf8wwv4w02p70nrxsbs0nhm0w4gkn2wggdjygd8vif062anf1rs"))))
575 (build-system gnu-build-system)
c4c4cc05 576 (native-inputs `(("pkg-config" ,pkg-config)))
c5cc5006
LC
577 (propagated-inputs
578 `(("pangomm" ,pangomm)
579 ("cairomm" ,cairomm)
580 ("atkmm" ,atkmm)
581 ("gtk+" ,gtk+)
582 ("glibmm" ,glibmm)))
583 (home-page "http://gtkmm.org/")
584 (synopsis
585 "C++ interface to the GTK+ graphical user interface library")
586 (description
587 "gtkmm is the official C++ interface for the popular GUI library GTK+.
588Highlights include typesafe callbacks, and a comprehensive set of widgets that
589are easily extensible via inheritance. You can create user interfaces either
590in code or with the Glade User Interface designer, using libglademm. There's
591extensive documentation, including API reference and a tutorial.")
592 (license license:lgpl2.1+)))
9c086443
JD
593
594
595(define-public gtkmm-2
596 (package (inherit gtkmm)
597 (version "2.24.2")
598 (source (origin
599 (method url-fetch)
600 (uri (string-append "mirror://gnome/sources/gtkmm/"
601 (string-take version 4) "/gtkmm-"
602 version ".tar.xz"))
603 (sha256
604 (base32
605 "0gcm91sc1a05c56kzh74l370ggj0zz8nmmjvjaaxgmhdq8lpl369"))))
606 (propagated-inputs
607 `(("pangomm" ,pangomm)
608 ("cairomm" ,cairomm)
609 ("atkmm" ,atkmm)
610 ("gtk+" ,gtk+-2)
611 ("glibmm" ,glibmm)))))