# Description: Fast, Private & Safe Web Browser # URL: https://www.mozilla.org/firefox/ # Maintainer: KRAK3N Team, extra ports at krak3n dot my # Depends on: alsa-utils cbindgen nodejs gtk3 libwebp libvpx nss libevent libxcomposite libxcursor libxdamage libsm name=firefox version=144.0 release=1 source=(https://ftp.mozilla.org/pub/${name}/releases/${version}/source/${name}-${version}.source.tar.xz libcxx18.patch) build() { cd ${name}-${version} for p in $SRC/*.patch; do patch -Np1 -i $p done cat > .mozconfig << EOF ac_add_options --prefix=/usr ac_add_options --libdir=/usr/lib ac_add_options --enable-strip ac_add_options --enable-release ac_add_options --enable-rust-simd ac_add_options --enable-audio-backends=alsa ac_add_options --enable-install-strip ac_add_options --enable-official-branding ac_add_options --enable-application=browser ac_add_options --enable-optimize ac_add_options --with-system-ffi 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 --with-system-pixman ac_add_options --with-system-png ac_add_options --with-system-webp ac_add_options --with-system-zlib ac_add_options --without-wasm-sandboxed-libraries ac_add_options --disable-eme #ac_add_options --disable-dbus ac_add_options --disable-tests ac_add_options --disable-vtune ac_add_options --disable-updater ac_add_options --disable-jemalloc ac_add_options --disable-elf-hack ac_add_options --disable-callgrind ac_add_options --disable-profiling ac_add_options --disable-necko-wifi ac_add_options --disable-crashreporter ac_add_options --disable-accessibility ac_add_options --disable-debug ac_add_options --disable-debug-symbols ac_add_options --disable-parental-controls ac_add_options --disable-system-extension-dirs ac_add_options --disable-default-browser-agent ac_add_options --disable-backgroundtasks ac_add_options --disable-webspeech ac_add_options --target=x86_64-unknown-linux-musl ac_add_options --host=x86_64-unknown-linux-musl EOF if [ -e '/usr/bin/ccache' ]; then echo 'ac_add_options --enable-ccache' >> .mozconfig PATH=$(echo ${PATH} | awk -v RS=: -v ORS=: '/ccache/ {next} {print}' | sed 's/:*$//') fi export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none export MOZBUILD_STATE_PATH=${PWD}/mozbuild export CFLAGS="$CFLAGS -w" export CXXFLAGS="$CXXFLAGS -w" export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/firefox,--enable-new-dtags" export RUSTFLAGS="$RUSTFLAGS -Cdebuginfo=0" export MOZ_DEBUG_FLAGS=-g0 export MOZ_NOSPAM=1 export CXXSTDLIB=c++ ./mach build DESTDIR=$PKG ./mach install mkdir -pv $PKG/usr/share/applications mkdir -pv $PKG/usr/share/pixmaps cat > $PKG/usr/share/applications/firefox.desktop << EOF [Desktop Entry] Encoding=UTF-8 Name=Firefox Web Browser Comment=Browse the World Wide Web GenericName=Web Browser Exec=firefox %u Terminal=false Type=Application Icon=firefox Categories=GNOME;GTK;Network;WebBrowser; MimeType=text/xml;text/mml;text/html;application/xhtml+xml;application/vnd.mozilla.xul+xml;x-scheme-handler/http;x-scheme-handler/https StartupNotify=true EOF mkdir -p $PKG/usr/share/pixmaps ln -sfv /usr/lib/firefox/browser/chrome/icons/default/default128.png \ $PKG/usr/share/pixmaps/firefox.png rm $PKG/usr/lib/firefox/firefox-bin }