summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbill-auger <mr.j.spam.me@gmail.com>2022-09-21 11:19:48 -0400
committerbill-auger <mr.j.spam.me@gmail.com>2022-09-22 11:06:21 -0400
commit8e32f59910417462fdad832840c070b9bda74ff0 (patch)
tree1f94c37a312173626186860f0e5aefee584ccf9a
parent6aa6e993e96d52723ad062b3a90f39a681abf540 (diff)
[iceweasel]: tweak for i686 (still FTBS)
-rw-r--r--libre/iceweasel/PKGBUILD23
1 files changed, 19 insertions, 4 deletions
diff --git a/libre/iceweasel/PKGBUILD b/libre/iceweasel/PKGBUILD
index f5e83d855..9d9773995 100644
--- a/libre/iceweasel/PKGBUILD
+++ b/libre/iceweasel/PKGBUILD
@@ -23,13 +23,18 @@
# parabola changes and rationale
-# FSDG:
+# libre:
# - Modify the addons pages to use GNU IceCat plugins sources, rather
# than addons.mozilla.org, which hosts non-free addons
# - Disable EME, which is implemented via the non-free libWideVine CDM
# - Disable Normandy that let Mozilla push messages with recommendations
# of nonfree software
# - Make Remote Settings work completely offline using local data
+# - Use system python libs. The arch package uses 'pip' to download
+# dependencies from the internet at build-time, despite that those needed
+# dependencies are already packaged in the arch repos. So strictly-speaking,
+# the package is not built from source, as some sources will be missing
+# from the published source package, and will not be required as makedepends.
#
# technical:
# - build i686 with GCC instead of clang
@@ -70,7 +75,7 @@ pkgdesc="Standalone web browser derived from Mozilla Firefox"
arch=(x86_64)
arch+=(armv7h i686)
license=(MPL GPL LGPL)
-url="https://wiki.parabola.nu/Iceweasel"
+url=https://wiki.parabola.nu/Iceweasel
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
@@ -83,15 +88,18 @@ makedepends+=(python-setuptools python-zstandard python-typing-extensions
[[ "${CARCH}" == 'i686' ]] && makedepends=( ${makedepends[*]/wasi-libc++*/} )
[[ "${CARCH}" == 'i686' ]] && makedepends+=( wasi-libc++=13.0.1-1.0 wasi-libc++abi=13.0.1-1.0 ) # dustbin
[[ "${CARCH}" == 'i686' ]] && makedepends+=( llvm13 ) # rustup: error while loading shared libraries: libLLVM-13.so: cannot open shared object file: No such file or directory
+[[ "${CARCH}" == 'i686' ]] && makedepends+=( python-pydantic=1.9.2 ) # pydantic 1.10.2 has requirement typing-extensions>=4.1.0, but you have typing-extensions 3.10.0.0. - ('typing-extensions' is vendored; but 'python-pydantic' is not)
+# i686 FTBS - mozglue/misc/SIMD_avx2.cpp:66:10: error: ‘_mm_cvtsi64_si128’ was not declared in this scope; did you mean ‘_mm_cvtsi64_si32’?
optdepends=('networkmanager: Location detection via available WiFi networks'
'libnotify: Notification integration'
'pulseaudio: Audio support'
'speech-dispatcher: Text-to-Speech'
'hunspell-en_US: Spell checking, American English'
'xdg-desktop-portal: Screensharing with Wayland')
+# provides=('firefox') # TODO: redmine #2164 - currently conflicts with 'your-freedom'
replaces=('firefox')
options=(!emptydirs !makeflags !strip !lto !debug)
-source=(https://archive.mozilla.org/pub/firefox/releases/${pkgver}/source/firefox-${pkgver}.source.tar.xz{,.asc}
+source=(https://archive.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz{,.asc}
$pkgname.desktop identity-icons-brand.svg)
source=(${source[*]/identity-icons-brand.svg/})
source+=(https://repo.parabola.nu/other/iceweasel/${pkgname}_${_brandingver}.branding.tar.xz{,.sig}
@@ -214,9 +222,15 @@ prepare() {
mkdir mozbuild
cd firefox-$pkgver
+ ## technical patching ##
+
# Unbreak build with python-zstandard 0.18.0
+ echo "applying zstandard-0.18.0.diff"
patch -Np1 -i ../zstandard-0.18.0.diff
+
+ ## general configuration ##
+
# echo -n "$_google_api_key" >google-api-key # anti-feature
# echo -n "$_mozilla_api_key" >mozilla-api-key # anti-feature
@@ -512,6 +526,7 @@ build() {
export MOZ_NOSPAM=1
export MOZBUILD_STATE_PATH="$srcdir/mozbuild"
# export MOZ_ENABLE_FULL_SYMBOLS=1 # anti-feature
+ # export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=pip # parabola policy violation
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
# LTO needs more open files
@@ -666,7 +681,7 @@ app.distributor.channel=$pkgname
app.partner.parabola=parabola
END
- # NOTE: browser/branding/$theme is $brandingdestdir in configure()
+ # NOTE: browser/branding/$theme is $brandingdestdir in prepare()
local i theme=$pkgname
for i in 16 22 24 32 48 64 128 256; do
install -Dvm644 browser/branding/$theme/default$i.png \