mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-08 21:00:05 +02:00
205 lines
5.0 KiB
Bash
205 lines
5.0 KiB
Bash
SUMMARY=" A new Firefox based browser from Japan with excellent privacy & flexibility"
|
|
DESCRIPTION="Floorp is a free and open-source web browser based on Firefox, developed by \
|
|
Floorp Projects.
|
|
|
|
It focuses on providing a highly customizable and privacy-oriented browsing \
|
|
experience, making it an excellent choice for users who value both flexibility and security. \
|
|
The browser includes features like strong tracking protection, side panels, workspaces, \
|
|
and vertical tabs for better organization and convenience. With its emphasis on speed, \
|
|
security, and user freedom, Floorp strikes a balance between versatility, privacy, and web \
|
|
openness.
|
|
|
|
Being cross-platform, it ensures accessibility across different devices without \
|
|
collecting personal information."
|
|
HOMEPAGE="https://floorp.app/"
|
|
COPYRIGHT="1995-2025 Mozilla Developers, Floorp Projects & Ablaze"
|
|
LICENSE="MPL v2.0"
|
|
REVISION="1"
|
|
SOURCE_URI="https://github.com/Floorp-Projects/Floorp/archive/refs/tags/v$portVersion.tar.gz"
|
|
CHECKSUM_SHA256="3784e31f42cec861c2597ba7ac2f3005822a1fb29043d3f2457fdd25a507cf3f"
|
|
SOURCE_DIR="Floorp-$portVersion"
|
|
srcGitRev2="41d0b3f178657964fad54feadfb43946df131664"
|
|
SOURCE_URI_2="https://github.com/Floorp-Projects/Floorp-core/archive/$srcGitRev2.tar.gz"
|
|
CHECKSUM_SHA256_2="40491e4064da89ef52334c58f351d2fa7cb9c6e470fda45da6defa50a032de09"
|
|
SOURCE_DIR_2="Floorp-core-$srcGitRev2"
|
|
srcGitRev3="29bb9bed37ae970fbac4c8222010328b7fbf7e15"
|
|
SOURCE_URI_3="https://github.com/Floorp-Projects/Unified-l10n-central/archive/$srcGitRev3.tar.gz"
|
|
CHECKSUM_SHA256_3="5c848efe5be9fcbe73adea56f78d3c2d6de10f7b802f6380bf853242822858aa"
|
|
SOURCE_DIR_3="Unified-l10n-central-$srcGitRev3"
|
|
|
|
PATCHES="
|
|
floorp-$portVersion.patchset
|
|
floorp_launcher-$portVersion.patchset
|
|
"
|
|
ADDITIONAL_FILES="
|
|
floorp.rdef.in
|
|
floorp_launcher.rdef.in
|
|
mozconfig
|
|
"
|
|
|
|
ARCHITECTURES="!x86_64"
|
|
|
|
PROVIDES="
|
|
floorp= $portVersion
|
|
app:Floorp= $portVersion
|
|
"
|
|
CONFLICTS="
|
|
floorp_bin
|
|
"
|
|
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:libmediahelpers
|
|
lib:libnotify
|
|
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:libmediahelpers
|
|
devel:libnotify
|
|
devel:libnspr4
|
|
devel:libnss3
|
|
devel:libpng16
|
|
devel:libvpx
|
|
devel:libwebp
|
|
devel:libzstd
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
llvm20
|
|
nodejs20
|
|
rust_bin
|
|
cmd:autoconf_2.13
|
|
cmd:cbindgen
|
|
cmd:clang++
|
|
cmd:gawk
|
|
cmd:gcc
|
|
cmd:git
|
|
cmd:gn
|
|
cmd:lld >= 20
|
|
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
|
|
echo $portVersion >> browser/config/version.txt
|
|
echo $portVersion >> browser/config/version_display.txt
|
|
|
|
rm -rf floorp
|
|
ln -s $sourceDir2 floorp
|
|
|
|
rm -rf floorp/browser/locales/l10n-central
|
|
ln -s $sourceDir3 floorp/browser/locales/l10n-central
|
|
|
|
export DISABLE_ASLR=1
|
|
export MOZBUILD_STATE_PATH="$sourceDir/.buildstate"
|
|
|
|
./mach -vv \
|
|
--no-interactive bootstrap \
|
|
--application-choice="Firefox for Desktop" \
|
|
--exclude=sysroot-wasm32-wasi
|
|
|
|
./mach python python/mozbuild/mozbuild/gn_processor.py dom/media/webrtc/third_party_build/gn-configs/webrtc.json
|
|
|
|
./mach build
|
|
|
|
cd tools/haiku-launcher
|
|
gcc -o "Floorp Browser" launcher.cpp -lbe
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
export DISABLE_ASLR=1
|
|
export MOZBUILD_STATE_PATH="$sourceDir/.buildstate"
|
|
|
|
./mach install
|
|
|
|
./mach package
|
|
|
|
mkdir -p $appsDir
|
|
|
|
mv /usr/local/lib/floorp $appsDir/Floorp
|
|
mv $appsDir/Floorp/floorp $appsDir/Floorp/Floorp
|
|
cp "tools/haiku-launcher/Floorp Browser" $appsDir/Floorp
|
|
|
|
mkdir -p $appsDir/Floorp/lib
|
|
|
|
# arranging the files in lib directories
|
|
cd $appsDir/Floorp
|
|
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.floorp-browser"
|
|
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/floorp.rdef.in > floorp.rdef
|
|
|
|
sed \
|
|
-e "s|@MAJOR@|$MAJOR|" \
|
|
-e "s|@MIDDLE@|$MIDDLE|" \
|
|
-e "s|@MINOR@|$MINOR|" \
|
|
-e "s|@LONG_INFO@|$LONG_INFO|" \
|
|
$portDir/additional-files/floorp_launcher.rdef.in > floorp_launcher.rdef
|
|
|
|
addResourcesToBinaries floorp.rdef $appsDir/Floorp/Floorp
|
|
addResourcesToBinaries floorp_launcher.rdef "$appsDir/Floorp/Floorp Browser"
|
|
|
|
addAppDeskbarSymlink $appsDir/Floorp/Floorp
|
|
}
|