summaryrefslogtreecommitdiff
path: root/libre/icecat/PKGBUILD
blob: ca29d2a2d02e031687be09be8f9f0e8ebf4f9763 (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
# Maintainer: Figue <ffigue at gmail>
# Contributor: Figue <ffigue at gmail>
# Contributor (Parabola): fauno <fauno@kiwwwi.com.ar>
# Contributor (Parabola): vando <facundo@esdebian.org>
# Thank you very much to the older contributors:
# Contributor: evr <evanroman at gmail>
# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com> 

# Changelog
# =3.6.13
# * Installed Privacy Extension by default
# * DDG is now the default search engine
# =3.6.9
# * Added libnotify as required by configure
# =3.6.7
# * Added duckduckgo.com secure search engine
# =3.6.4
# * Disabled SafeBrowsing until we find a non-google alternative (25/6/10)
# * Disabled ContentHandlers and other Google/Yahoo! related services

pkgname=icecat
pkgver=5.0
pkgrel=2
pkgdesc="GNU version of the Firefox browser. SafeBrowsing and other Google services disabled!"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gnu.org/software/gnuzilla/"
license=('GPL' 'MPL' 'LGPL')
depends=('gtk2' 'gcc-libs' 'libidl2' 'mozilla-common' 'nss>=3.12.10' 'libxt'
         'libxrender' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib'
         'alsa-lib' 'libevent' 'sqlite3>=3.7.4' 'libnotify' 'desktop-file-utils'
         'libvpx' 'lcms' 'nspr>=4.8.8' 'libevent' 'libpng' 'cairo')
makedepends=('zip' 'pkg-config' 'diffutils' 'python2' 'wireless_tools'
             'yasm' 'mesa' 'autoconf2.13' 'gconf' 'xorg-server-xvfb')
install=icecat.install
source=(ftp://ftp.gnu.org/gnu/gnuzilla/${pkgver}/${pkgname}-${pkgver}.tar.xz
        mozconfig
        icecat.desktop
        icecat-safe.desktop
        mozilla-firefox-1.0-lang.patch
# Search engines
		internet-archive.xml
		jamendo-en.xml
		logless-search.xml
		scroogle-ssl-english.xml
		yacy.xml
        duck-duck-go-ssl.xml
        duck-duck-go-lite.xml
# Default options
        firefox.js
        region.properties)

build() {

  ICECATDIR="/usr/lib/${pkgname}-${pkgver}" && export ICECATDIR

  msg2 "Patching some files..."
  cd "${srcdir}/${pkgname}-${pkgver}/"
  patch -Np1 -i "${srcdir}/mozilla-firefox-1.0-lang.patch"
  
  cp --remove-destination ${srcdir}/region.properties ./browser/locales/en-US/chrome/browser-region/
  cp --remove-destination ${srcdir}/firefox.js ./browser/app/profile/

  msg2 "Starting build..."
  cp "${srcdir}/mozconfig" .mozconfig

  # Kill @PRE_RELEASE_SUFFIX@ from browser.xul because it
  # gets set to \177 for an unknown reason
  sed -i 's/@PRE_RELEASE_SUFFIX@//g' \
    browser/base/content/browser.xul

  ## Don't generate startup cache. Unbreaks make install
  sed -i 's/^GENERATE_CACHE .*/GENERATE_CACHE = true/' \
    toolkit/mozapps/installer/packager.mk

  export LDFLAGS="-Wl,-rpath,${ICECATDIR} -Wl,-O1,--sort-common,--hash-style=gnu,--as-needed"
  export PYTHON="/usr/bin/python2" 
    
  # PGO
  sed -i '/^NO_PROFILE_GUIDED_OPTIMIZE = 1$/d' \
    memory/jemalloc/Makefile.in
  echo 'LDFLAGS += -lX11 -lXrender' \
    >> layout/build/Makefile.in

  # Start build
  ./configure
  make MOZ_MAKE_FLAGS="${MAKEFLAGS}"

#  LD_PRELOAD="" /usr/bin/Xvfb -nolisten tcp -extension GLX :99 &
#  LD_PRELOAD="" DISPLAY=:99 make -j1 -f client.mk profiledbuild MOZ_MAKE_FLAGS="$MAKEFLAGS"
#  kill $! || true
}

package() {
  ICECATDIR="/usr/lib/${pkgname}-${pkgver}" && export ICECATDIR

  cd "${srcdir}/${pkgname}-${pkgver}/"
  make install DESTDIR="${pkgdir}"

  msg2 "Finishing..."
  install -m755 -d ${pkgdir}/usr/share/applications
  install -m755 -d ${pkgdir}/usr/share/pixmaps
  install -m644 ${srcdir}/${pkgname}-${pkgver}/browser/branding/unofficial/default48.png ${pkgdir}/usr/share/pixmaps/icecat.png
  install -m644 ${srcdir}/icecat.desktop ${pkgdir}/usr/share/applications/
  install -m644 ${srcdir}/icecat-safe.desktop ${pkgdir}/usr/share/applications/

  cd ${pkgdir}/usr/lib
  ln -s ${ICECATDIR} icecat

  # Remove included dictionaries, add symlink to system myspell path
  # Note: this will cause file conflicts when users have installed dictionaries in the old location
  #rm -rf "${pkgdir}/usr/lib/firefox-$pkgver/dictionaries"
  #ln -sf /usr/share/myspell/dicts \
  #  "${pkgdir}/usr/lib/firefox-$pkgver/dictionaries"

  # We don't want the development stuff
  rm -r "$pkgdir"/usr/{include,lib/icecat-devel-$pkgver,share/idl}

  msg2 "Removing proprietary and anti-privacy search engines"
  rm -f ${pkgdir}${ICECATDIR}/searchplugins/{google,answers,amazondotcom,eBay,yahoo,bing}.xml
  msg2 "And provide better ones..."
  install -m755 -d ${pkgdir}${ICECATDIR}/searchplugins/
  install -m644 ${srcdir}/*.xml ${pkgdir}${ICECATDIR}/searchplugins/
}
md5sums=('3fd4f4c2bfdacdd52bbd6e197ceda95f'
         '105f2e5d98d719c37cba5601a59b8593'
         'e81ad01dbc16ba28bf92ba4b7c309ca7'
         'd93fe402b87cd000a869e1fd6badc6c9'
         'bd5db57c23c72a02a489592644f18995'
         '462c68585461f8cdc23c93c46f6ee4cf'
         '2d492295c4308f9bba9ece28d8b3af2d'
         '937ac0e5392b060d93bd33e761fbfa51'
         'cf97082e77e3ef5f1bd74b1db9329965'
         '24528ca3f7f1e1a0ba735231aa3ac1de'
         'c5f00b6b24222aacd5a749d1f59c4d24'
         'e1bda0854de7d764f7401c81bb82b5ef'
         '9952048383966926eea6d67384102425'
         'f1c76e7e244257856a386ca2de69bdf0')