summary refs log tree commit diff
path: root/gnu/packages/gtk.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/gtk.scm')
-rw-r--r--gnu/packages/gtk.scm130
1 files changed, 99 insertions, 31 deletions
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index a01e6d0dd3..c0c0794f4a 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -7,6 +7,7 @@
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
+;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -60,7 +61,7 @@
 (define-public atk
   (package
    (name "atk")
-   (version "2.16.0")
+   (version "2.18.0")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -68,7 +69,7 @@
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "0qp5i91kfk6rhrlam3s8ha0cz88lkyp89vsyn4pb5856c1h9hpq9"))))
+              "0ay9s137x49f0akx658p7kznz0rdapfrd8ym54q0hlgrggblhv6f"))))
    (build-system gnu-build-system)
    (outputs '("out" "doc"))
    (arguments
@@ -144,7 +145,7 @@ affine transformation (scale, rotation, shear, etc.).")
 (define-public harfbuzz
   (package
    (name "harfbuzz")
-   (version "1.0.3")
+   (version "1.0.5")
    (source (origin
              (method url-fetch)
              (uri (string-append "http://www.freedesktop.org/software/"
@@ -152,7 +153,7 @@ affine transformation (scale, rotation, shear, etc.).")
                                  version ".tar.bz2"))
              (sha256
               (base32
-               "1xrxlrvgyr6mm9qjxmkif2kvcah082y94gf1vqi0f0bdl1g8gp7b"))))
+               "0h2l362qzkck5dnnj7zlz593hf1ni3k25dfaii9mbjwflp3d56ad"))))
    (build-system gnu-build-system)
    (outputs '("out"
               "bin")) ; 160K, only hb-view depend on cairo
