summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Bidulock2017-04-21 17:30:57 -0600
committerBrian Bidulock2017-04-21 17:30:57 -0600
commit776e2c4ee009f337083b33e7becaaee03d5c3c49 (patch)
tree83b87a9df4e5070c9c9e07cf0a96931cc74156eb
downloadaur-776e2c4ee009f337083b33e7becaaee03d5c3c49.tar.gz
initial version
-rw-r--r--.SRCINFO57
-rw-r--r--PKGBUILD99
-rw-r--r--mozbug1323209.patch35
-rw-r--r--mozbug1329272.patch31
-rw-r--r--mozconfig36
-rw-r--r--rhbz-966424.patch23
-rw-r--r--seamonkey-2.0-lang.patch11
7 files changed, 292 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..99a4fe507191
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,57 @@
+pkgbase = seamonkey-gtk2
+ pkgdesc = SeaMonkey internet suite (GTK2 version)
+ pkgver = 2.46
+ pkgrel = 2
+ url = http://www.seamonkey-project.org/
+ arch = i686
+ arch = x86_64
+ license = MPL
+ makedepends = unzip
+ makedepends = zip
+ makedepends = pkg-config
+ makedepends = python2
+ makedepends = yasm
+ makedepends = wireless_tools
+ makedepends = mesa
+ makedepends = autoconf2.13
+ makedepends = imake
+ makedepends = python3
+ makedepends = gst-plugins-base
+ depends = alsa-lib
+ depends = dbus-glib
+ depends = desktop-file-utils
+ depends = gtk2
+ depends = hunspell
+ depends = libevent
+ depends = libnotify
+ depends = libvpx
+ depends = libxt
+ depends = mime-types
+ depends = mozilla-common
+ depends = nss
+ depends = sqlite
+ depends = startup-notification
+ depends = libpulse
+ depends = icu
+ depends = gconf
+ optdepends = gst-plugins-base: vorbis decoding, ogg demuxing
+ optdepends = gst-plugins-bad: aac, vp8 and opus decoding
+ optdepends = gst-plugins-good: webm and mp4 demuxing
+ optdepends = gst-plugins-ugly: h.264 decoding
+ provides = seamonkey=2.46.2
+ conflicts = seamonkey
+ source = https://archive.mozilla.org/pub/mozilla.org/seamonkey/releases/2.46/source/seamonkey-2.46.source.tar.xz
+ source = mozconfig
+ source = seamonkey-2.0-lang.patch
+ source = rhbz-966424.patch
+ source = mozbug1323209.patch
+ source = mozbug1329272.patch
+ sha256sums = 39c84ce6fa1ed7c30152473e0dcd858df07437e84b29e5a18973db437a28a912
+ sha256sums = 9a730ec71744e9e674a7922cd573fe2428f39ee53b0c3c8912053a910975f1d8
+ sha256sums = ab19d10fbd6258aec37ab5e5efb12429814b2c24a1193284a48dd654311b4e2e
+ sha256sums = 746cb474c5a2c26fc474256e430e035e604b71b27df1003d4af85018fa263f4a
+ sha256sums = 87fb92e45f161d47b9e3ca31bcce60555bc33d633116dab4baa3bfba6ad965c4
+ sha256sums = 33c7031781357faf5fba7140d7723bf301c1569068922477742ac958ee82e62b
+
+pkgname = seamonkey-gtk2
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..f05d867f494b
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,99 @@
+# $Id: PKGBUILD 209304 2017-01-28 17:00:56Z heftig $
+# Maintainer: Brian Bidulock <bidulock@openss7.org>
+# Contributor: Kyle Keen <keenerd@gmail.com>
+
+pkgname=seamonkey-gtk2
+_pkgname=seamonkey
+pkgver=2.46
+pkgrel=2
+pkgdesc="SeaMonkey internet suite (GTK2 version)"
+arch=('i686' 'x86_64')
+license=('MPL')
+depends=('alsa-lib' 'dbus-glib' 'desktop-file-utils' 'gtk2' 'hunspell' 'libevent' 'libnotify' 'libvpx' 'libxt' 'mime-types' 'mozilla-common' 'nss' 'sqlite' 'startup-notification' 'libpulse' 'icu' 'gconf')
+makedepends=('unzip' 'zip' 'pkg-config' 'python2' 'yasm' 'wireless_tools' 'mesa' 'autoconf2.13' 'imake' 'python3' 'gst-plugins-base')
+optdepends=('gst-plugins-base: vorbis decoding, ogg demuxing'
+ 'gst-plugins-bad: aac, vp8 and opus decoding'
+ 'gst-plugins-good: webm and mp4 demuxing'
+ 'gst-plugins-ugly: h.264 decoding')
+url="http://www.seamonkey-project.org/"
+provides=("$_pkgname=$pkgver.$pkgrel")
+conflicts=("$_pkgname")
+source=(https://archive.mozilla.org/pub/mozilla.org/seamonkey/releases/$pkgver/source/seamonkey-$pkgver.source.tar.xz
+ mozconfig
+ seamonkey-2.0-lang.patch
+ rhbz-966424.patch
+ mozbug1323209.patch
+ mozbug1329272.patch)
+sha256sums=('39c84ce6fa1ed7c30152473e0dcd858df07437e84b29e5a18973db437a28a912'
+ '9a730ec71744e9e674a7922cd573fe2428f39ee53b0c3c8912053a910975f1d8'
+ 'ab19d10fbd6258aec37ab5e5efb12429814b2c24a1193284a48dd654311b4e2e'
+ '746cb474c5a2c26fc474256e430e035e604b71b27df1003d4af85018fa263f4a'
+ '87fb92e45f161d47b9e3ca31bcce60555bc33d633116dab4baa3bfba6ad965c4'
+ '33c7031781357faf5fba7140d7723bf301c1569068922477742ac958ee82e62b')
+
+prepare() {
+ cd "$_pkgname-$pkgver"
+ cp ../mozconfig .mozconfig
+ echo "ac_add_options --enable-default-toolkit=cairo-gtk2" >>.mozconfig
+ #patch -Np1 -i ../seamonkey-2.0-lang.patch
+
+ # FS#48404
+ #echo "ac_add_options --enable-gstreamer=1.0" >> .mozconfig
+
+ # https://bugs.archlinux.org/task/41689
+ patch -Np1 -d mozilla -i ../../rhbz-966424.patch
+
+ # Support NSS 3.28
+ patch -Np1 -d mozilla -i ../../mozbug1323209.patch
+
+ # Bugfix for icu detection
+ patch -Np1 -d mozilla -i ../../mozbug1329272.patch
+
+ # Don't exit with error when some libs are missing which we have in
+ # system.
+ sed -i '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' suite/installer/Makefile.in
+
+ # configure script misdetects the preprocessor without an optimization level
+ sed -i '/ac_cpp=/s/$CPPFLAGS/& -O2/' configure
+
+ # 2.26 build fix from wgnie (blfs ch 37)
+ sed -i 's/$(MOZ_ZLIB_CFLAGS)/& $(MOZ_PIXMAN_CFLAGS)/' config/config.mk
+}
+
+build() {
+ cd "$_pkgname-$pkgver"
+
+ export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/seamonkey-$pkgver"
+ export MOZ_MAKE_FLAGS="$MAKEFLAGS"
+ unset MAKEFLAGS
+ unset CPPFLAGS
+
+ # GCC 6
+ CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
+ CXXFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
+
+ make -j1 -f client.mk build
+}
+
+package() {
+ cd "$_pkgname-$pkgver"
+
+ make -j1 -f client.mk DESTDIR="$pkgdir" INSTALL_SDK= install
+
+ rm -rf "$pkgdir"/usr/lib/seamonkey-$pkgver/{dictionaries,hyphenation}
+ ln -s /usr/share/hunspell "$pkgdir/usr/lib/seamonkey-$pkgver/dictionaries"
+ ln -s /usr/share/hyphen "$pkgdir/usr/lib/seamonkey-$pkgver/hyphenation"
+
+ install -Dm644 suite/branding/nightly/icons/gtk/seamonkey.png \
+ "$pkgdir/usr/share/pixmaps/seamonkey.png"
+
+ install -Dm644 mozilla/toolkit/mozapps/installer/linux/rpm/mozilla.desktop \
+ "$pkgdir/usr/share/applications/seamonkey.desktop"
+ sed -i 's/@MOZ_APP_DISPLAYNAME@/SeaMonkey internet suite/' \
+ "$pkgdir/usr/share/applications/seamonkey.desktop"
+ sed -i 's/@MOZ_APP_NAME@/seamonkey/' "$pkgdir/usr/share/applications/seamonkey.desktop"
+
+ rm -f "$pkgdir/usr/lib/pkgconfig/"seamonkey-ns{s,pr}.pc
+ #rm -r "$pkgdir"/usr/{include,lib/seamonkey-devel-$pkgver,share/idl}
+}
+
diff --git a/mozbug1323209.patch b/mozbug1323209.patch
new file mode 100644
index 000000000000..92c1376aeb87
--- /dev/null
+++ b/mozbug1323209.patch
@@ -0,0 +1,35 @@
+
+# HG changeset patch
+# User Franziskus Kiefer <franziskuskiefer@gmail.com>
+# Date 1469717280 -7200
+# Node ID 361ac226da2a83516db8d4e4c5b41a69b3ba754f
+# Parent 5d5d3ef04f3f77bb95616f56c129256a89f57831
+Bug 1290037 - Update keybits in H2, r=mt
+
+MozReview-Commit-ID: 35oWoDMqe1Y
+
+diff --git a/netwerk/protocol/http/Http2Session.cpp b/netwerk/protocol/http/Http2Session.cpp
+--- a/netwerk/protocol/http/Http2Session.cpp
++++ b/netwerk/protocol/http/Http2Session.cpp
+@@ -3544,18 +3544,18 @@ Http2Session::ConfirmTLSProfile()
+ RETURN_SESSION_ERROR(this, INADEQUATE_SECURITY);
+ }
+
+ uint32_t keybits = ssl->GetKEAKeyBits();
+ if (kea == ssl_kea_dh && keybits < 2048) {
+ LOG3(("Http2Session::ConfirmTLSProfile %p FAILED due to DH %d < 2048\n",
+ this, keybits));
+ RETURN_SESSION_ERROR(this, INADEQUATE_SECURITY);
+- } else if (kea == ssl_kea_ecdh && keybits < 256) { // 256 bits is "security level" of 128
+- LOG3(("Http2Session::ConfirmTLSProfile %p FAILED due to ECDH %d < 256\n",
++ } else if (kea == ssl_kea_ecdh && keybits < 224) { // see rfc7540 9.2.1.
++ LOG3(("Http2Session::ConfirmTLSProfile %p FAILED due to ECDH %d < 224\n",
+ this, keybits));
+ RETURN_SESSION_ERROR(this, INADEQUATE_SECURITY);
+ }
+
+ int16_t macAlgorithm = ssl->GetMACAlgorithmUsed();
+ LOG3(("Http2Session::ConfirmTLSProfile %p MAC Algortihm (aead==6) %d\n",
+ this, macAlgorithm));
+ if (macAlgorithm != nsISSLSocketControl::SSL_MAC_AEAD) {
+
diff --git a/mozbug1329272.patch b/mozbug1329272.patch
new file mode 100644
index 000000000000..81a4ebb789dc
--- /dev/null
+++ b/mozbug1329272.patch
@@ -0,0 +1,31 @@
+
+# HG changeset patch
+# User Daniel Stenberg <daniel@haxx.se>
+# Date 1484000700 -3600
+# Node ID ebcbf47a83e7d3b89460cf1c991b6be5a79a967b
+# Parent 0759511f24e1b8d42acf5e9612f3ab91715842c2
+Bug 1329272 - add bracket for sed 4.3 compliance, r=glandium
+
+diff --git a/build/autoconf/icu.m4 b/build/autoconf/icu.m4
+--- a/build/autoconf/icu.m4
++++ b/build/autoconf/icu.m4
+@@ -64,17 +64,17 @@ if test -n "$USE_ICU"; then
+ icudir="$_topsrcdir/intl/icu/source"
+ if test ! -d "$icudir"; then
+ icudir="$_topsrcdir/../../intl/icu/source"
+ if test ! -d "$icudir"; then
+ AC_MSG_ERROR([Cannot find the ICU directory])
+ fi
+ fi
+
+- version=`sed -n 's/^[[:space:]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"`
++ version=`sed -n 's/^[[[:space:]]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"`
+ if test x"$version" = x; then
+ AC_MSG_ERROR([cannot determine icu version number from uvernum.h header file $lineno])
+ fi
+ MOZ_ICU_VERSION="$version"
+
+ # TODO: the l is actually endian-dependent
+ # We could make this set as 'l' or 'b' for little or big, respectively,
+ # but we'd need to check in a big-endian version of the file.
+
diff --git a/mozconfig b/mozconfig
new file mode 100644
index 000000000000..9b25381b5b80
--- /dev/null
+++ b/mozconfig
@@ -0,0 +1,36 @@
+ac_add_options --enable-application=suite
+
+ac_add_options --prefix=/usr
+ac_add_options --libdir=/usr/lib
+
+# System libraries
+ac_add_options --with-system-nspr
+ac_add_options --with-system-nss
+ac_add_options --with-system-jpeg
+ac_add_options --with-system-zlib
+ac_add_options --with-system-bz2
+ac_add_options --with-system-png
+ac_add_options --with-system-libevent
+ac_add_options --with-system-libvpx
+ac_add_options --enable-system-hunspell
+ac_add_options --enable-system-sqlite
+ac_add_options --enable-system-ffi
+#ac_add_options --enable-system-cairo
+ac_add_options --with-pthreads
+ac_add_options --enable-system-pixman
+
+# Features
+ac_add_options --enable-startup-notification
+ac_add_options --enable-safe-browsing
+ac_add_options --enable-gio
+#ac_add_options --disable-gstreamer
+ac_add_options --enable-pulseaudio
+
+
+#ac_add_options --disable-gnomevfs
+ac_add_options --disable-crashreporter
+ac_add_options --disable-updater
+ac_add_options --disable-tests
+#ac_add_options --disable-installer
+
+export MOZILLA_OFFICIAL=1
diff --git a/rhbz-966424.patch b/rhbz-966424.patch
new file mode 100644
index 000000000000..c4c332e9e7ae
--- /dev/null
+++ b/rhbz-966424.patch
@@ -0,0 +1,23 @@
+--- a/toolkit/modules/CertUtils.jsm
++++ b/toolkit/modules/CertUtils.jsm
+@@ -170,17 +170,19 @@ this.checkCert =
+ issuerCert = issuerCert.QueryInterface(Ci.nsIX509Cert3);
+ var tokenNames = issuerCert.getAllTokenNames({});
+
+ if (!tokenNames || !tokenNames.some(isBuiltinToken))
+ throw new Ce(certNotBuiltInErr, Cr.NS_ERROR_ABORT);
+ }
+
+ function isBuiltinToken(tokenName) {
+- return tokenName == "Builtin Object Token";
++ return tokenName == "Builtin Object Token" ||
++ tokenName == "Default Trust" ||
++ tokenName == "System Trust";
+ }
+
+ /**
+ * This class implements nsIBadCertListener. Its job is to prevent "bad cert"
+ * security dialogs from being shown to the user. It is better to simply fail
+ * if the certificate is bad. See bug 304286.
+ *
+ * @param aAllowNonBuiltInCerts (optional)
diff --git a/seamonkey-2.0-lang.patch b/seamonkey-2.0-lang.patch
new file mode 100644
index 000000000000..b9f4a5cde8f4
--- /dev/null
+++ b/seamonkey-2.0-lang.patch
@@ -0,0 +1,11 @@
+--- comm-1.9.1/mozilla/modules/libpref/src/init/all.js 2009-10-11 02:12:44.000000000 +0200
++++ comm-1.9.1/mozilla/modules/libpref/src/init/all.js 2009-09-16 02:56:45.000000000 +0200
+@@ -890,7 +890,7 @@
+ pref("intl.charset.detector", "chrome://global/locale/intl.properties");
+ pref("intl.charset.default", "chrome://global-platform/locale/intl.properties");
+ pref("intl.ellipsis", "chrome://global-platform/locale/intl.properties");
+-pref("intl.locale.matchOS", false);
++pref("intl.locale.matchOS", true);
+ // fallback charset list for Unicode conversion (converting from Unicode)
+ // currently used for mail send only to handle symbol characters (e.g Euro, trademark, smartquotes)
+ // for ISO-8859-1