summaryrefslogtreecommitdiff
path: root/libre/netsurf/PKGBUILD
blob: 97ba868d872d6ad30c3cba6cb1726f9f2a7df84c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# $Id: PKGBUILD 154682 2015-12-28 20:58:40Z heftig $
# Maintainer (Arch): Alexander Rødseth <rodseth@gmail.com>
# Contributor (Arch): Paulo Matias <matiasΘarchlinux-br·org>
# Contributor (Arch): Georgij Kondratjev <smpuj@bk.ru>
# Contributor (Arch): Daniel J Griffiths <ghost1227@archlinux.us>
# Maintainer: André Silva <emulatorman@parabola.nu>

pkgname=netsurf
pkgver=3.3
pkgrel=2.parabola1
pkgdesc='Lightweight and fast web browser, without non-privacy search engines'
arch=('x86_64' 'i686' 'armv7h')
url='http://www.netsurf-browser.org/'
license=('MIT' 'GPL2')
replaces=(${pkgname}-libre)
conflicts=(${pkgname}-libre)
depends=('libmng' 'librsvg' 'libwebp' 'curl' 'lcms' 'desktop-file-utils' 'libnsbmp>=0.1.1' 'libnsgif>=0.1.1' 'libcss>=0.5.0' 'libdom>=0.1.2' 'gtk2' 'libutf8proc' 'libnsutils' 'libwebp') # gtk3
makedepends=('re2c' 'netsurf-buildsystem' 'perl-html-parser' 'nsgenbind' 'inetutils' 'libwebp')
install="$pkgname.install"
source=("http://download.$pkgname-browser.org/$pkgname/releases/source/$pkgname-$pkgver-src.tar.gz"
        'netsurf-remove_webp.patch'
        'netsurf.sh')
sha256sums=('23f92a0940f577b9605f2e54786fea3521680d32d6c00f2a3db1eae3f29e3686'
            'f3729afed925f2762b4800c40065d352f70ac5a77c17df031f1943e3ee68c080'
            '70310682d1612457d7bb3096549110b6ec127f50e97853259fada6be0c52924b')

prepare() {
  cd "$pkgname-$pkgver"

  sed 's:_BSD_SOURCE:_DEFAULT_SOURCE:' -i gtk/Makefile.target
  sed 's:netsurf-gtk:netsurf:' -i gtk/res/netsurf-gtk.desktop
  sed 's:libutf8proc/::' -i utils/idna.c
  sed 's:UTF8PROC_CCC_VIRAMA:UTF8PROC_BIDI_CLASS_EN:' -i utils/idna.c
  sed 's:utf8proc_normalise:utf8proc_reencode:' -i utils/idna.c
  # There are several errors. Asking netsurf upstream to look at it.

  if [ "$CARCH" == "armv7h" ]; then
    patch -Np1 -i "$srcdir/netsurf-remove_webp.patch"
  fi

  # remove non-privacy search engines
  sed -i '\|Google|d
          \|Yahoo|d
          \|Bing|d
          \|Business.com|d
          \|Omgili|d
          \|BBC News|d
          \|Ubuntu Packages|d
          \|Ask[.]com|d
          \|Answers.com|d
          \|Youtube|d
          \|AeroMp3|d
          \|AOL|d
          \|Baidu|d
          \|Amazon|d
          \|Ebay|d
          \|IMDB|d
          \|ESPN|d
          \|Aminet|d
          \|OS4Depot|d
          s|DuckDuckGo|DuckDuckGo HTML|
          s|duckduckgo[.]com|duckduckgo.com/html|
          s|duckduckgo[.]com/html/favicon.ico|duckduckgo.com/favicon.ico|
          s|seeks-project.info|seeks.fr|g
         ' gtk/res/SearchEngines \
           \!NetSurf/Resources/SearchEngines \
           amiga/resources/SearchEngines
  sed -i '\|readable name such as| s|google|duckduckgo|
          \|readable name such as| s|yahoo|seeks|
          \|host address such as www[.]google[.]com| s|google[.]com|duckduckgo.com/html|
          s|google[.]com?search=%s|duckduckgo.com/html/?q=%s|
          \|return strdup| s|google[.]com|duckduckgo.com/html|
          \|return strdup| s|google|duckduckgo|
          \|return strdup| s|duckduckgo[.]com/html/favicon[.]ico|duckduckgo.com/favicon.ico|
          s|www[.]google[.]com/search?q=%s|duckduckgo.com/html/?q=%s|
         ' desktop/searchweb.c
  sed -i 's|google[.][.a-z]\{0,6\}/search|duckduckgo.com/html/search|
          s|Google-Suche|DuckDuckGo HTML|
          s|Google Search|DuckDuckGo HTML|
          s|Ricerca Google|DuckDuckGo HTML|
          s|Google検索|DuckDuckGo HTML|
          \|BBC News|d
          \|Reuters|d
          \|CNN|d
          \|Slashdot|d
          \|Ars Technica|d
          \|The Register|d
          \|W3C|d
          s|google[.][.a-z]\{0,6\}|duckduckgo.com/html|
          s|Google|DuckDuckGo HTML|
          s|[.a-z]\{0,4\}yahoo[.]co[.a-z]\{0,4\}|www.seeks.fr|
          s|Yahoo!|Seeks|
          \|IMDB|d
          s|The Icon Bar|Creative Commons|
          s|www[.]iconbar[.]com|creativecommons.org|
          s|ROOL|Dictionary.com|
          s|www[.]riscosopen[.]org|dictionary.reference.com|
          \|riscos.info|d
         ' \!NetSurf/Resources/de/welcome.html\,faf \
           \!NetSurf/Resources/en/welcome.html\,faf \
           \!NetSurf/Resources/it/welcome.html\,faf \
           \!NetSurf/Resources/ja/welcome.html\,faf
  sed -i 's|nsgenbind -g|nsgenbind|
         ' javascript/Makefile
}

build() {
  if [ "$CARCH" == "armv7h" ]; then
    extra="NETSURF_USE_WEBP=NO"
  else
    extra="NETSURF_USE_WEBP=YES"
  fi

  make -C "$pkgname-$pkgver" \
    PREFIX=/usr \
    TARGET=gtk \
    $extra \
    NETSURF_USE_VIDEO=NO \
    NETSURF_USE_JS=NO \
    NETSURF_USE_MOZJS=NO # Javascript is disabled, for now. See FS#41582
}

package() {
  cd "$pkgname-$pkgver"

  make install PREFIX=/usr DESTDIR="$pkgdir"

  # Script and executable
  mv "$pkgdir/usr/bin/$pkgname" "$pkgdir/usr/bin/$pkgname.elf"
  install -Dm755 "../$pkgname.sh" "$pkgdir/usr/bin/$pkgname"

  # Desktop shortcut
  install -Dm644 "gtk/res/$pkgname.xpm" \
    "$pkgdir/usr/share/pixmaps/$pkgname.xpm"
  install -Dm644 "gtk/res/$pkgname-gtk.desktop" \
    "$pkgdir/usr/share/applications/$pkgname.desktop"

  # License
  install -Dm644 COPYING \
    "$pkgdir/usr/share/licenses/$pkgname/COPYING"
}

# vim:set ts=2 sw=2 et: