Waterfox: add recipe for 6.5.5 version (disabled)

This commit is contained in:
Gerasim Troeglazov
2025-03-16 17:32:28 +10:00
parent cd21f590a1
commit ae6d731c5f
4 changed files with 3102 additions and 0 deletions

View File

@@ -0,0 +1,65 @@
# Application
ac_add_options --with-app-basename=Waterfox
ac_add_options --with-app-name=waterfox
ac_add_options --with-branding=waterfox/browser/branding
ac_add_options --with-distribution-id=net.waterfox
ac_add_options --with-l10n-base="$PWD"/waterfox/browser/locales
# Backend
ac_add_options --enable-default-toolkit=cairo-gtk3-wayland-only
ac_add_options --enable-audio-backends=haiku
# System library
ac_add_options --with-system-ffi
ac_add_options --with-system-jpeg
ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-webp
ac_add_options --with-system-zlib
# Addons
ac_add_options --allow-addon-sideload
ac_add_options --with-unsigned-addon-scopes=app,system
# Disable
ac_add_options --disable-tests
ac_add_options --disable-updater
ac_add_options --disable-valgrind
ac_add_options --disable-crashreporter
ac_add_options --disable-geckodriver
ac_add_options --disable-profiling
ac_add_options --without-wasm-sandboxed-libraries
mk_add_options MOZ_CRASHREPORTER=0
mk_add_options MOZ_DATA_REPORTING=0
mk_add_options MOZ_SERVICES_HEALTHREPORT=0
mk_add_options MOZ_TELEMETRY_REPORTING=
export MOZ_INCLUDE_SOURCE_INFO=1
export MOZ_REQUIRE_SIGNING=
export MOZ_TELEMETRY_REPORTING=
# Linker
ac_add_options --disable-lto
ac_add_options --enable-linker=lld
export LD="lld"
export LDFLAGS="-fuse-ld=lld -Wl,--no-keep-memory -Wl,--undefined-version"
# Optimize
ac_add_options --enable-jit
ac_add_options --enable-optimize="-march=x86-64 -mfpmath=sse -mprfchw -msse3 -mcx16 -msahf -mtune=skylake -O3 -w"
ac_add_options --enable-release
ac_add_options --enable-rust-simd
ac_add_options RUSTC_OPT_LEVEL=3
export RUSTC_OPT_LEVEL=3
export RUSTFLAGS="$RUSTFLAGS -Ctarget-cpu=x86-64"
# Debug
ac_add_options --disable-debug
ac_add_options --disable-debug-symbols
ac_add_options --disable-debug-js-modules
ac_add_options --enable-strip
ac_add_options --enable-install-strip
export STRIP_FLAGS="--strip-debug --strip-unneeded"

View File

