summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbill-auger <mr.j.spam.me@gmail.com>2023-02-14 20:50:27 -0500
committerbill-auger <mr.j.spam.me@gmail.com>2023-02-17 16:50:37 -0500
commitc1011881f760cac975044b21c7fe24ead26f0558 (patch)
treec1277c55f58bb2b1717a6098eea35ceaacbb765c
parent0259ca5eb001b71159373eada1f402585fd5470b (diff)
[icecat]: upgrade to v102.5.0
-rw-r--r--libre/icecat/PKGBUILD70
-rw-r--r--libre/icecat/dummy-sig0
-rw-r--r--libre/icecat/enable-sync.patch16
3 files changed, 59 insertions, 27 deletions
diff --git a/libre/icecat/PKGBUILD b/libre/icecat/PKGBUILD
index 18cdc617c..7135037ba 100644
--- a/libre/icecat/PKGBUILD
+++ b/libre/icecat/PKGBUILD
@@ -24,6 +24,33 @@
# parabola changes and rationale
+# libre:
+# - none
+# technical:
+# - enable the 'sync' feature
+
+
+# NOTE: icecat (60.7 < V <= current) are not complete upstream releases
+# upstream releases normally have $_upstream_ver ending in '-gnu<N>'
+# those builds were based on gnuzilla VCS developement sources
+# with parabola patches applied (offered upstream, some accepted)
+# https://git.parabola.nu/~bill-auger/icecat.git/log/?h=parabola
+# NOTE: since 102.4.0, the former icecat maintainer has publishing versioned source-balls
+# for some versions - like the upstream VCS, they are denoted as 'testing' and
+# are not signed; and although the current maintainer has published newer versions;
+# we should still prefer the versionedc source-balls - besides the usually reason
+# (always prefer versioned source-balls to VCS builds), they are a significant
+# reduction in workload; because gnuzilla can not be compiled from VCS - we first
+# need to run the makeicecat.sh script to prepare the source-ball, then sign it and
+# publish it, which takes hours - ordinarily, this would not deserve mention
+# (ie: both this and the preceding NOTEs would not be necessary); but it not yet
+# obvious if this recent trend will continue (ie: we may need to build from VCS
+# again, which deserves a special note)
+# NOTE: all of the important parabola patches are now upstreamed - the remaining patches
+# are now re-implemented in abslibre ('enable-sync.patch') -
+# those would need to be deleted, if building from VCS again (and 'dummy-sig')
+
+
# NOTE: This PKGBUILD is kept in-sync, as closely as possible,
# with arch{,arm,32} (firefox), and parabola {iceweasel,icecat},
# for the sake of documentation and cleaner diffs.
@@ -37,17 +64,10 @@
# Without those over-rides, the resulting program may not be FSDG-fit.
# Do not circumvent those over-rides, if compiling for the Parabola repos.
-# NOTE: icecat (60.7 < V <= current) are not complete upstream releases
-# upstream releases normally have $_upstream_ver ending in '-gnu<N>'
-# this build is based on gnuzilla VCS developement sources
-# rev: e77a1fa25ac66250e88d5d9901a2ba670edb94cc
-# with parabola patches applied (offered upstream)
-# https://git.parabola.nu/~bill-auger/icecat.git/log/?h=parabola
-
pkgname=icecat
-_upstream_ver=102.2.0-gnu1
-_upstream_ver=${_upstream_ver/-gnu1/-gnu0-pre1} # parabola pre-release
+_upstream_ver=102.5.0-gnu1
+# _upstream_ver=${_upstream_ver/-gnu1/-gnu0-pre1} # parabola pre-release from VCS
pkgver=${_upstream_ver//-/_}
pkgrel=1
pkgdesc="the GNU web browser, based on Mozilla Firefox ESR"
@@ -56,7 +76,7 @@ license=(MPL GPL LGPL)
url=http://www.gnu.org/software/gnuzilla/
depends=(gtk3 libxt mime-types dbus-glib ffmpeg nss ttf-font libpulse)
makedepends=(unzip zip diffutils yasm mesa imake inetutils xorg-server-xvfb
- autoconf2.13 rust clang llvm jack nodejs cbindgen nasm python
+ rust clang llvm jack nodejs cbindgen nasm python
lld dump_syms wasi-compiler-rt wasi-libc wasi-libc++ wasi-libc++abi
)
optdepends=('networkmanager: Location detection via available WiFi networks'
@@ -66,22 +86,25 @@ optdepends=('networkmanager: Location detection via available WiFi networks'
'hunspell-en_US: Spell checking, American English'
'xdg-desktop-portal: Screensharing with Wayland')
options=(!emptydirs !makeflags !strip !lto !debug)
-source=(https://repo.parabola.nu/other/${pkgname}/${pkgname}-${_upstream_ver}.tar.bz2{,.sig}
+# source=(https://repo.parabola.nu/other/${pkgname}/${pkgname}-${_upstream_ver}.tar.bz2{,.sig} # parabola pre-release from VCS
+source=(https://icecat.trisquel.org/${_upstream_ver%%-*}/icecat-${_upstream_ver}.tar.bz2 dummy-sig
icecat.desktop icecat-safe.desktop
)
source+=(vendor.js.in
- arc4random.diff)
+ arc4random.diff
+ enable-sync.patch)
source_armv7h=(build-arm-libopus.patch)
source_i686=(avoid-libxul-OOM-python-check.patch
rust-static-disable-network-test-on-static-libraries.patch
firefox-99.0.1-fdlibm-double.patch)
-sha256sums=('0a5edd6adcc3de32adfc9452d89e0144cfb9a7dceacef3202e716fb4d5a8fb9e'
+sha256sums=('4ce4257a14a70fa5237b3a3f2cb5759e32cd73e20cdd78fa0317cb296ef91d5c'
'SKIP'
'e00dbf01803cdd36fd9e1c0c018c19bb6f97e43016ea87062e6134bdc172bc7d'
'33dd309eeb99ec730c97ba844bf6ce6c7840f7d27da19c82389cdefee8c20208'
)
sha256sums+=('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
- '714ca50b2ce0cac470dbd5a60e9a0101b28072f08a5e7a9bba94fef2058321c4')
+ '714ca50b2ce0cac470dbd5a60e9a0101b28072f08a5e7a9bba94fef2058321c4'
+ '7de7975a560c4964745e866d3b7d48fb28bc0eda0a27c895b1beb66a60da44e5')
sha256sums_armv7h=('2d4d91f7e35d0860225084e37ec320ca6cae669f6c9c8fe7735cdbd542e3a7c9')
sha256sums_i686=('2f0c81a38c4578f68f5456b618fe84a78974072821488173eb55e0e72287e353'
'10c5276eab2e87f400a6ec15d7ffbef3b0407ee888dea36f1128927ca55b9041'
@@ -94,13 +117,6 @@ validpgpkeys+=('3954A7AB837D0EA9CFA9798925DB7D9B5A8D4B40') # bill-auger (VCS bui
# disable PGO for 32-bit arches
_should_skip_pgo=0 # for x86_64 (try '1' if the build hangs indefinitely)
-
-makedepends+=( python-setuptools python-zstandard )
-makedepends+=( python-psutil )
-makedepends+=(jq python-jsonschema)
-makedepends+=( ${makedepends[*]/python-zstandard/python-zstandard=0.17.0} ) # | zstandard<=0.17.0,>=0.11.1: Installed with unexpected version "0.18.0"
-makedepends+=( ${makedepends[*]/python-psutil/python-psutil=5.8.0} ) # | psutil<=5.8.0,>=5.4.2: Installed with unexpected version "5.9.1"
-
case "${CARCH}" in
armv7h)
_should_skip_pgo=1
@@ -112,10 +128,10 @@ armv7h)
i686)
_should_skip_pgo=1
- makedepends=( ${makedepends[*]/wasi-compiler-rt/wasi-compiler-rt=13.0.1-1.0} ) # dustbin
- makedepends=( ${makedepends[*]/wasi-libc++*/} )
- makedepends+=( wasi-libc++=13.0.1-1.0 wasi-libc++abi=13.0.1-1.0 ) # dustbin
- makedepends+=( llvm13 ) # rustup: error while loading shared libraries: libLLVM-13.so: cannot open shared object file: No such file or directory
+ makedepends=( ${makedepends[*]/wasi-*/} ) # wasm-ld: error: cannot open /usr/lib/clang/15.0.7/lib/wasi/libclang_rt.builtins-wasm32.a: No such file or directory
+ makedepends+=( 'wasi-libc++>=15' 'wasi-libc++<16' ) # in [community-testing]
+ makedepends+=( 'wasi-libc++abi>=15' 'wasi-libc++abi<16' ) # in [community-testing]
+ makedepends+=( 'wasi-compiler-rt>=15' 'wasi-compiler-rt<16' ) # in [community-testing]
;;
esac
@@ -341,7 +357,6 @@ END
patch -p1 -i "$srcdir/firefox-99.0.1-fdlibm-double.patch"
;;
x86_64)
- sed -i '/--enable-rust-simd/d' ../mozconfig
;;
*) echo "no [ARCH-SPECIFIC CONFIG] for arch: ${CARCH}" ; return 1 ;
;;
@@ -394,7 +409,8 @@ build() {
# try hard to tell ld and rust not to use too much memory (no lto, no debug info, etc.)
export RUSTFLAGS+=" -Cdebuginfo=0 -Clto=off"
- export LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
+ export LDFLAGS+=" -Wl,--no-keep-memory " # -Wl,--reduce-memory-overheads -Wl,--max-cache-size=16384000 "
+ export MOZ_SOURCE_CHANGESET="DEVEDITION_${pkgver//./_}_RELEASE"
# libvpx has some hard-coded compiler flags for MMX, SSE, SSE2, use the correct one
# per CARCH (75.0 uses an intrisic _mm_empty now, which required the corresponding
diff --git a/libre/icecat/dummy-sig b/libre/icecat/dummy-sig
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/libre/icecat/dummy-sig
diff --git a/libre/icecat/enable-sync.patch b/libre/icecat/enable-sync.patch
new file mode 100644
index 000000000..bb1c57d59
--- /dev/null
+++ b/libre/icecat/enable-sync.patch
@@ -0,0 +1,16 @@
+diff --git a/data/settings.js b/data/settings.js
+index f66eccd..4b20bd5 100644
+--- a/data/settings.js
++++ b/data/settings.js
+@@ -186,8 +186,9 @@ pref("app.update.auto", false);
+ pref("media.eme.enabled", false);
+ pref("media.eme.apiVisible", false);
+
+-// Firefox Accounts
+-pref("identity.fxaccounts.enabled", false);
++// Firefox Sync
++pref("identity.fxaccounts.enabled", true);
++pref("webchannel.allowObject.urlWhitelist", "https://content.cdn.mozilla.net https://support.mozilla.org https://install.mozilla.org https://accounts.firefox.com");
+
+ // WebRTC
+ pref("media.peerconnection.enabled", true);