unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add WebKitGTK+.
@ 2015-04-07 10:46 宋文武
  2015-04-08 12:04 ` Ludovic Courtès
  2015-04-10 17:54 ` Mark H Weaver
  0 siblings, 2 replies; 6+ messages in thread
From: 宋文武 @ 2015-04-07 10:46 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/gnome.scm (webkitgtk): New variable.
---
 gnu/packages/gnome.scm | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 66 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index f9824b8..f4df1fa 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -27,22 +27,27 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix utils)
+  #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (gnu packages)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
+  #:use-module (gnu packages enchant)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages docbook)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnupg)
+  #:use-module (gnu packages gperf)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages pdf)
   #:use-module (gnu packages popt)
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gnutls)
+  #:use-module (gnu packages icu4c)
   #:use-module (gnu packages iso-codes)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages linux)
@@ -50,6 +55,7 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages ruby)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages compression)
@@ -1782,6 +1788,66 @@ and the GLib main loop, to integrate well with GNOME applications.")
 and other secrets.  It communicates with the \"Secret Service\" using DBus.")
     (license license:lgpl2.1+)))
 
+(define-public webkitgtk
+  (package
+    (name "webkitgtk")
+    (version "2.8.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://www.webkitgtk.org/releases/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "05b8mkr1mv1w5vi5vyczzirgf5nr6qavrdwbcaiv0dghylwx5yh5"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:configure-flags '("-DPORT=GTK")))
+    (native-inputs
+     `(("bison" ,bison)
+       ("gettext" ,gnu-gettext)
+       ("gobject-introspection" ,gobject-introspection)
+       ("gperf" ,gperf)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-2) ; incompatible with Python 3 (print syntax)
+       ("ruby" ,ruby)))
+    (propagated-inputs
+     `(("gtk+" ,gtk+)
+       ("libsoup" ,libsoup)))
+    (inputs
+     ;; TODO: Add geoclue.
+     `(("at-spi2-core" ,at-spi2-core)
+       ("dbus" ,dbus) ; XXX: required by atspi-2.pc
+       ("enchant" ,enchant)
+       ("gnutls" ,gnutls)
+       ("gst-plugins-base" ,gst-plugins-base)
+       ("gtk+-2" ,gtk+-2)
+       ("harfbuzz" ,harfbuzz)
+       ("icu4c" ,icu4c)
+       ("libjpeg" ,libjpeg)
+       ("libnotify" ,libnotify)
+       ("libpng" ,libpng)
+       ("libsecret" ,libsecret)
+       ("libwebp" ,libwebp)
+       ("libxcomposite" ,libxcomposite)
+       ("libxml2" ,libxml2)
+       ("libxslt" ,libxslt)
+       ("libxt" ,libxt)
+       ("mesa" ,mesa)
+       ("sqlite" ,sqlite)))
+    (home-page "http://www.webkitgtk.org/")
+    (synopsis "Web content engine for GTK+")
+    (description
+     "WebKitGTK+ is a full-featured port of the WebKit rendering engine,
+suitable for projects requiring any kind of web integration, from hybrid
+HTML/CSS applications to full-fledged web browsers.")
+    ;; WebKit's JavaScriptCore and WebCore components are available under
+    ;; the GNU LGPL, while the rest is available under a BSD-style license.
+    (license (list license:lgpl2.0
+                   license:lgpl2.1+
+                   license:bsd-2
+                   license:bsd-3))))
+
 (define-public gnome-mines
   (package
     (name "gnome-mines")
-- 
2.2.1

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add WebKitGTK+.
  2015-04-07 10:46 [PATCH] gnu: Add WebKitGTK+ 宋文武
@ 2015-04-08 12:04 ` Ludovic Courtès
  2015-04-10 17:54 ` Mark H Weaver
  1 sibling, 0 replies; 6+ messages in thread
From: Ludovic Courtès @ 2015-04-08 12:04 UTC (permalink / raw)
  To: 宋文武; +Cc: guix-devel

宋文武 <iyzsong@gmail.com> skribis:

> * gnu/packages/gnome.scm (webkitgtk): New variable.

LGTM!

On IRC Andy suggested moving it to a webkit module, which would host
other WebKit-related projects.  I don’t have an opinion, so I’ll let you
make the choice that seems best.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add WebKitGTK+.
  2015-04-07 10:46 [PATCH] gnu: Add WebKitGTK+ 宋文武
  2015-04-08 12:04 ` Ludovic Courtès
@ 2015-04-10 17:54 ` Mark H Weaver
  2015-04-11  2:11   ` 宋文武
  1 sibling, 1 reply; 6+ messages in thread
From: Mark H Weaver @ 2015-04-10 17:54 UTC (permalink / raw)
  To: 宋文武; +Cc: guix-devel

宋文武 <iyzsong@gmail.com> writes:
> * gnu/packages/gnome.scm (webkitgtk): New variable.

Wow, this is great, thanks!

Well, almost.  I applied this to my master branch and tried to compile
it on i686 and got this:

--8<---------------cut here---------------start------------->8---
/gnu/store/3195f0cppgglxr91ir631f4bnvpqk9z0-bash-4.3.33/bin/sh: glib-compile-resources: command not found
Source/WebKit2/CMakeFiles/WebKit2.dir/build.make:62: recipe for target 'DerivedSources/webkit2gtk/WebKit2InspectorGResourceBundle.c' failed
make[2]: *** [DerivedSources/webkit2gtk/WebKit2InspectorGResourceBundle.c] Error 127
make[2]: Leaving directory '/tmp/nix-build-webkitgtk-2.8.0.drv-0/build'
CMakeFiles/Makefile2:897: recipe for target 'Source/WebKit2/CMakeFiles/WebKit2.dir/all' failed
make[1]: *** [Source/WebKit2/CMakeFiles/WebKit2.dir/all] Error 2
--8<---------------cut here---------------end--------------->8---

Does it depend on another change that's only on core-updates?

     Thanks,
       Mark

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add WebKitGTK+.
  2015-04-10 17:54 ` Mark H Weaver
@ 2015-04-11  2:11   ` 宋文武
  2015-04-11 16:30     ` Mark H Weaver
  0 siblings, 1 reply; 6+ messages in thread
From: 宋文武 @ 2015-04-11  2:11 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: Guix-devel

2015-04-11 1:54 GMT+08:00 Mark H Weaver <mhw@netris.org>:
> 宋文武 <iyzsong@gmail.com> writes:
>> * gnu/packages/gnome.scm (webkitgtk): New variable.
>
> Wow, this is great, thanks!
>
> Well, almost.  I applied this to my master branch and tried to compile
> it on i686 and got this:
>
> --8<---------------cut here---------------start------------->8---
> /gnu/store/3195f0cppgglxr91ir631f4bnvpqk9z0-bash-4.3.33/bin/sh: glib-compile-resources: command not found
> Source/WebKit2/CMakeFiles/WebKit2.dir/build.make:62: recipe for target 'DerivedSources/webkit2gtk/WebKit2InspectorGResourceBundle.c' failed
> make[2]: *** [DerivedSources/webkit2gtk/WebKit2InspectorGResourceBundle.c] Error 127
> make[2]: Leaving directory '/tmp/nix-build-webkitgtk-2.8.0.drv-0/build'
> CMakeFiles/Makefile2:897: recipe for target 'Source/WebKit2/CMakeFiles/WebKit2.dir/all' failed
> make[1]: *** [Source/WebKit2/CMakeFiles/WebKit2.dir/all] Error 2
> --8<---------------cut here---------------end--------------->8---
>
> Does it depend on another change that's only on core-updates?
Yes, I forget to add `glib ,"bin"` to native-inputs.
And we have geoclue now, so better add it to inputs.
>
>      Thanks,
>        Mark

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add WebKitGTK+.
  2015-04-11  2:11   ` 宋文武
@ 2015-04-11 16:30     ` Mark H Weaver
  2015-04-11 20:00       ` Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: Mark H Weaver @ 2015-04-11 16:30 UTC (permalink / raw)
  To: 宋文武; +Cc: Guix-devel

宋文武 <iyzsong@gmail.com> writes:

> 2015-04-11 1:54 GMT+08:00 Mark H Weaver <mhw@netris.org>:
>> 宋文武 <iyzsong@gmail.com> writes:
>>> * gnu/packages/gnome.scm (webkitgtk): New variable.
>>
>> Wow, this is great, thanks!
>>
>> Well, almost.  I applied this to my master branch and tried to compile
>> it on i686 and got this:
>>
>> --8<---------------cut here---------------start------------->8---
>> /gnu/store/3195f0cppgglxr91ir631f4bnvpqk9z0-bash-4.3.33/bin/sh: glib-compile-resources: command not found
>> Source/WebKit2/CMakeFiles/WebKit2.dir/build.make:62: recipe for
>> target 'DerivedSources/webkit2gtk/WebKit2InspectorGResourceBundle.c'
>> failed
>> make[2]: *** [DerivedSources/webkit2gtk/WebKit2InspectorGResourceBundle.c] Error 127
>> make[2]: Leaving directory '/tmp/nix-build-webkitgtk-2.8.0.drv-0/build'
>> CMakeFiles/Makefile2:897: recipe for target 'Source/WebKit2/CMakeFiles/WebKit2.dir/all' failed
>> make[1]: *** [Source/WebKit2/CMakeFiles/WebKit2.dir/all] Error 2
>> --8<---------------cut here---------------end--------------->8---
>>
>> Does it depend on another change that's only on core-updates?
> Yes, I forget to add `glib ,"bin"` to native-inputs.

Thanks.  The next problem is that I run out of memory while trying to
link libwebkit2gtk-4.0.so.37.6.3:

--8<---------------cut here---------------start------------->8---
ld: failed to set dynamic section sizes: Memory exhausted
collect2: error: ld returned 1 exit status
Source/WebKit2/CMakeFiles/WebKit2.dir/build.make:17791: recipe for target 'lib/libwebkit2gtk-4.0.so.37.6.3' failed
make[2]: *** [lib/libwebkit2gtk-4.0.so.37.6.3] Error 1
--8<---------------cut here---------------end--------------->8---

I have 2 GB of RAM and 4 GB of swap in this i686 machine.  I'm able to
build GNU IceCat in this same machine, thanks to the fact that we build
without debugging information.

How would people feel about doing the same with webkitgtk?

      Mark

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add WebKitGTK+.
  2015-04-11 16:30     ` Mark H Weaver
@ 2015-04-11 20:00       ` Ludovic Courtès
  0 siblings, 0 replies; 6+ messages in thread
From: Ludovic Courtès @ 2015-04-11 20:00 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: Guix-devel

Mark H Weaver <mhw@netris.org> skribis:

> ld: failed to set dynamic section sizes: Memory exhausted
> collect2: error: ld returned 1 exit status
> Source/WebKit2/CMakeFiles/WebKit2.dir/build.make:17791: recipe for target 'lib/libwebkit2gtk-4.0.so.37.6.3' failed
> make[2]: *** [lib/libwebkit2gtk-4.0.so.37.6.3] Error 1
>
> I have 2 GB of RAM and 4 GB of swap in this i686 machine.  I'm able to
> build GNU IceCat in this same machine, thanks to the fact that we build
> without debugging information.
>
> How would people feel about doing the same with webkitgtk?

I don’t know if that’s enough to fix the problem, but we should do it
anyway.

Ludo’.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-04-11 20:00 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-07 10:46 [PATCH] gnu: Add WebKitGTK+ 宋文武
2015-04-08 12:04 ` Ludovic Courtès
2015-04-10 17:54 ` Mark H Weaver
2015-04-11  2:11   ` 宋文武
2015-04-11 16:30     ` Mark H Weaver
2015-04-11 20:00       ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).