@@ -0,0 +1,66 @@
resource app_flags B_MULTIPLE_LAUNCH;
resource app_version {
major = @MAJOR@,
middle = @MIDDLE@,
minor = @MINOR@,
variety = B_APPV_FINAL,
internal = 0,
short_info = "Waterfox",
long_info = "@LONG_INFO@"
};
resource app_signature "@APP_SIGNATURE@";
resource vector_icon {
$"6E6369660A020006033AB502393258BA6A3E3C0B8D49494D4A3C9A0094F6FE80"
$"06A7EAFF94F6FE02000602B0040F3CFFF5BC7FF6AF5C1A4B72014AC1B0005CED"
$"FFFF7AC1EE0200060237C8A537DB63BA7F9B3A73774A63A4479B9A007AFBFAFF"
$"CCFBFB0200060238E1D838F01FBA7F9B3A73774AF3A4484DCD029DD7F2FFA7F6"
$"F7020006023AD76F3C0E9ABBE88B3AB310480446499BEE0018DFFCFF0690E702"
$"0006033ADAD4395C90BA29273BAB864ACAA84AF49C000688E44C05AFFFFF29C3"
$"FC020006033ADAD4395C90BA29273BAB864ACAA84AF49C000688E44C5EC5FAFF"
$"67D5FF020006033C2887BEA0AA3DC09F3B150F4ACBBC4A0C55005885D9614B8B"
$"FFFFD67CDB05010401740E0606FF07C5F5B54AC5F5B54AC5F2B552C5E8B55BC5"
$"EFB557C589B58CC4CCB563C52AB58FC4A7B552C453B4F1C451B515C4E2B49BC5"
$"F5B54AC597B4C0C5F5B54AB54A0608FF7FC453B4F1C453B4F1C451B515C4CCB5"
$"63C4A7B552C52AB58FC5E8B55BC589B58CC5EFB557C5F5B54AC5F2B552C60DB5"
$"6CC625B5BAC61DB591C64EB688C4CEB72DC5A4B74AC3ADB706C453B4F1C35BB5"
$"8DC453B4F1B4F1020EC21FB6D8C21FB6D8C21BB6D5C216B6D9C218B6D5C216B6"
$"DAC214B6DBC215B6DAC1BBB719C0F3B757C15BB742C0E6B759C0D1B75CC0DDB7"
$"5CC0C6B75CC0B3B761C0BEB761C0A6B761C090B765C09BB765C067B767C016B7"
$"65C03FB767C00DB765BFFAB761C0042BBFEDB760BFE4B75FBFE6B760BF2CB743"
$"BE0FB66DBE90B6F2BEF3B59EC16CB5D7C051B51DC1C9B614C21FB6D8C204B66A"
$"C21FB6D8C21FB6D8C21FB6D8C21FB6D80213BE0FB66DBE0FB66DBE90B6F2BFE4"
$"B75FBF2CB743BFE6B760BFFAB761BFEDB760C0042BC016B765C00DB765C03FB7"
$"67C090B765C067B767C09BB765C0B3B761C0A6B761C0BEB761C0D1B75CC0C6B7"
$"5CC0DDB75CC0F3B757C0E6B759C15BB742C214B6DBC1BBB719C215B6DAC216B6"
$"D9C216B6DAC218B6D5C21FB6D8C21BB6D5C25BB816C02DB953C124B8EBBF37B9"
$"BBBD69BB0DBE1732BD63BB15BD3ABB52BD54BB2CBD2BBB68BD01BB6EBD1BBB80"
$"BCEBBB5FBCD0BB19BCD9BB32BC8BBA4FBCBFB897BC8DB965BCF4B7BDBE0FB66D"
$"BD64B704BE0FB66DBE0FB66DBE0FB66DBE0FB66D0606BA0E284F213F23351E38"
$"B5B9BA732C3733462F4EB9DBC4262C520608EEFF284E325B2D5B375B3B544443"
$"BFBCC428483B50335237C58AB9674134C1C0B9B8BE11BC9633483742314B2C50"
$"2F50295002044B3AC3BEBE864C3750335136C5B6B9554134C1C0B9B8BEE3BBF2"
$"4438C1B4BB1E42400607FE3F284E32542B543554403EBE24C22A453450335033"
$"4F304133C1C0B952BE11BC3033473740B9D8C3CE2C502F5029500204423BBF47"
$"BF724833503350334F304133C1C0B952BF4ABB3C3D3A3DBC263D3C0604FE343B"
$"3038B9CFBD6EB8F0BBB134312F2FBBCBBA1A3338333833BD720607EE2E404B43"
$"44C022C2A8C1BAC011483D524E4E48C7AFC679584D4E5B545BC3955B47570607"
$"EE2E43454541C0EEC176C286BEDF483D524E4E48C7AFC679584D515454544D54"
$"4B510605BA024C4953385C35573261385F3E565202044030C34530BC3A303040"
$"30BC3A30C3454050BC3A50C34550504050C34550BC3A0F0A09010D0241300000"
$"00000000003CC000C720004AC8000A080C00010203040607090B0A0C05123FA4"
$"BA0000000000003FCB8E42D473403F9001178422040A040104023FA4BA000000"
$"0000003FCB8E42D473403F900A000100023FA4BA0000000000003FCB8E42D473"
$"403F900A010101023FA4BA0000000000003FCB8E42D473403F900A000102023F"
$"A4BA0000000000003FCB8E42D473403F900A010103023FA4BA0000000000003F"
$"CB8E42D473403F900A07010C023FA4BA0000000000003FCB8E42D473403F900A"
$"05010A023FA4BA0000000000003FCB8E42D473403F900A06010B023FA4BA0000"
$"000000003FCB8E42D473403F900A000105023FA4BA0000000000003FCB8E42D4"
$"73403F900A010107023FA4BA0000000000003FCB8E42D473403F900A03010602"
$"3FA4BA0000000000003FCB8E42D473403F900A020108023FA4BA000000000000"
$"3FCB8E42D473403F900A040109023FA4BA0000000000003FCB8E42D473403F90"
};

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,165 @@
SUMMARY="A Firefox fork with privacy, usability, and speed enhancements"
DESCRIPTION="Waterfox is an open-source, privacy-focused browser based on the popular \
open source browser with a red panda as a mascot. It is designed to be a drop-in \
replacement for said browser that offers enhanced privacy features, performance \
improvements, and customizability while maintaining compatibility with existing extensions.
Key Features:
* Privacy-focused: Removal of telemetry and tracking, with bare minimum of data collection for operation.
* Performance-oriented: Optimized for modern systems
* Customizable: Support for classic and modern extensions
* Cross-platform: Available for Windows, macOS, Linux, Android and Haiku
* Modern: Regular updates to stay current with web standards"
HOMEPAGE="https://www.waterfox.net/"
COPYRIGHT="1995-2025 Mozilla Developers, BrowserWorks"
LICENSE="MPL v2.0"
REVISION="1"
SOURCE_URI="https://github.com/BrowserWorks/Waterfox/archive/refs/tags/$portVersion.tar.gz"
CHECKSUM_SHA256="e8631680858be8a0d8ee27ab0c4d65958fe665e9dd12e176df8c487d5ac5bb68"
SOURCE_DIR="Waterfox-$portVersion"
srcGitRev="3046738340d44e4ac76d29f96abc06a4ae71c1ad"
SOURCE_URI_2="https://github.com/BrowserWorks/l10n/archive/$srcGitRev.zip"
CHECKSUM_SHA256_2="3483246095cbab547f35eb4d8526646193f5492174c480205bad4a4cac847ea5"
SOURCE_DIR_2="l10n-$srcGitRev"
PATCHES="waterfox-$portVersion.patchset"
ADDITIONAL_FILES="
waterfox.rdef.in
mozconfig
"
ARCHITECTURES="!x86_64"
PROVIDES="
waterfox= $portVersion
app:Waterfox= $portVersion
"
REQUIRES="
haiku
lib:libatk_1.0
lib:libcairo
lib:libcairo_gobject
lib:libdbus_1
lib:libevent_2.1
lib:libgdk_3
lib:libgdk_pixbuf_2.0
lib:libglib_2.0
lib:libgtk_3
lib:libharfbuzz
lib:libintl
lib:libnspr4
lib:libnss3
lib:libpango_1.0
lib:libpangocairo_1.0
lib:libpng16
lib:libz
"
BUILD_REQUIRES="
haiku_devel
devel:libdbus_1
devel:libdbus_glib_1
devel:libevent
devel:libglib_2.0
devel:libgtk_3
devel:libnspr4
devel:libnss3
devel:libpng16
devel:libvpx
devel:libwebp
devel:libzstd
"
BUILD_PREREQUIRES="
llvm18
nodejs20
rust_bin
cmd:autoconf_2.13
cmd:cbindgen
cmd:clang++
cmd:gawk
cmd:gcc
cmd:git
cmd:lld >= 18
cmd:m4
cmd:make
cmd:nasm
cmd:perl
cmd:pip3
cmd:pkg_config
cmd:python3
cmd:tar
cmd:unzip
cmd:xargs
cmd:zip
"
BUILD()
{
chmod +x \
build/cargo-linker \
mach
rm -f .mozconfig
cp -f $portDir/additional-files/mozconfig .mozconfig
echo "export MOZ_APP_VERSION=$portVersion" >> .mozconfig
echo "export MOZ_APP_VERSION_DISPLAY=$portVersion" >> .mozconfig
rm -rf waterfox/browser/locales
ln -s $sourceDir2 waterfox/browser/locales
export MOZBUILD_STATE_PATH="$sourceDir/.buildstate"
./mach -vv \
--no-interactive bootstrap \
--application-choice="Firefox for Desktop" \
--exclude=sysroot-wasm32-wasi
./mach build
}
INSTALL()
{
export MOZBUILD_STATE_PATH="$sourceDir/.buildstate"
./mach install
./mach package
mkdir -p $appsDir
mv /usr/local/lib/waterfox $appsDir/Waterfox
mv $appsDir/Waterfox/waterfox $appsDir/Waterfox/Waterfox
mkdir -p $appsDir/Waterfox/lib
# arranging the files in lib directories
cd $appsDir/Waterfox
mv \
libgkcodecs.so \
libipcclientcerts.so \
liblgpllibs.so \
libmozavcodec.so \
libmozavutil.so \
libmozgtk.so \
libmozsqlite3.so \
libmozwayland.so \
libxul.so \
lib
local APP_SIGNATURE="application/x-vnd.waterfox"
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local LONG_INFO="$SUMMARY"
sed \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
$portDir/additional-files/waterfox.rdef.in > waterfox.rdef
addResourcesToBinaries waterfox.rdef $appsDir/Waterfox/Waterfox
addAppDeskbarSymlink $appsDir/Waterfox/Waterfox
}