@@ -182,7 +183,7 @@ affine transformation (scale, rotation, shear, etc.).")
 (define-public pango
   (package
    (name "pango")
-   (version "1.36.8")
+   (version "1.38.1")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/pango/"
@@ -190,7 +191,7 @@ affine transformation (scale, rotation, shear, etc.).")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "01rdzjh68w8l5zn0648yibyarj8p6g7yfn59nw5awaz1i8dvbnqq"))))
+              "1dsf45m51i4rcyvh5wlxxrjfhvn5b67d5ckjc6vdcxbddjgmc80k"))))
    (build-system gnu-build-system)
    (propagated-inputs
     `(("cairo" ,cairo)
@@ -253,8 +254,10 @@ functions which were removed.")
     (build-system waf-build-system)
     (arguments
      `(#:phases (alist-cons-before
-                 'configure 'set-ldflags
+                 'configure 'set-flags
                  (lambda* (#:key outputs #:allow-other-keys)
+                   ;; Compile with C++11, required by gtkmm.
+                   (setenv "CXXFLAGS" "-std=c++11")
                    ;; Allow 'bin/ganv_bench' to find libganv-1.so.
                    (setenv "LDFLAGS"
                            (string-append "-Wl,-rpath="
@@ -275,7 +278,7 @@ graph-like environments, e.g. modular synths or finite state machine
 diagrams.")
     (license license:gpl3+)))
 
-(define-public gtksourceview
+(define-public gtksourceview-2
   (package
     (name "gtksourceview")
     (version "2.10.5") ; This is the last version which builds against gtk+2
@@ -290,7 +293,6 @@ diagrams.")
     (build-system gnu-build-system)
     (inputs
      `(("gtk" ,gtk+-2)
-       ("libxml2" ,libxml2)
        ;; These two are needed only to allow the tests to run successfully.
        ("xorg-server" ,xorg-server)
        ("shared-mime-info" ,shared-mime-info)))
@@ -298,6 +300,9 @@ diagrams.")
      `(("intltool" ,intltool)
        ("glib" ,glib "bin")             ; for glib-genmarshal, etc.
        ("pkg-config" ,pkg-config)))
+    (propagated-inputs
+     ;; As per the pkg-config file.
+     `(("libxml2" ,libxml2)))
     (arguments
      `(#:phases
        ;; Unfortunately, some of the tests in "make check" are highly dependent
@@ -329,6 +334,54 @@ printing and other features typical of a source code editor.")
     (license license:lgpl2.0+)
     (home-page "https://developer.gnome.org/gtksourceview/")))
 
+(define-public gtksourceview
+ (package
+   (name "gtksourceview")
+   (version "3.18.1")
+   (source (origin
+             (method url-fetch)
+             (uri (string-append "mirror://gnome/sources/" name "/"
+                                 (version-major+minor version) "/"
+                                 name "-" version ".tar.xz"))
+             (sha256
+              (base32
+               "1rpdg8rcjlqv8yk13vsh5148mads0zbfih8cak3hm7wb0spmzsbv"))))
+   (build-system gnu-build-system)
+   (arguments
+    '(#:phases
+      (modify-phases %standard-phases
+        (add-before
+         'check 'pre-check
+         (lambda* (#:key inputs #:allow-other-keys)
+           (let ((xorg-server (assoc-ref inputs "xorg-server")))
+             ;; Tests require a running X server.
+             (system (format #f "~a/bin/Xvfb :1 &" xorg-server))
+             (setenv "DISPLAY" ":1")
+             ;; For the missing /etc/machine-id.
+             (setenv "DBUS_FATAL_WARNINGS" "0")
+             #t))))))
+   (native-inputs
+    `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
+      ("intltool" ,intltool)
+      ("itstool", itstool)
+      ("gobject-introspection" ,gobject-introspection)
+      ("pkg-config" ,pkg-config)
+      ("vala" ,vala)
+      ;; For testing.
+      ("xorg-server" ,xorg-server)
+      ("shared-mime-info" ,shared-mime-info)))
+   (propagated-inputs
+    ;; gtksourceview-3.0.pc refers to all these.
+    `(("glib" ,glib)
+      ("gtk+" ,gtk+)
+      ("libxml2" ,libxml2)))
+   (home-page "https://wiki.gnome.org/Projects/GtkSourceView")
+   (synopsis "GNOME source code widget")
+   (description "GtkSourceView is a text widget that extends the standard
+GTK+ text widget GtkTextView.  It improves GtkTextView by implementing syntax
+highlighting and other features typical of a source code editor.")
+   (license license:lgpl2.1+)))
+
 (define-public gdk-pixbuf
   (package
    (name "gdk-pixbuf")
@@ -381,7 +434,7 @@ in the GNOME project.")
 (define-public at-spi2-core
   (package
    (name "at-spi2-core")
-   (version "2.16.0")
+   (version "2.18.1")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -389,7 +442,7 @@ in the GNOME project.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "1l3l39mw23zyjlcqidvkyqlr4gwbhplzw2hcv3qvn6p8ikxpf2qw"))))
+              "1kq17w4fm51d49vzmglkxqdm6s0yvjvrpgw78r2hajf69jz5bmap"))))
    (build-system gnu-build-system)
    (outputs '("out" "doc"))
    (arguments
@@ -402,6 +455,8 @@ in the GNOME project.")
         (replace 'check
                  ;; Run test-suite under a dbus session.
                  (lambda _
+                   ;; Don't fail on missing  '/etc/machine-id'.
+                   (setenv "DBUS_FATAL_WARNINGS" "0")
                    (zero? (system* "dbus-launch" "make" "check")))))))
    (propagated-inputs
     ;; atspi-2.pc refers to all these.
@@ -424,7 +479,7 @@ is part of the GNOME accessibility project.")
 (define-public at-spi2-atk
   (package
    (name "at-spi2-atk")
-   (version "2.16.0")
+   (version "2.18.1")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -432,7 +487,7 @@ is part of the GNOME accessibility project.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "1y9gfz1iz3wpja7s000f0bmyyvc6im5fcdl6bxwbz0v3qdgc9vvq"))))
+              "0bf1g5cj84rmx7p1q547vwbc0hlpcs2wrxnmv96lckfkhs9mzcf4"))))
    (build-system gnu-build-system)
    (arguments
     '(#:phases
@@ -440,6 +495,7 @@ is part of the GNOME accessibility project.")
         (replace 'check
                  ;; Run test-suite under a dbus session.
                  (lambda _
+                   (setenv "DBUS_FATAL_WARNINGS" "0")
                    (zero? (system* "dbus-launch" "make" "check")))))))
    (propagated-inputs
     `(("at-spi2-core" ,at-spi2-core))) ; required by atk-bridge-2.0.pc
@@ -514,7 +570,7 @@ application suites.")
 (define-public gtk+
   (package (inherit gtk+-2)
    (name "gtk+")
-   (version "3.16.6")
+   (version "3.18.2")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -522,12 +578,13 @@ application suites.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "1gpzlnfrifc17yfk0zki6b2vmsfpf5cmrbh232s6iaan11np44jd"))))
+              "0lp1hn0qydxx03bianzzr0a4maqzsvylrkzr7c3p0050qihwbgjx"))))
    (propagated-inputs
     `(("at-spi2-atk" ,at-spi2-atk)
       ("atk" ,atk)
       ("gdk-pixbuf" ,gdk-pixbuf)
       ("libepoxy" ,libepoxy)
+      ("libxcursor" ,libxcursor)
       ("libxi" ,libxi)
       ("libxinerama" ,libxinerama)
       ("libxdamage" ,libxdamage)
@@ -535,7 +592,13 @@ application suites.")
    (inputs
     `(("librsvg" ,librsvg)                        ;for gtk-encode-symbolic-svg
       ("libxml2" ,libxml2)
-      ("cups" ,cups)))                            ;for printing support
+      ;; XXX: colord depends on mozjs (through polkit), which fails on
+      ;;      on non-intel systems now.
+      ;;("colord" ,colord)
+      ("cups" ,cups)                            ;for printing support
+      ;; XXX: rest depends on p11-kit, which fails on mips64el now.
+      ;;("rest" ,rest)
+      ("json-glib" ,json-glib)))
    (native-inputs
     `(("perl" ,perl)
       ("glib" ,glib "bin")
@@ -731,14 +794,15 @@ documents.")
 (define-public cairomm
   (package
     (name "cairomm")
-    (version "1.11.2")
+    (version "1.12.0")
     (source (origin
-             (method url-fetch)
-             (uri (string-append "http://cairographics.org/releases/cairomm-"
-                                 version ".tar.gz"))
-             (sha256
-              (base32
-               "138052ybc58q5yl92m2p0br0k0a9g1pi9gfhmn4y220yih4pgxnc"))))
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/cairomm/"
+                                  (version-major+minor version) "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "1rmgs6zjj2vaxh9hsa0944m23fdn1psycqh7bi984qd8jj1xljm5"))))
     (build-system gnu-build-system)
     (arguments
      ;; The examples lack -lcairo.
@@ -759,7 +823,7 @@ library.")
 (define-public pangomm
   (package
     (name "pangomm")
-    (version "2.36.0")
+    (version "2.38.1")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnome/sources/" name "/"
@@ -767,7 +831,7 @@ library.")
                                  name "-" version ".tar.xz"))
              (sha256
               (base32
-               "1w11d05nkxglzg67rfa81vqghm75xhy6j396xmmp5mq8qx96knd8"))))
+               "12xwjvqfxhqblcv7641k0l6r8n3qifnrx8w9571izn1nbd81iyzg"))))
     (build-system gnu-build-system)
     (native-inputs `(("pkg-config" ,pkg-config)))
     (propagated-inputs
@@ -785,7 +849,7 @@ library.")
 (define-public atkmm
   (package
     (name "atkmm")
-    (version "2.22.7")
+    (version "2.24.1")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnome/sources/" name "/"
@@ -793,7 +857,7 @@ library.")
                                  name "-" version ".tar.xz"))
              (sha256
               (base32
-               "06zrf2ymml2dzp53sss0d4ch4dk9v09jm8rglnrmwk4v81mq9gxz"))))
+               "08zd6s5c1q90wm8310mdrb5f2lj8v63wxihrybwyw13xlf6ivi16"))))
     (build-system gnu-build-system)
     (native-inputs `(("pkg-config" ,pkg-config)))
     (propagated-inputs
@@ -808,7 +872,7 @@ toolkit.")
 (define-public gtkmm
   (package
     (name "gtkmm")
-    (version "3.16.0")
+    (version "3.18.0")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnome/sources/" name "/"
@@ -816,9 +880,10 @@ toolkit.")
                                  name "-" version ".tar.xz"))
              (sha256
               (base32
-               "036xn22jkaf3akpid7w23b8vkqa3xxqz93mwacmyar5vw7slm3cv"))))
+               "0sxq700invkjpksn790gbnl8px8751kvgwn39663jx7dv89s37w2"))))
     (build-system gnu-build-system)
