Merge branch 'master' into staging
[jackhill/guix/guix.git] / gnu / packages / webkit.scm
index 30dde65..b671e44 100644 (file)
@@ -2,7 +2,8 @@
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -35,6 +36,7 @@
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnupg)
   #:use-module (gnu packages gperf)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
 (define-public webkitgtk
   (package
     (name "webkitgtk")
-    (version "2.14.4")
+    (version "2.20.5")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://www.webkitgtk.org/releases/"
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1b73rcyfqjyg5rqw6f4760b2h1kixwva88clp2wl9vnl3psjvbni"))))
+                "147r7an41920zl4x9srdva7fxvw2znjin5ldjkhay1cndv9gih0m"))))
     (build-system cmake-build-system)
     (arguments
      '(#:tests? #f ; no tests
                           "-DPORT=GTK"
                           (string-append ; uses lib64 by default
                            "-DLIB_INSTALL_DIR="
-                           (assoc-ref %outputs "out") "/lib"))
+                           (assoc-ref %outputs "out") "/lib")
+
+                          ;; XXX Adding GStreamer GL support would apparently
+                          ;; require adding gst-plugins-bad to the inputs,
+                          ;; which might entail a security risk as a result of
+                          ;; the plugins of dubious code quality that are
+                          ;; included.  More investigation is needed.  For
+                          ;; now, we explicitly disable it to prevent an error
+                          ;; at configuration time.
+                          "-DUSE_GSTREAMER_GL=OFF"
+
+                          ;; XXX Disable WOFF2 ‘web fonts’.  These were never
+                          ;; supported in our previous builds.  Enabling them
+                          ;; requires building libwoff2 and possibly woff2dec.
+                          "-DUSE_WOFF2=OFF")
        #:phases
        (modify-phases %standard-phases
          (add-after
                     (string-append (getenv "C_INCLUDE_PATH")
                                    ":"
                                    (assoc-ref inputs "gst-plugins-base")
-                                   "/include/gstreamer-1.0")))))))
+                                   "/include/gstreamer-1.0"))
+            #t)))))
     (native-inputs
      `(("bison" ,bison)
        ("gettext" ,gettext-minimal)
      `(("at-spi2-core" ,at-spi2-core)
        ("enchant" ,enchant)
        ("geoclue" ,geoclue)
-       ("gnutls" ,gnutls)
        ("gst-plugins-base" ,gst-plugins-base)
        ("gtk+-2" ,gtk+-2)
        ("harfbuzz" ,harfbuzz)
        ("hyphen" ,hyphen)
        ("icu4c" ,icu4c)
+       ("libgcrypt" ,libgcrypt)
        ("libjpeg" ,libjpeg)
        ("libnotify" ,libnotify)
        ("libpng" ,libpng)
        ("libsecret" ,libsecret)
+       ("libtasn1" ,libtasn1)
        ("libwebp" ,libwebp)
        ("libxcomposite" ,libxcomposite)
        ("libxml2" ,libxml2)
        ("libxt" ,libxt)
        ("mesa" ,mesa)
        ("sqlite" ,sqlite)))
-    (home-page "http://www.webkitgtk.org/")
+    (home-page "https://www.webkitgtk.org/")
     (synopsis "Web content engine for GTK+")
     (description
      "WebKitGTK+ is a full-featured port of the WebKit rendering engine,
@@ -131,50 +149,3 @@ HTML/CSS applications to full-fledged web browsers.")
                    license:lgpl2.1+
                    license:bsd-2
                    license:bsd-3))))
-
-;; Latest release of the stable 2.4 series, with WebKit1 support.
-(define-public webkitgtk-2.4
-  (package (inherit webkitgtk)
-    (name "webkitgtk")
-    (version "2.4.11")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "http://www.webkitgtk.org/releases/"
-                                  name "-" version ".tar.xz"))
-              (sha256
-               (base32
-                "1xsvnvyvlywwyf6m9ainpsg87jkxjmd37q6zgz9cxb7v3c2ym2jq"))))
-    (build-system gnu-build-system)
-    (arguments
-     '(#:tests? #f ; no tests
-       ;; FIXME: Disabling parallel building is a quick hack to avoid the
-       ;; failure described in
-       ;; https://lists.gnu.org/archive/html/guix-devel/2016-01/msg00837.html
-       ;; A more structural fix is needed.
-       #:parallel-build? #f
-       #:phases (modify-phases %standard-phases
-                  (add-after
-                   'unpack 'set-gcc
-                   (lambda _ (setenv "CC" "gcc") #t)))))
-    (native-inputs
-     `(("flex" ,flex)
-       ("which" ,which)
-       ,@(package-native-inputs webkitgtk)))))
-
-;; Last GTK+2 port, required by GnuCash.
-(define-public webkitgtk/gtk+-2
-  (package (inherit webkitgtk-2.4)
-    (name "webkitgtk-gtk2")
-    (arguments
-     `(;; FIXME: Disabling parallel building is a quick hack to avoid the
-       ;; failure described in
-       ;; https://lists.gnu.org/archive/html/guix-devel/2016-01/msg00837.html
-       ;; A more structural fix is needed.
-       #:parallel-build? #f
-       #:configure-flags
-       '("--enable-webkit2=no"
-         "--with-gtk=2.0")
-       ,@(package-arguments webkitgtk-2.4)))
-    (propagated-inputs
-     `(("gtk+-2" ,gtk+-2)
-       ("libsoup" ,libsoup)))))