# Maintainer: Márcio Silva # Contributor (Parabola): Luke Shumaker # Contributor (Parabola): fauno # Contributor (Parabola): vando # Contributor (Parabola): André Silva # Maintainer (ConnochaetOS): Henry Jensen # Maintainer (Arch) : Ionut Biru # Contributor (Arch): Jakub Schmidtke # Contributor: Figue # Thank you very much to the older contributors: # Contributor: evr # Contributor: Muhammad 'MJ' Jassim # Version Configuration ############################################## _pgo=false _debname=iceweasel _debver=17.0.1 _debrel=1 _debrepo=http://ftp.debian.org/debian/pool/main # locales can be easily generated by running # $ sed -rn 's/.*-l10n-([^.]*)\..*/\1/p' src/*.dsc | sort -u _locales=(ach af ak ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en-GB en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL ga-IE gd gl gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko ku lg lij lt lv mai mk ml mr nb-NO nl nn-NO nso or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta-LK ta te th tr uk vi zh-CN zh-TW zu) pkgbase=iceweasel pkgname=iceweasel-libre pkgver=${_debver}.${_debrel} pkgrel=4 ###################################################################### debfile() { echo "${_debrepo}/${1:0:1}/${1%_*}/${1}"; } if [[ -z $pkgbase ]]; then pkgbase=$pkgname; fi if $_pgo; then pkgname+='-pgo'; fi if [ "$pkgbase" != "$pkgname" ]; then provides+=("$pkgbase=$pkgver") conflicts+=("$pkgbase") fi pkgdesc="A libre version of Debian Iceweasel, the web browser based on Mozilla Firefox." arch=( 'i686' 'mips64el' 'x86_64' ) license=( 'GPL2' 'LGPL' 'MPL' ) depends=( 'alsa-lib' 'dbus-glib' 'desktop-file-utils' 'gtk2' 'hicolor-icon-theme' 'hunspell' 'libevent' 'libnotify' 'libvpx' 'libxt' 'mime-types' 'mozilla-common' 'mozilla-searchplugins' 'nss>=3.13.3' 'sqlite' 'startup-notification' ) makedepends=( 'autoconf2.13' 'diffutils' 'dpkg-devtools' 'imagemagick' 'imake' 'libidl2' 'librsvg' 'libxslt' 'mesa' 'pkg-config' 'python2' 'unzip' 'wireless_tools' 'zip' ) [[ $CARCH != mips64el ]] && makedepends+=('yasm') if $_pgo; then makedepends+=('xorg-server-xvfb') options+=(!ccache) fi optdepends=('wireless_tools: Location detection via available WiFi networks') url="http://packages.debian.org/source/experimental/$_debname" install=iceweasel.install source=($(debfile ${_debname}_${_debver}-${_debrel}.dsc) $(debfile ${_debname}_${_debver}-${_debrel}.debian.tar.gz) $(debfile ${_debname}_${_debver}.orig.tar.bz2) $(debfile ${_debname}_${_debver}.orig-compare-locales.tar.bz2) $(for locale in "${_locales[@]}"; do debfile ${_debname}_${_debver}.orig-l10n-${locale}.tar.bz2; done) mozconfig mozconfig.pgo xulrunner-copy-stub.patch libre.patch iceweasel-install-dir.patch vendor.js shared-libs.patch Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch) build() { dpkg-source -x ${_debname}_${_debver}-${_debrel}.dsc mozilla-release cd mozilla-release cp ../mozconfig .mozconfig if $_pgo; then cat ../mozconfig.pgo >> .mozconfig fi patch -Np1 -i ../Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch patch -Np1 -i ../iceweasel-install-dir.patch patch -Np1 -i ../xulrunner-copy-stub.patch patch -Np1 -i ../libre.patch patch -Np1 -i ../shared-libs.patch # Fix PRE_RELEASE_SUFFIX sed -i '/^PRE_RELEASE_SUFFIX := ""/s/ ""//' \ browser/base/Makefile.in # This is a bug, we should fix it. if [[ $CARCH == mips64el ]]; then # Fix MIPS N32 support. sed -i 's/defined(_ABIO32)/(defined(_ABIO32) || defined(_ABIN32))/' \ js/src/assembler/wtf/Platform.h # Disable JIT. sed -ri 's/#define ENABLE_(JIT|ASSEMBLER) 1/#define ENABLE_\1 0/' \ js/src/assembler/wtf/Platform.h sed -ri 's/ENABLE_(JIT|ASSEMBLER)=1/ENABLE_\1=0/' js/src/Makefile.in echo 'ac_add_options --disable-methodjit' >> .mozconfig echo 'ac_add_options --disable-tracejit' >> .mozconfig echo 'ac_add_options --disable-jemalloc' >> .mozconfig fi export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/$pkgbase" export PYTHON="/usr/bin/python2" export MOZ_MAKE_FLAGS="$MAKEFLAGS" unset MAKEFLAGS if $_pgo; then export MOZ_PGO=1 export DISPLAY=:99 Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 $DISPLAY & fi _fail=0 make -f client.mk build || _fail=1 if $_pgo; then kill $! || true fi return $_fail } package() { cd mozilla-release make -j1 -f client.mk DESTDIR="$pkgdir" install install -Dm644 ../vendor.js "$pkgdir/usr/lib/$pkgbase/defaults/preferences/vendor.js" # I don't even know why we're hitting the objdir, and ConnOS didn't. _brandingdir=debian/branding brandingdir=moz-objdir/$_brandingdir icondir="$pkgdir/usr/share/icons/hicolor" for i in 16x16 32x32 48x48 64x64; do install -Dm644 "$brandingdir/default${i/x*/}.png" "$icondir/$i/apps/$pkgbase.png" done install -Dm644 "$brandingdir/mozicon128.png" "$icondir/128x128/apps/$pkgbase.png" install -Dm644 "$_brandingdir/iceweasel_icon.svg" "$icondir/scalable/apps/$pkgbase.svg" install -Dm644 debian/iceweasel.desktop \ "$pkgdir/usr/share/applications/$pkgbase.desktop" # Use system-provided dictionaries rm -rf "$pkgdir"/usr/lib/$pkgbase/{dictionaries,hyphenation} ln -s /usr/share/hunspell "$pkgdir/usr/lib/$pkgbase/dictionaries" ln -s /usr/share/hyphen "$pkgdir/usr/lib/$pkgbase/hyphenation" # use mozilla-searchplugins rm -rf "$pkgdir"/usr/lib/$pkgbase/searchplugins ln -s /usr/lib/mozilla/searchplugins "$pkgdir/usr/lib/$pkgbase/searchplugins" # We don't want the development stuff rm -r "$pkgdir"/usr/{include,lib/$pkgbase-devel,share/idl} #workaround for now #https://bugzilla.mozilla.org/show_bug.cgi?id=658850 ln -sf $pkgbase "$pkgdir/usr/lib/$pkgbase/$pkgbase-bin" } md5sums=('7fe75c8797381adf9f0845d88064e24a' '1bbf435ff33f9824de23c0b13fbfb452' '37b9b7eafc8affa9b8a5942f8ff19f8f' '80dd4a702302fb36719c67445b487895' 'c99d7605c0e0bb0d77e71cd54f305a9a' '1f4aeabf6c28fcf6539d13f65f8b366b' 'cb9cc5f721d81442f1a93d134054f23c' 'f926850d2071114f4ba719230ce43168' '8c414a4f8d6d137dcca41b203fce4d0c' 'a16081e4da9daf6df5f6fcce2000cec1' '88dd4c5837485acea83e97f3cb4f1e31' '8751f0a634656ba973c53f96d1fa34e1' 'a3905a8a62c0b5ba4c11fee49ad6d184' '740667ba651f0562b45bbfe63b8ec84e' '85a7a4de61e5546487dae32849ae63f2' '3d00ad2734c890930441d6cd919f11c8' '80a49422e0973ed8d6fd7920cf0a4379' '30ce51ca764b091c59df5c08e35e8a7f' '3fdbb51a5cbea3f6a7c43534a8c67d5a' '1eacf81985d9993b2b94f98fd4c453e0' 'ccd6c210bf596909137c4159580042eb' '688c3eeca95418703bf6c2cb0dbe18d0' '3830cab7a1b48890588cfbeb42444a22' '6924436432149b668e14c3595602af79' 'ae6007384d85dbd14fbe6496e0b9e47b' '3859dac30bf0ec9d49419c83b116407e' '4c200fc11efb425ba1ed0c6254f323a5' '200f856b50a7485a1d5447cbf8dee77c' '5b8d0c552c0ca7abb48ef4e94908edd2' 'c6dde21438789ccf4c666afc22ee713c' 'b234e98c5155fb597fa6f5b1242492ec' '5abfc72599632a0ac85f18b4f706ee71' 'a78698a63ef66d5532601f76f48613c3' 'cca18bf0e95da80578d1e71a7592a545' '9213e16598b0595710583956fa95dfff' '120a4a00c1775a8445d35266b3157112' 'cf94d425550530b34e355ed445618626' 'dbf451ef9ecf1816973ac4dffe7e2b8e' '87a12e25b99886ac25cb0d9f0ca201ad' '0efff47ab838fd320c710ffd46ee3a57' '28e5d445e7a91ddd64d50478b05edb51' '770dcdf1a8d6d2db64dadb6e4f6149fb' '7732b021cdf73ace33cb41609b327f3d' 'ac79148f7bbdeff056d10cf0542f6ea0' '4718bff38f0a6c8ec7b41df148255f34' '2edcd565c19828e3d4a2da19f8529edd' '531c54a91d509e768b55bfd88a96a527' 'c8a4d346560350fd45533e52c0e6a15e' '707d055b9d86ba16b2a44376a6cf3fb9' '66b2b23c7e16840554521c748a22d083' '61e53be2eeb528742c19d3a13252a961' '89c23536240f86a776fb62728297e13d' '535f68d0cfa4dee9df0cddbee42a4c94' '7c91dc4f2bbcdac2f8547caad24516ea' '4476b94e676b3cfb309f972f7c42da1b' '792700b40ba53de7de5b48187b604b29' '500861d2d8bebc85596a3ee343adb75e' 'b2f5d243b28a9137189b6fa001c0207e' 'a36a7b1785532e659d3b972e4e767f45' '46509bb591bf54b6fed025814bfc11bf' '715a3f8c2fcdab17b24ce61f55c49183' '658226211d66a724d0335a173ef8512f' 'ecb41c7536c95cf2ca118d7ab6b7d357' '3b832ba3a5d1543809395171e5a105f6' '46380a60795095514004bc19c512e1c5' 'fba979124cd393f1164a59e3b9183ccc' 'db0e3b1146b0350e23e35958ee896aa5' '665140babab027228eb195b6c0e83d4e' 'e71a740bfc52d25968f8e2c4c1896897' '47bd00559728578bfc257b80c72ce393' '0b77be5ee8a66f5b819f9bf032f1b744' '38df23959bd6940a82e78f76a00cc973' 'b6c74d7b9cf5f6722c661bdba78c3769' '481db49b914f33d6c594ecebbc291e4c' '6a680e3aa71a39a1d59f877535eb7bbc' '9ee935f09dc89b42db9ad8db3473717d' 'e9ad600f21766465aed4ae8473290077' 'b70d217d69692ea3fb26e87fa468f4eb' '32b73226e95ae47dc11a554a7208d960' '5b78c67c024c683f4c0f1bc9931a2b28' 'f7a347a3d5679d82340d227474de938f' '2939f738602daee17e63e14374db86be' '73bead055152cd4885b9834691c9066a' '722a0d2212060e2044cbac859db3e063' '8f259efea0bf1b67fd4b4dae492e2e00' '03c2a59eab8ef4ad3687b91c07f96165' '726317125b44225273307235f609d341' 'b75b729e9ab3ff9a908115ab520339a9' 'cd696e70fdb4f5ab9d50040abea46b82' 'cdd2dba79e929e6585799d7f3f7fa7d4' '0b611a362d7e566805c2df474ff407b6' 'de6037c0a65e7b86e0929637156ba587' 'ec03a45c3b403786c91f0d44357f321c' 'e4cd438a0b2a42dfb14bc7716e901e5f' 'a485a2b5dc544a8a2bd40c985d2e5813' 'c8040002668fae7d1b950833bae51607' 'abf5ecb74caa857abb42bcfbb3442d9c' '0d053487907de4376d67d8f499c5502b' '52e52f840a49eb1d14be1c0065b03a93' '65f68090d2a69b467bd2707d0c4ea3bd')