gnu: Add NetSurf.
* gnu/packages/web.scm (netsurf): New variable. * gnu/packages/patches/netsurf-about.patch: New patch. * gnu/local.mk (dist_patch_DATA): Add it.
This commit is contained in:
parent
d1cada0450
commit
22df70010a
|
@ -674,6 +674,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/nasm-no-ps-pdf.patch \
|
%D%/packages/patches/nasm-no-ps-pdf.patch \
|
||||||
%D%/packages/patches/net-tools-bitrot.patch \
|
%D%/packages/patches/net-tools-bitrot.patch \
|
||||||
%D%/packages/patches/netcdf-config-date.patch \
|
%D%/packages/patches/netcdf-config-date.patch \
|
||||||
|
%D%/packages/patches/netsurf-about.patch \
|
||||||
%D%/packages/patches/ngircd-handle-zombies.patch \
|
%D%/packages/patches/ngircd-handle-zombies.patch \
|
||||||
%D%/packages/patches/ngircd-no-dns-in-tests.patch \
|
%D%/packages/patches/ngircd-no-dns-in-tests.patch \
|
||||||
%D%/packages/patches/ninja-tests.patch \
|
%D%/packages/patches/ninja-tests.patch \
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
--- netsurf-all-3.5/netsurf/gtk/about.c
|
||||||
|
+++ netsurf-all-3.5/netsurf/gtk/about.c
|
||||||
|
@@ -79,11 +79,11 @@
|
||||||
|
switch (response_id) {
|
||||||
|
|
||||||
|
case ABOUT_RESPONSE_ID_LICENCE:
|
||||||
|
- about_open("about:credits");
|
||||||
|
+ about_open("about:licence");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ABOUT_RESPONSE_ID_CREDITS:
|
||||||
|
- about_open("about:licence");
|
||||||
|
+ about_open("about:credits");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
--- netsurf-all-3.5/netsurf/desktop/version.c
|
||||||
|
+++ netsurf-all-3.5/netsurf/desktop/version.c
|
||||||
|
@@ -20,6 +20,6 @@
|
||||||
|
|
||||||
|
#include "desktop/version.h"
|
||||||
|
|
||||||
|
-const char * const netsurf_version = "3.5 (6th April 1016)";
|
||||||
|
+const char * const netsurf_version = "3.5 (6th April 2016)";
|
||||||
|
const int netsurf_version_major = 3;
|
||||||
|
const int netsurf_version_minor = 5;
|
|
@ -52,12 +52,17 @@
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages cyrus-sasl)
|
#:use-module (gnu packages cyrus-sasl)
|
||||||
#:use-module (gnu packages databases)
|
#:use-module (gnu packages databases)
|
||||||
|
#:use-module (gnu packages bison)
|
||||||
|
#:use-module (gnu packages flex)
|
||||||
#:use-module (gnu packages mit-krb5)
|
#:use-module (gnu packages mit-krb5)
|
||||||
#:use-module (gnu packages gd)
|
#:use-module (gnu packages gd)
|
||||||
#:use-module (gnu packages gettext)
|
#:use-module (gnu packages gettext)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
#:use-module (gnu packages gnome)
|
#:use-module (gnu packages gnome)
|
||||||
|
#:use-module (gnu packages gperf)
|
||||||
|
#:use-module (gnu packages gtk)
|
||||||
#:use-module (gnu packages icu4c)
|
#:use-module (gnu packages icu4c)
|
||||||
|
#:use-module (gnu packages image)
|
||||||
#:use-module (gnu packages lua)
|
#:use-module (gnu packages lua)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
|
@ -3389,3 +3394,114 @@ playback of HTTP request/response traces.")
|
||||||
can easily be invoked on a single file. Your partner can access the file with
|
can easily be invoked on a single file. Your partner can access the file with
|
||||||
tools they trust (e.g. wget).")
|
tools they trust (e.g. wget).")
|
||||||
(license l:gpl2+)))
|
(license l:gpl2+)))
|
||||||
|
|
||||||
|
(define-public netsurf
|
||||||
|
(package
|
||||||
|
(name "netsurf")
|
||||||
|
(version "3.5")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://download.netsurf-browser.org/"
|
||||||
|
"netsurf/releases/source-full/netsurf-all-"
|
||||||
|
version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1vdldzcv42wykajmw8vbql0f1yd44gbx30kywfrrh2x3064ly609"))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet
|
||||||
|
'(begin
|
||||||
|
(substitute* "Makefile"
|
||||||
|
;; Do not clobber PKG_CONFIG_PATH from the environment
|
||||||
|
(("PKG_CONFIG_PATH = \\$")
|
||||||
|
"PKG_CONFIG_PATH := $(PKG_CONFIG_PATH):$")
|
||||||
|
;; Honor make variables
|
||||||
|
(("shell cc") "shell $(CC)"))))
|
||||||
|
(patches (search-patches "netsurf-about.patch"))))
|
||||||
|
(build-system glib-or-gtk-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("pkg-config" ,pkg-config)
|
||||||
|
("perl" ,perl)
|
||||||
|
("perl-html-parser" ,perl-html-parser)
|
||||||
|
("flex" ,flex)
|
||||||
|
("bison" ,bison)))
|
||||||
|
(inputs
|
||||||
|
`(("gtk+" ,gtk+-2)
|
||||||
|
("gperf" ,gperf)
|
||||||
|
("curl" ,curl)
|
||||||
|
("openssl" ,openssl)
|
||||||
|
("libpng" ,libpng)
|
||||||
|
("libjpeg" ,libjpeg)
|
||||||
|
("expat" ,expat)))
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags `("CC=gcc" "BUILD_CC=gcc"
|
||||||
|
,(string-append "PREFIX=" %output))
|
||||||
|
#:parallel-build? #f ;parallel builds not supported
|
||||||
|
#:tests? #f ;no way to easily run from release tarball
|
||||||
|
#:modules ((ice-9 rdelim)
|
||||||
|
(ice-9 match)
|
||||||
|
(srfi srfi-1)
|
||||||
|
(sxml simple)
|
||||||
|
,@%glib-or-gtk-build-system-modules)
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(replace 'configure
|
||||||
|
(lambda _
|
||||||
|
(call-with-output-file "netsurf/Makefile.config"
|
||||||
|
(lambda (port)
|
||||||
|
(format port "~
|
||||||
|
NETSURF_GTK_RESOURCES := $(PREFIX)/share/netsurf/~@
|
||||||
|
")))
|
||||||
|
#t))
|
||||||
|
(add-after 'build 'adjust-welcome
|
||||||
|
(lambda _
|
||||||
|
;; First, fix some unended tags and simple substitutions
|
||||||
|
(substitute* "netsurf/gtk/res/welcome.html"
|
||||||
|
(("<(img|input)([^>]*)>" _ tag contents)
|
||||||
|
(string-append "<" tag contents " />"))
|
||||||
|
(("Licence") "License") ;prefer GNU spelling
|
||||||
|
((" open source") ", free software")
|
||||||
|
(("web 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 "netsurf/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-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 "netsurf/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 "netsurf/Docs/netsurf-gtk.1"
|
||||||
|
(string-append out "/share/man/man1/"))
|
||||||
|
#t))))))
|
||||||
|
(home-page "https://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+)))
|
||||||
|
|
Loading…
Reference in New Issue