-    (native-inputs `(("pkg-config" ,pkg-config)))
+    (native-inputs `(("pkg-config" ,pkg-config)
+                     ("glib" ,glib "bin")))      ;for 'glib-compile-resources'
     (propagated-inputs
      `(("pangomm" ,pangomm)
        ("cairomm" ,cairomm)
@@ -849,6 +914,9 @@ extensive documentation, including API reference and a tutorial.")
              (sha256
               (base32
                "1vpmjqv0aqb1ds0xi6nigxnhlr0c74090xzi15b92amlzkrjyfj4"))))
+    (arguments
+     '(#:configure-flags '("CPPFLAGS=-std=c++11"))) ; required by libsigc++
+    (native-inputs `(("pkg-config" ,pkg-config)))
     (propagated-inputs
      `(("pangomm" ,pangomm)
        ("cairomm" ,cairomm)
@@ -1040,7 +1108,7 @@ information.")
     (home-page "http://www.gtk.org/gtk-doc/")
     (synopsis "Documentation generator from C source code")
     (description
-     "GTK-Doc generates API documentation from comments added to C code. It is
+     "GTK-Doc generates API documentation from comments added to C code.  It is
 typically used to document the public API of GTK+ and GNOME libraries, but it
 can also be used to document application code.")
     (license license:gpl2+)))