mirror of
https://aur.archlinux.org/firedragon.git
synced 2024-12-26 04:34:15 +00:00
chore: update firedragon
This commit was automatically generated to reflect changes to this package in another repository. The changelog for this package can be found at https://gitlab.com/garuda-linux/pkgbuilds/-/commits/main/firedragon. Logs of the corresponding pipeline run can be found here: https://gitlab.com/garuda-linux/pkgbuilds/-/pipelines/1291622005.
This commit is contained in:
parent
3c39aad492
commit
9c8c9bb458
37
.SRCINFO
37
.SRCINFO
@ -1,18 +1,49 @@
|
||||
pkgbase = firedragon
|
||||
pkgdesc = Floorp fork build using custom branding and settings
|
||||
pkgver = 11.12.2
|
||||
pkgrel = 2.1
|
||||
pkgrel = 2.2
|
||||
epoch = 1
|
||||
url = https://garudalinux.org
|
||||
install = firedragon.install
|
||||
arch = x86_64
|
||||
license = MPL2
|
||||
license = Floorp Shared Source License
|
||||
makedepends = cbindgen
|
||||
makedepends = clang
|
||||
makedepends = diffutils
|
||||
makedepends = dump_syms
|
||||
makedepends = imagemagick
|
||||
makedepends = imake
|
||||
makedepends = inetutils
|
||||
makedepends = git
|
||||
makedepends = jack
|
||||
makedepends = lld
|
||||
makedepends = llvm
|
||||
makedepends = mesa
|
||||
makedepends = mold
|
||||
makedepends = nasm
|
||||
makedepends = nodejs
|
||||
makedepends = python
|
||||
makedepends = rust
|
||||
makedepends = unzip
|
||||
makedepends = wasi-compiler-rt
|
||||
makedepends = wasi-libc
|
||||
makedepends = wasi-libc++
|
||||
makedepends = wasi-libc++abi
|
||||
makedepends = xorg-server-xvfb
|
||||
makedepends = yasm
|
||||
makedepends = zip
|
||||
makedepends = weston
|
||||
makedepends = xwayland-run
|
||||
depends = dbus
|
||||
depends = dbus-glib
|
||||
depends = ffmpeg
|
||||
depends = gtk3
|
||||
depends = libevent
|
||||
depends = libjpeg
|
||||
depends = libpulse
|
||||
depends = libvpx
|
||||
depends = libwebp
|
||||
depends = libxss
|
||||
depends = libxt
|
||||
depends = mime-types
|
||||
@ -37,10 +68,10 @@ pkgbase = firedragon
|
||||
options = !strip
|
||||
backup = usr/lib/firedragon/firedragon.cfg
|
||||
backup = usr/lib/firedragon/distribution/policies.json
|
||||
source = https://gitlab.com/api/v4/projects/55893651/packages/generic/firedragon/11.12.2-2/firedragon-v11.12.2-2.linux-x86_64.tar.bz2
|
||||
source = https://gitlab.com/api/v4/projects/55893651/packages/generic/firedragon/11.12.2-2/firedragon-v11.12.2-2.source.tar.zst
|
||||
source = https://gitlab.com/garuda-linux/firedragon/settings/-/raw/master/firedragon.psd
|
||||
source = firedragon.desktop
|
||||
sha256sums = c90102d90af653e1051aee7c064a54c09132a0aba3fe7abee8068c23adae5444
|
||||
sha256sums = 880e094a9fb72b2f4c6ee212d5b530b9fd5c72bf0a6b755af309afb4c09f151c
|
||||
sha256sums = 61355930cc59813e7e610ffdab8a01e32be980fffe1dfd8f9654b8f8f9f7fdc0
|
||||
sha256sums = 53d3e743f3750522318a786befa196237892c93f20571443fdf82a480e7f0560
|
||||
|
||||
|
266
PKGBUILD
266
PKGBUILD
@ -2,10 +2,17 @@
|
||||
# Co-Maintainer: FGD
|
||||
# Co-Maintainer: stefanwimmer128 <info at stefanwimmer128 dot xyz>
|
||||
|
||||
# Three-stage profile-guided optimization
|
||||
: ${_build_pgo:=true}
|
||||
|
||||
# Profile with xvfb-run, if possible
|
||||
: ${_build_pgo_xvfb:=false}
|
||||
|
||||
_pkgver=11.12.2-2
|
||||
_pkgrel=1
|
||||
_pkgrel=2
|
||||
|
||||
pkgname=firedragon
|
||||
_pkgname=FireDragon
|
||||
pkgver=${_pkgver%-*}
|
||||
pkgrel=${_pkgver#*-}.${_pkgrel}
|
||||
epoch=1
|
||||
@ -17,7 +24,11 @@ depends=(dbus
|
||||
dbus-glib
|
||||
ffmpeg
|
||||
gtk3
|
||||
libevent
|
||||
libjpeg
|
||||
libpulse
|
||||
libvpx
|
||||
libwebp
|
||||
libxss
|
||||
libxt
|
||||
mime-types
|
||||
@ -25,7 +36,31 @@ depends=(dbus
|
||||
pipewire
|
||||
ttf-font
|
||||
zlib)
|
||||
makedepends=()
|
||||
makedepends=(cbindgen
|
||||
clang
|
||||
diffutils
|
||||
dump_syms
|
||||
imagemagick
|
||||
imake
|
||||
inetutils
|
||||
git
|
||||
jack
|
||||
lld
|
||||
llvm
|
||||
mesa
|
||||
mold
|
||||
nasm
|
||||
nodejs
|
||||
python
|
||||
rust
|
||||
unzip
|
||||
wasi-compiler-rt
|
||||
wasi-libc
|
||||
wasi-libc++
|
||||
wasi-libc++abi
|
||||
xorg-server-xvfb
|
||||
yasm
|
||||
zip)
|
||||
optdepends=('hunspell-dictionary: Spell checking'
|
||||
'libnotify: Notification integration'
|
||||
'networkmanager: Location detection via available WiFi networks'
|
||||
@ -43,22 +78,230 @@ options=(!debug
|
||||
!strip)
|
||||
backup=("usr/lib/${pkgname}/${pkgname}.cfg"
|
||||
"usr/lib/${pkgname}/distribution/policies.json")
|
||||
source=(https://gitlab.com/api/v4/projects/55893651/packages/generic/firedragon/${_pkgver}/firedragon-v${_pkgver}.linux-x86_64.tar.bz2
|
||||
source=(https://gitlab.com/api/v4/projects/55893651/packages/generic/firedragon/${_pkgver}/firedragon-v${_pkgver}.source.tar.zst
|
||||
https://gitlab.com/garuda-linux/firedragon/settings/-/raw/master/firedragon.psd
|
||||
"${pkgname}.desktop")
|
||||
sha256sums=('c90102d90af653e1051aee7c064a54c09132a0aba3fe7abee8068c23adae5444'
|
||||
sha256sums=('880e094a9fb72b2f4c6ee212d5b530b9fd5c72bf0a6b755af309afb4c09f151c'
|
||||
'61355930cc59813e7e610ffdab8a01e32be980fffe1dfd8f9654b8f8f9f7fdc0'
|
||||
'53d3e743f3750522318a786befa196237892c93f20571443fdf82a480e7f0560')
|
||||
install="${pkgname}.install"
|
||||
|
||||
# Select the method of profiling
|
||||
if [[ "${_build_pgo::1}" == "t" ]]; then
|
||||
if [[ "${_build_pgo_xvfb::1}" == "t" ]]; then
|
||||
makedepends+=(xorg-server-xvfb)
|
||||
else
|
||||
makedepends+=(weston xwayland-run)
|
||||
fi
|
||||
fi
|
||||
|
||||
prepare() {
|
||||
rm -rf "${srcdir}/mozbuild"
|
||||
mkdir "${srcdir}/mozbuild"
|
||||
|
||||
cd firedragon-v"${_pkgver}" || exit
|
||||
cat > ../mozconfig << END
|
||||
ac_add_options --with-app-basename=${_pkgname}
|
||||
ac_add_options --with-app-name=${pkgname}
|
||||
ac_add_options --with-branding=browser/branding/firedragon
|
||||
ac_add_options --with-l10n-base=${PWD@Q}/floorp/browser/locales/l10n-central
|
||||
ac_add_options --enable-application=browser
|
||||
ac_add_options --enable-private-components
|
||||
mk_add_options MOZ_OBJDIR=${PWD@Q}/obj
|
||||
|
||||
# Build options
|
||||
ac_add_options --disable-bootstrap
|
||||
ac_add_options --disable-elf-hack
|
||||
ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
|
||||
ac_add_options --enable-hardening
|
||||
ac_add_options --enable-linker=mold
|
||||
ac_add_options --enable-release
|
||||
ac_add_options --enable-rust-simd
|
||||
ac_add_options --enable-wasm-simd
|
||||
ac_add_options --prefix=/usr
|
||||
ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
|
||||
export MOZ_INCLUDE_SOURCE_INFO=1
|
||||
|
||||
# Branding
|
||||
ac_add_options --allow-addon-sideload
|
||||
ac_add_options --enable-unverified-updates
|
||||
ac_add_options --enable-update-channel=release
|
||||
ac_add_options --with-distribution-id=org.garudalinux
|
||||
ac_add_options --with-unsigned-addon-scopes=app,system
|
||||
export MOZILLA_OFFICIAL=1
|
||||
export MOZ_APP_REMOTINGNAME=${pkgname}
|
||||
export MOZ_CRASHREPORTER=
|
||||
export MOZ_DATA_REPORTING=
|
||||
export MOZ_REQUIRE_SIGNING=
|
||||
export MOZ_SERVICES_HEALTHREPORT=
|
||||
export MOZ_TELEMETRY_REPORTING=
|
||||
|
||||
# System libraries
|
||||
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
|
||||
|
||||
# Features
|
||||
ac_add_options --disable-crashreporter # (Minimize telemetry)
|
||||
ac_add_options --disable-debug
|
||||
ac_add_options --disable-debug-js-modules
|
||||
ac_add_options --disable-debug-symbols
|
||||
ac_add_options --disable-default-browser-agent
|
||||
ac_add_options --disable-gpsd
|
||||
ac_add_options --disable-necko-wifi
|
||||
ac_add_options --disable-parental-controls # (Disable local/OS MTIM)
|
||||
ac_add_options --disable-rust-tests
|
||||
ac_add_options --disable-synth-speechd
|
||||
ac_add_options --disable-tests
|
||||
ac_add_options --disable-updater
|
||||
ac_add_options --disable-warnings-as-errors
|
||||
ac_add_options --disable-webspeech
|
||||
ac_add_options --disable-webspeechtestbackend
|
||||
ac_add_options --enable-alsa
|
||||
ac_add_options --enable-av1
|
||||
ac_add_options --enable-eme=widevine
|
||||
ac_add_options --enable-jack
|
||||
ac_add_options --enable-jxl
|
||||
ac_add_options --enable-proxy-bypass-protection
|
||||
ac_add_options --enable-pulseaudio
|
||||
ac_add_options --enable-raw
|
||||
ac_add_options --enable-sandbox
|
||||
ac_add_options --enable-strip
|
||||
|
||||
# Optimization
|
||||
ac_add_options --enable-optimize=-O3
|
||||
ac_add_options --enable-lto=cross,full
|
||||
ac_add_options OPT_LEVEL="3"
|
||||
ac_add_options RUSTC_OPT_LEVEL="3"
|
||||
|
||||
# Other
|
||||
export AR=llvm-ar
|
||||
export CC=clang
|
||||
export CXX=clang++
|
||||
export NM=llvm-nm
|
||||
export RANLIB=llvm-ranlib
|
||||
END
|
||||
}
|
||||
|
||||
build() {
|
||||
cd firedragon-v"${_pkgver}" || exit
|
||||
|
||||
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=pip
|
||||
export MOZBUILD_STATE_PATH="${srcdir}/mozbuild"
|
||||
export MOZ_ENABLE_FULL_SYMBOLS=1
|
||||
export MOZ_NOSPAM=1
|
||||
export MOZ_PROFILER_STARTUP=1 # Starts the profiler is started as early as possible during startup.
|
||||
|
||||
# Fix DRI/zink issues during compilation
|
||||
export LIBGL_ALWAYS_SOFTWARE=true
|
||||
|
||||
# Malloc_usable_size is used in various parts of the codebase
|
||||
CFLAGS="${CFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
|
||||
CXXFLAGS="${CXXFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
|
||||
|
||||
# LTO needs more open files
|
||||
ulimit -n 4096
|
||||
|
||||
# Do 3-tier PGO
|
||||
if [[ "${_build_pgo::1}" == "t" ]]; then
|
||||
local _old_profdata="${SRCDEST:-$startdir}/merged.profdata"
|
||||
local _old_jarlog="${SRCDEST:-$startdir}/jarlog"
|
||||
|
||||
# Restore old profile
|
||||
if [[ "${_build_pgo_reuse::1}" == "t" ]]; then
|
||||
if [[ -s "$_old_profdata" ]]; then
|
||||
echo "Restoring old profile data."
|
||||
cp --reflink=auto -f "$_old_profdata" merged.profdata
|
||||
fi
|
||||
|
||||
if [[ -s "$_old_jarlog" ]]; then
|
||||
echo "Restoring old jar log."
|
||||
cp --reflink=auto -f "$_old_jarlog" jarlog
|
||||
fi
|
||||
fi
|
||||
|
||||
# Make new profile
|
||||
if [[ "${_build_pgo_reuse::1}" != "t" ]] || [[ ! -s merged.profdata ]]; then
|
||||
echo "Building instrumented browser..."
|
||||
cat > .mozconfig ../mozconfig
|
||||
echo >> .mozconfig "ac_add_options --enable-profile-generate=cross"
|
||||
./mach build
|
||||
|
||||
echo "Profiling instrumented browser..."
|
||||
./mach package
|
||||
|
||||
if [[ "${_build_pgo_xvfb::1}" == "t" ]]; then
|
||||
local _headless_run=(
|
||||
xvfb-run
|
||||
-s "-screen 0 1920x1080x24 -nolisten local"
|
||||
)
|
||||
else
|
||||
local _headless_run=(
|
||||
wlheadless-run
|
||||
-c weston --width=1920 --height=1080
|
||||
)
|
||||
fi
|
||||
|
||||
LLVM_PROFDATA=llvm-profdata JARLOG_FILE=${PWD@Q}/jarlog \
|
||||
"${_headless_run[@]}" -- ./mach python build/pgo/profileserver.py
|
||||
|
||||
echo "Removing instrumented browser..."
|
||||
./mach clobber
|
||||
fi
|
||||
|
||||
echo "Building optimized browser..."
|
||||
cat > .mozconfig ../mozconfig
|
||||
|
||||
if [[ -s merged.profdata ]]; then
|
||||
stat -c "Profile data found (%s bytes)" merged.profdata
|
||||
echo >> .mozconfig "ac_add_options --enable-profile-use=cross"
|
||||
echo >> .mozconfig "ac_add_options --with-pgo-profile-path='${PWD@Q}/merged.profdata'"
|
||||
|
||||
# save profdata for reuse
|
||||
cp --reflink=auto -f merged.profdata "$_old_profdata"
|
||||
else
|
||||
echo "Profile data not found."
|
||||
fi
|
||||
|
||||
if [[ -s jarlog ]]; then
|
||||
stat -c "Jar log found (%s bytes)" jarlog
|
||||
echo >> .mozconfig "ac_add_options --with-pgo-jarlog='${PWD@Q}/jarlog'"
|
||||
|
||||
# save jarlog for reuse
|
||||
cp --reflink=auto -f jarlog "$_old_jarlog"
|
||||
else
|
||||
echo "Jar log not found."
|
||||
fi
|
||||
|
||||
./mach build
|
||||
else
|
||||
echo "Building browser..."
|
||||
cat > .mozconfig ../mozconfig
|
||||
./mach build
|
||||
fi
|
||||
|
||||
echo "Building symbol archive..."
|
||||
./mach buildsymbols
|
||||
|
||||
echo "Packaging browser with locales..."
|
||||
./mach package
|
||||
./mach package-multi-locale --locales ar cs da de el en-US en-GB es-ES fr hu id it ja ko lt nl nn-NO pl pt-BR pt-PT ru sv-SE th tr uk zh-CN zh-TW
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "${srcdir}/${pkgname}"
|
||||
cd firedragon-v"${_pkgver}" || exit
|
||||
|
||||
install -Ddvm755 "${pkgdir}/usr/lib/${pkgname}"
|
||||
cp -rvf "${srcdir}/firedragon/." "${pkgdir}/usr/lib/${pkgname}"
|
||||
cp -rvf "obj/dist/firedragon/." "${pkgdir}/usr/lib/${pkgname}"
|
||||
|
||||
install -Ddvm755 "${pkgdir}/usr/bin"
|
||||
ln -srfv "$pkgdir/usr/lib/$pkgname/${pkgname%-*}" "$pkgdir/usr/bin/${pkgname%-*}"
|
||||
ln -srfv "$pkgdir/usr/lib/${pkgname}/${pkgname}" "$pkgdir/usr/bin/${pkgname}"
|
||||
|
||||
rm "${pkgdir}/usr/lib/${pkgname}/pingsender"
|
||||
|
||||
local vendorjs="${pkgdir}/usr/lib/${pkgname}/browser/defaults/preferences/vendor.js"
|
||||
install -Dvm644 /dev/stdin "${vendorjs}" << END
|
||||
@ -112,14 +355,17 @@ END
|
||||
|
||||
# Application icons
|
||||
for i in 16 32 48 64 128; do
|
||||
install -Dvm644 browser/chrome/icons/default/default$i.png "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${pkgname}.png"
|
||||
install -Dvm644 browser/branding/firedragon/default$i.png \
|
||||
"${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${pkgname}.png"
|
||||
done
|
||||
install -Dvm644 browser/branding/firedragon/content/about-logo.png \
|
||||
"${pkgdir}/usr/share/icons/hicolor/192x192/apps/${pkgname}.png"
|
||||
|
||||
# Replace duplicate binary with wrapper
|
||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=658850
|
||||
ln -srfv "$pkgdir/usr/bin/$pkgname" "$pkgdir/usr/lib/$pkgname/${pkgname%-*}-bin"
|
||||
|
||||
# All the needed configuration files
|
||||
install -Dvm644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
|
||||
install -Dvm644 "${srcdir}/${pkgname}.psd" "${pkgdir}/usr/share/psd/browsers/${pkgname}"
|
||||
install -Dvm644 "../${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
|
||||
install -Dvm644 "${srcdir}/firedragon.psd" "${pkgdir}/usr/share/psd/browsers/firedragon"
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user