Subject: [PATCH] gnu: Move netsurf to web-browsers.scm.

From: Kei Kebreau <[email-masked]>
Date: Sat, 29 Apr 2017 18:09:42 -0400

* gnu/packages/web.scm: Move netsurf...
* gnu/packages/web-browsers.scm: ...here.
---
 gnu/packages/web-browsers.scm | 122 ++++++++++++++++++++++++++++++++++++++++++
 gnu/packages/web.scm          | 116 ---------------------------------------
 2 files changed, 122 insertions(+), 116 deletions(-)

diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm
index 3ff69611b..fe971de91 100644
--- a/gnu/packages/web-browsers.scm
+++ b/gnu/packages/web-browsers.scm
@@ -1,4 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016 Efraim Flashner <[email-masked]>
 ;;; Copyright © 2016 Kei Kebreau <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -20,13 +21,20 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (gnu packages)
+  #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages fltk)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages libidn)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages textutils)
   #:use-module (gnu packages tls)
+  #:use-module (gnu packages web)
   #:use-module (gnu packages xorg)
   #:use-module (guix download)
   #:use-module (guix build-system gnu))
@@ -61,3 +69,117 @@
 older or slower computers and embedded systems.")
     (home-page "http://www.dillo.org")
     (license license:gpl3+)))
