diff options
author | Andreas Grapentin <andreas@grapentin.org> | 2018-12-12 16:22:49 +0100 |
---|---|---|
committer | Andreas Grapentin <andreas@grapentin.org> | 2018-12-16 20:54:58 +0100 |
commit | 60eee731d2b78ca4f52d2b311b19d65fa93f357c (patch) | |
tree | f877f8bcccda494f6a6b6a532e160beb11e59f2a /libre-testing/icecat/PKGBUILD | |
parent | 12861e7005fc402c5e02c35b16b564bce4f50a9e (diff) | |
download | abslibre-60eee731d2b78ca4f52d2b311b19d65fa93f357c.tar.gz abslibre-60eee731d2b78ca4f52d2b311b19d65fa93f357c.tar.bz2 abslibre-60eee731d2b78ca4f52d2b311b19d65fa93f357c.zip |
libre-testing/icecat: added icecat-60 to libre-testing
Diffstat (limited to 'libre-testing/icecat/PKGBUILD')
-rw-r--r-- | libre-testing/icecat/PKGBUILD | 213 |
1 files changed, 213 insertions, 0 deletions
diff --git a/libre-testing/icecat/PKGBUILD b/libre-testing/icecat/PKGBUILD new file mode 100644 index 000000000..463ff67a9 --- /dev/null +++ b/libre-testing/icecat/PKGBUILD @@ -0,0 +1,213 @@ +# Maintainer (Arch:firefox): Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor (Arch:firefox): Ionut Biru <ibiru@archlinux.org> +# Contributor (Arch:firefox): Jakub Schmidtke <sjakub@gmail.com> + +# Contributor (ConnochaetOS:iceweasel): Henry Jensen <hjensen@connochaetos.org> + +# Maintainer: Andreas Grapentin <andreas@grapentin.org> +# Maintainer: Luke Shumaker <lukeshu@parabola.nu> +# Contributor: André Silva <emulatorman@hyperbola.info> +# Contributor: Márcio Silva <coadde@hyperbola.info> +# Contributor: fauno <fauno@kiwwwi.com.ar> +# Contributor: vando <facundo@esdebian.org> +# Contributor: Figue <ffigue at gmail> +# Contributor: evr <evanroman at gmail> +# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com> + +pkgname=icecat +_pkgver=60.3.0-gnu1 +pkgver=${_pkgver//-/_} +pkgrel=1.testing1 +pkgdesc="GNU IceCat - a libre standalone web browser based on Mozilla Firefox." +arch=(x86_64 i686 armv7h) +license=(MPL GPL LGPL) +url="http://www.gnu.org/software/gnuzilla/" +depends=(gtk3 gtk2 mozilla-common libxt startup-notification mime-types dbus-glib ffmpeg + nss hunspell-en_US sqlite ttf-font libpulse libvpx icu) +makedepends=(unzip zip diffutils python2 yasm mesa imake gconf inetutils xorg-server-xvfb + autoconf2.13 rust clang llvm jack mozilla-searchplugins) +optdepends=('networkmanager: Location detection via available WiFi networks' + 'libnotify: Notification integration' + 'pulseaudio: Audio support' + 'speech-dispatcher: Text-to-Speech') +options=(!emptydirs !makeflags !strip) +source=(http://ftp.gnu.org/gnu/gnuzilla/${_pkgver%-*}/$pkgname-$_pkgver.tar.bz2{,.sig} + $pkgname.desktop + gnu_headshadow.png + libre.patch) +sha256sums=('6145327092b4b195a4f63d0e86f4857eeba5607ffeb69b6f3bceb36e89a19645' + 'SKIP' + '2f9d117c1524312fb45f3e953cb0de02c525fd385a9b2b6d47308c8aaab0aedd' + '93e3001ce152e1d142619e215a9ef07dd429943b99d21726c25da9ceb31e31cd' + 'd32f97e812c536efd9bdc7043efd6f9472a1edd9f814b453805c7c10ffea25a6') +validpgpkeys=('A57369A8BABC2542B5A0368C3C76EED7D7E04784') # Ruben Rodriguez + +prepare() { + cd "$srcdir/$pkgname-${pkgver%_*}" + + # Patch to move files directly to /usr/lib/icecat. No more symlinks. + sed -e 's;$(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION);$(libdir)/$(MOZ_APP_NAME);g' -i config/baseconfig.mk + sed -e 's;$(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION);$(libdir)/$(MOZ_APP_NAME)-devel;g' -i config/baseconfig.mk + + cat >.mozconfig <<END +ac_add_options --enable-application=browser + +ac_add_options --prefix=/usr +ac_add_options --enable-release +ac_add_options --enable-linker=gold +ac_add_options --enable-hardening +ac_add_options --enable-optimize +ac_add_options --enable-rust-simd + +# Branding +ac_add_options --enable-official-branding +ac_add_options --with-distribution-id=org.gnu + +# System libraries +ac_add_options --with-system-zlib +ac_add_options --with-system-bz2 +ac_add_options --with-system-icu +ac_add_options --with-system-jpeg +ac_add_options --with-system-libvpx +ac_add_options --with-system-nspr +ac_add_options --with-system-nss +ac_add_options --enable-system-sqlite +ac_add_options --enable-system-ffi + +# Features +ac_add_options --enable-alsa +ac_add_options --enable-startup-notification +ac_add_options --disable-crashreporter +ac_add_options --disable-updater +ac_add_options --disable-debug-symbols +ac_add_options --disable-tests +ac_add_options --disable-eme +ac_add_options --disable-gconf + +ac_add_options --with-app-basename=icecat +ac_add_options --with-app-name=icecat +ac_add_options --enable-update-channel=release +END + + if [[ "$CARCH" == arm* ]]; then + sed -i \ + -e '/enable-gold/s/^/#/' \ + -e '/enable-pie/s/^/#/' \ + -e '/enable-optimize/d' \ + .mozconfig + + cat >> .mozconfig << END +ac_add_options --disable-webrtc +ac_add_options --disable-elf-hack +ac_add_options --enable-optimize="-g -O2 -fno-schedule-insns" +END + fi + + # Put gnu_headshadow.png in the source code + # install -m644 "$srcdir/gnu_headshadow.png" \ + # browser/base/content/abouthome + + # Patch and remove anything that's left + # patch -Np1 -i "$srcdir/libre.patch" + # rm -v browser/base/content/abouthome/snippet*.png || true + # sed -i '\|abouthome/snippet|d + # ' browser/base/jar.mn + + # Load our searchplugins + # rm -rf -- browser/locales/searchplugins + # cp -aT -- /usr/lib/mozilla/searchplugins browser/locales/searchplugins +} + +build() { + cd "$srcdir/$pkgname-${pkgver%_*}" + + ./mach build + ./mach buildsymbols +} + +package() { + local _icu_ver + _icu_ver=$(pacman -S --print-format='%v' icu) + depends+=("icu>=${_icu_ver}" "icu<$((${_icu_ver%%.*} + 1))") + + cd "$srcdir/$pkgname-${pkgver%_*}" + DESTDIR="$pkgdir" ./mach install + + _vendorjs="$pkgdir/usr/lib/$pkgname/browser/defaults/preferences/vendor.js" + install -Dm644 /dev/stdin "$_vendorjs" <<END +// Use LANG environment variable to choose locale +pref("intl.locale.requested", ""); + +// Use system-provided dictionaries +pref("spellchecker.dictionary_path", "/usr/share/hunspell"); + +// Disable default browser checking. +pref("browser.shell.checkDefaultBrowser", false); + +// Don't disable our bundled extensions in the application directory +pref("extensions.autoDisableScopes", 11); +pref("extensions.shownSelectionUI", true); + +// Disable "alt" as a shortcut key to open full menu bar. Conflicts with "alt" as a modifier +pref("ui.key.menuAccessKeyFocuses", false); + +// Make sure that Firefox Social stuff are empty +pref("social.whitelist", ""); +pref("social.directories", ""); + +// Disable the GeoLocation API for content +pref("geo.enabled", false); + +// Make sure that the request URL of the GeoLocation backend is empty +pref("geo.wifi.uri", ""); + +// Disable the least secure encryption protocols +pref("security.ssl3.ecdhe_ecdsa_rc4_128_sha", false); +pref("security.ssl3.ecdhe_rsa_rc4_128_sha", false); +pref("security.ssl3.rsa_rc4_128_md5", false); +pref("security.ssl3.rsa_rc4_128_sha", false); +END + + _distini="$pkgdir/usr/lib/$pkgname/distribution/distribution.ini" + install -Dm644 /dev/stdin "$_distini" <<END +[Global] +id=parabola +version=1.0 +about=Icecat for Parabola GNU/Linux-libre + +[Preferences] +app.distributor=parabola +app.distributor.channel=$pkgname +app.partner.parabola=parabola +END + + install -m755 -d ${pkgdir}/usr/share/applications + install -m755 -d ${pkgdir}/usr/share/pixmaps + + for i in 16 22 24 32 48 256; do + install -Dm644 "browser/branding/official/default$i.png" \ + "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$pkgname.png" + done + install -Dm644 "browser/branding/official/content/icon64.png" \ + "$pkgdir/usr/share/icons/hicolor/64x64/apps/$pkgname.png" + install -Dm644 "browser/branding/official/mozicon128.png" \ + "$pkgdir/usr/share/icons/hicolor/128x128/apps/$pkgname.png" + install -Dm644 "browser/branding/official/content/about-logo.png" \ + "$pkgdir/usr/share/icons/hicolor/192x192/apps/$pkgname.png" + install -Dm644 "browser/branding/official/content/about-logo@2x.png" \ + "$pkgdir/usr/share/icons/hicolor/384x384/apps/$pkgname.png" + + install -Dm644 ../$pkgname.desktop \ + "$pkgdir/usr/share/applications/$pkgname.desktop" + + # Install a wrapper to avoid confusion about binary path + install -Dm755 /dev/stdin "$pkgdir/usr/bin/$pkgname" <<END +#!/bin/sh +exec /usr/lib/$pkgname/$pkgname "\$@" +END + + # Replace duplicate binary with wrapper + # https://bugzilla.mozilla.org/show_bug.cgi?id=658850 + ln -srf "$pkgdir/usr/bin/$pkgname" \ + "$pkgdir/usr/lib/$pkgname/$pkgname-bin" +} |