+
+(define-public netsurf
+  (package
+    (name "netsurf")
+    (version "3.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://download.netsurf-browser.org/netsurf/"
+                           "releases/source/netsurf-" version "-src.tar.gz"))
+       (sha256
+        (base32
+         "174sjx0566agckwmlj4w2cip5qbxdiafyhlp185a1qprxx84pbjr"))
+       (patches (search-patches "netsurf-system-utf8proc.patch"
+                                "netsurf-y2038-tests.patch"
+                                "netsurf-longer-test-timeout.patch"))))
+    (build-system glib-or-gtk-build-system)
+    (native-inputs
+     `(("netsurf-buildsystem" ,netsurf-buildsystem)
+       ("nsgenbind" ,nsgenbind)
+       ("libidn" ,libidn)               ;only for tests
+       ("check" ,check)
+       ("perl" ,perl)
+       ("perl-html-parser" ,perl-html-parser)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("curl" ,curl)
+       ("gtk+" ,gtk+-2)
+       ("openssl" ,openssl)
+       ("utf8proc" ,utf8proc)
+       ("libpng" ,libpng)
+       ("libjpeg" ,libjpeg)
+       ("libcss" ,libcss)
+       ("libdom" ,libdom)
+       ("libnsbmp" ,libnsbmp)
+       ("libnsgif" ,libnsgif)
+       ("libnspsl" ,libnspsl)
+       ("libnsutils" ,libnsutils)
+       ("libsvgtiny" ,libsvgtiny)
+       ("miscfiles" ,miscfiles)))
+    (arguments
+     `(#:make-flags `("CC=gcc" "BUILD_CC=gcc"
+                      ,(string-append "PREFIX=" %output)
+                      ,(string-append "NSSHARED="
+                                      (assoc-ref %build-inputs
+                                                 "netsurf-buildsystem")
+                                      "/share/netsurf-buildsystem"))
+       #:test-target "test"
+       #:modules ((ice-9 rdelim)
+                  (ice-9 match)
+                  (srfi srfi-1)
+                  (sxml simple)
+                  ,@%glib-or-gtk-build-system-modules)
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (add-after 'build 'adjust-welcome
+           (lambda _
+             ;; First, fix some unended tags and simple substitutions
+             (substitute* "frontends/gtk/res/welcome.html"
+               (("<(img|input)([^>]*)>" _ tag contents)
+                (string-append "<" tag contents " />"))
+               (("Licence") "License") ;prefer GNU spelling
+               ((" open source") ", free software")
+               (("web&nbsp;site") "website")
+               ;; Prefer privacy-respecting default search engine
+               (("www.google.co.uk") "www.duckduckgo.com/html")
+               (("Google Search") "DuckDuckGo Search")
+               (("name=\"btnG\"") ""))
+             ;; Remove default links so it doesn't seem we're endorsing them
+             (with-atomic-file-replacement "frontends/gtk/res/welcome.html"
+               (lambda (in out)
+                 ;; Leave the DOCTYPE header as is
+                 (display (read-line in 'concat) out)
+                 (sxml->xml
+                  (let rec ((sxml (xml->sxml in)))
+                    ;; We'd like to use sxml-match here, but it can't
+                    ;; match against generic tag symbols...
+                    (match sxml
+                      (`(div (@ (class "links")) . ,rest)
+                       '())
+                      ((x ...)
+                       (map rec x))
+                      (x x)))
+                  out)))
+             #t))
+         (add-before 'check 'patch-check
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* '("test/bloom.c" "test/hashtable.c")
+               (("/usr/share/dict/words")
+                (string-append (assoc-ref inputs "miscfiles") "/share/web2")))
+             #t))
+         (add-after 'install 'install-more
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (desktop (string-append out "/share/applications/"
+                                            "netsurf.desktop")))
+               (mkdir-p (dirname desktop))
+               (copy-file "frontends/gtk/res/netsurf-gtk.desktop"
+                          desktop)
+               (substitute* desktop
+                 (("netsurf-gtk") (string-append out "/bin/netsurf"))
+                 (("netsurf.png") (string-append out "/share/netsurf/"
+                                                 "netsurf.xpm")))
+               (install-file "Docs/netsurf-gtk.1"
+                             (string-append out "/share/man/man1/"))
+               #t))))))
+    (home-page "http://www.netsurf-browser.org")
+    (synopsis "Web browser")
+    (description
+     "NetSurf is a lightweight web browser that has its own layout and
+rendering engine entirely written from scratch.  It is small and capable of
+handling many of the web standards in use today.")
+    (license license:gpl2+)))
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 487366b4a..6a4489508 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -69,10 +69,8 @@
   #:use-module (gnu packages gnu-doc)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages gperf)
-  #:use-module (gnu packages gtk)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
-  #:use-module (gnu packages libidn)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages base)
@@ -4101,120 +4099,6 @@ Public Suffix List.  It is developed as part of the NetSurf project.")
 w3c webidl files and a binding configuration file.")
     (license l:expat)))
 
-(define-public netsurf
-  (package
-    (name "netsurf")
-    (version "3.6")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (string-append "http://download.netsurf-browser.org/netsurf/"
-                           "releases/source/netsurf-" version "-src.tar.gz"))
-       (sha256
-        (base32
-         "174sjx0566agckwmlj4w2cip5qbxdiafyhlp185a1qprxx84pbjr"))
-       (patches (search-patches "netsurf-system-utf8proc.patch"
-                                "netsurf-y2038-tests.patch"
-                                "netsurf-longer-test-timeout.patch"))))
-    (build-system glib-or-gtk-build-system)
-    (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("nsgenbind" ,nsgenbind)
-       ("libidn" ,libidn)               ;only for tests
-       ("check" ,check)
-       ("perl" ,perl)
-       ("perl-html-parser" ,perl-html-parser)
-       ("pkg-config" ,pkg-config)))
-    (inputs
-     `(("curl" ,curl)
-       ("gtk+" ,gtk+-2)
-       ("openssl" ,openssl)
-       ("utf8proc" ,utf8proc)
-       ("libpng" ,libpng)
-       ("libjpeg" ,libjpeg)
-       ("libcss" ,libcss)
-       ("libdom" ,libdom)
-       ("libnsbmp" ,libnsbmp)
-       ("libnsgif" ,libnsgif)
-       ("libnspsl" ,libnspsl)
-       ("libnsutils" ,libnsutils)
-       ("libsvgtiny" ,libsvgtiny)
-       ("miscfiles" ,miscfiles)))
-    (arguments
-     `(#:make-flags `("CC=gcc" "BUILD_CC=gcc"
-                      ,(string-append "PREFIX=" %output)
-                      ,(string-append "NSSHARED="
-                                      (assoc-ref %build-inputs
-                                                 "netsurf-buildsystem")
-                                      "/share/netsurf-buildsystem"))
-       #:test-target "test"
-       #:modules ((ice-9 rdelim)
-                  (ice-9 match)
-                  (srfi srfi-1)
-                  (sxml simple)
-                  ,@%glib-or-gtk-build-system-modules)
-       #:phases
-       (modify-phases %standard-phases
-         (delete 'configure)
-         (add-after 'build 'adjust-welcome
-           (lambda _
-             ;; First, fix some unended tags and simple substitutions
-             (substitute* "frontends/gtk/res/welcome.html"
-               (("<(img|input)([^>]*)>" _ tag contents)
-                (string-append "<" tag contents " />"))
-               (("Licence") "License") ;prefer GNU spelling
-               ((" open source") ", free software")
-               (("web&nbsp;site") "website")
-               ;; Prefer privacy-respecting default search engine
-               (("www.google.co.uk") "www.duckduckgo.com/html")
-               (("Google Search") "DuckDuckGo Search")
-               (("name=\"btnG\"") ""))
-             ;; Remove default links so it doesn't seem we're endorsing them
-             (with-atomic-file-replacement "frontends/gtk/res/welcome.html"
-               (lambda (in out)
-                 ;; Leave the DOCTYPE header as is
-                 (display (read-line in 'concat) out)
-                 (sxml->xml
-                  (let rec ((sxml (xml->sxml in)))
-                    ;; We'd like to use sxml-match here, but it can't
-                    ;; match against generic tag symbols...
-                    (match sxml
-                      (`(div (@ (class "links")) . ,rest)
-                       '())
-                      ((x ...)
-                       (map rec x))
-                      (x x)))
-                  out)))
-             #t))
-         (add-before 'check 'patch-check
-           (lambda* (#:key inputs #:allow-other-keys)
-             (substitute* '("test/bloom.c" "test/hashtable.c")
-               (("/usr/share/dict/words")
-                (string-append (assoc-ref inputs "miscfiles") "/share/web2")))
-             #t))
-         (add-after 'install 'install-more
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (desktop (string-append out "/share/applications/"
-                                            "netsurf.desktop")))
-               (mkdir-p (dirname desktop))
-               (copy-file "frontends/gtk/res/netsurf-gtk.desktop"
-                          desktop)
-               (substitute* desktop
-                 (("netsurf-gtk") (string-append out "/bin/netsurf"))
-                 (("netsurf.png") (string-append out "/share/netsurf/"
-                                                 "netsurf.xpm")))
-               (install-file "Docs/netsurf-gtk.1"
-                             (string-append out "/share/man/man1/"))
-               #t))))))
-    (home-page "http://www.netsurf-browser.org")
-    (synopsis "Web browser")
-    (description
-     "NetSurf is a lightweight web browser that has its own layout and
-rendering engine entirely written from scratch.  It is small and capable of
-handling many of the web standards in use today.")
-    (license l:gpl2+)))
-
 (define-public surfraw
   (package
     (name "surfraw")
-- 
2.12.2