1
0
mirror of https://aur.archlinux.org/firedragon.git synced 2025-09-13 13:26:17 +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/2006638620.
This commit is contained in:
GitLab CI
2025-08-27 12:27:51 +00:00
parent eda8250553
commit 39471503c2
2 changed files with 104 additions and 161 deletions

View File

@@ -1,11 +1,14 @@
pkgbase = firedragon
pkgdesc = Floorp fork build using custom branding and settings
pkgver = 11.30.0_1
pkgrel = 2
pkgver = 12.1.1
pkgrel = 1
epoch = 1
url = https://firedragon.garudalinux.org
arch = x86_64
arch = aarch64
license = MPL2
makedepends = deno
makedepends = rsync
makedepends = cbindgen
makedepends = clang
makedepends = diffutils
@@ -18,7 +21,6 @@ pkgbase = firedragon
makedepends = lld
makedepends = llvm
makedepends = mesa
makedepends = mold
makedepends = nasm
makedepends = nodejs
makedepends = python
@@ -37,16 +39,12 @@ pkgbase = firedragon
depends = dbus-glib
depends = ffmpeg
depends = gtk3
depends = libevent
depends = libjpeg
depends = libvpx
depends = libwebp
depends = libpulse
depends = libxss
depends = libxt
depends = mime-types
depends = nss
depends = ttf-font
depends = zlib
optdepends = hunspell-dictionary: Spell checking
optdepends = libnotify: Notification integration
optdepends = networkmanager: Location detection via available WiFi networks
@@ -56,7 +54,6 @@ pkgbase = firedragon
optdepends = speech-dispatcher: Text-to-Speech
optdepends = whoogle: Searching the web using a locally running Whoogle instance
optdepends = xdg-desktop-portal: Screensharing with Wayland
replaces = firedragon-next
options = !debug
options = !emptydirs
options = !lto
@@ -64,11 +61,9 @@ pkgbase = firedragon
options = !strip
backup = usr/lib/firedragon/firedragon.cfg
backup = usr/lib/firedragon/distribution/policies.json
source = https://gitlab.com/garuda-linux/firedragon/builder/-/releases/v11.30.0-1/downloads/firedragon-v11.30.0-1.source.tar.zst
source = https://gitlab.com/garuda-linux/firedragon/settings/-/raw/master/firedragon.psd
source = https://gitlab.com/garuda-linux/firedragon/settings/-/raw/master/firedragon.desktop
sha256sums = eae7cc8a030c5a2f4186473cc93f4669acec197697fdefcce70c40ff34f79cc3
source = firedragon-source-v12.1.1.tar.zst::https://gitlab.com/garuda-linux/firedragon/firedragon12/-/releases/v12.1.1/downloads/firedragon-source.tar.zst
source = firedragon.psd::https://github.com/stefanwimmer128/profile-sync-daemon/raw/refs/heads/firedragon/contrib/firedragon
sha256sums = 1dbb74d2f3b6bbe2fe2a6fab364ad2330c7b358fc5dd985ea8afcbae4640e5ed
sha256sums = 61355930cc59813e7e610ffdab8a01e32be980fffe1dfd8f9654b8f8f9f7fdc0
sha256sums = 53d3e743f3750522318a786befa196237892c93f20571443fdf82a480e7f0560
pkgname = firedragon

156
PKGBUILD
View File

@@ -8,32 +8,30 @@
# Profile with xvfb-run, if possible
: ${_build_pgo_xvfb:=false}
_pkgver=11.30.0-1
_pkgver=12.1.1
pkgname=firedragon
_pkgname=FireDragon
pkgver=${_pkgver//-/_}
pkgrel=2
pkgrel=1
epoch=1
pkgdesc="Floorp fork build using custom branding and settings"
url='https://firedragon.garudalinux.org'
arch=('x86_64')
arch=('x86_64' 'aarch64')
license=('MPL2')
depends=(dbus
dbus-glib
ffmpeg
gtk3
libevent
libjpeg
libvpx
libwebp
libpulse
libxss
libxt
mime-types
nss
ttf-font
zlib)
makedepends=(cbindgen
ttf-font)
makedepends=(deno
rsync
cbindgen
clang
diffutils
dump_syms
@@ -45,7 +43,6 @@ makedepends=(cbindgen
lld
llvm
mesa
mold
nasm
nodejs
python
@@ -67,7 +64,6 @@ optdepends=('hunspell-dictionary: Spell checking'
'speech-dispatcher: Text-to-Speech'
'whoogle: Searching the web using a locally running Whoogle instance'
'xdg-desktop-portal: Screensharing with Wayland')
replaces=(firedragon-next)
options=(!debug
!emptydirs
!lto
@@ -75,12 +71,10 @@ options=(!debug
!strip)
backup=("usr/lib/${pkgname}/${pkgname}.cfg"
"usr/lib/${pkgname}/distribution/policies.json")
source=(https://gitlab.com/garuda-linux/firedragon/builder/-/releases/v${_pkgver}/downloads/firedragon-v${_pkgver}.source.tar.zst
https://gitlab.com/garuda-linux/firedragon/settings/-/raw/master/firedragon.psd
https://gitlab.com/garuda-linux/firedragon/settings/-/raw/master/firedragon.desktop)
sha256sums=('eae7cc8a030c5a2f4186473cc93f4669acec197697fdefcce70c40ff34f79cc3'
'61355930cc59813e7e610ffdab8a01e32be980fffe1dfd8f9654b8f8f9f7fdc0'
'53d3e743f3750522318a786befa196237892c93f20571443fdf82a480e7f0560')
source=(firedragon-source-v"$_pkgver".tar.zst::https://gitlab.com/garuda-linux/firedragon/firedragon12/-/releases/v"$_pkgver"/downloads/firedragon-source.tar.zst
firedragon.psd::https://github.com/stefanwimmer128/profile-sync-daemon/raw/refs/heads/firedragon/contrib/firedragon)
sha256sums=('1dbb74d2f3b6bbe2fe2a6fab364ad2330c7b358fc5dd985ea8afcbae4640e5ed'
'61355930cc59813e7e610ffdab8a01e32be980fffe1dfd8f9654b8f8f9f7fdc0')
# Select the method of profiling
if [[ "${_build_pgo::1}" == "t" ]]; then
@@ -91,85 +85,41 @@ if [[ "${_build_pgo::1}" == "t" ]]; then
fi
fi
_deno() {
pushd "${srcdir}/firedragon-source-v${_pkgver}/firedragon" > /dev/null || return
DENO_DIR="${srcdir}/deno" deno "$@"
popd > /dev/null || return
}
prepare() {
rm -rf "${srcdir}/mozbuild"
mkdir "${srcdir}/mozbuild"
cd firedragon-v"${_pkgver}" || exit
cd firedragon-source-v"${_pkgver}" || exit
_deno install --allow-scripts --frozen
_target="$(_deno task build --get-target)"
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
mk_add_options MOZ_OBJDIR=${PWD@Q}/obj
. "\$topsrcdir/firedragon/gecko/mozconfigs/edition/firedragon-dr460nized.mozconfig"
. "\$topsrcdir/firedragon/gecko/mozconfigs/target/$_target.mozconfig"
ac_add_options --with-noraneko-dist=firedragon/_dist/noraneko
ac_add_options --enable-firedragon-settings
# Build options
ac_add_options --enable-linker=lld
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=
mk_add_options MOZ_SERVICES_HEALTHREPORT=0
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-sandbox
ac_add_options --enable-strip
# Optimization
ac_add_options --enable-optimize=-O3
ac_add_options OPT_LEVEL="3"
ac_add_options RUSTC_OPT_LEVEL="3"
# Other
export AR=/usr/bin/llvm-ar
@@ -181,13 +131,21 @@ END
}
build() {
cd firedragon-v"${_pkgver}" || exit
cd firedragon-source-v"${_pkgver}" || exit
# Clean source directory from previous build attempts
./mach clobber
_deno task build --write-buildid2
NODE_ENV=production _deno task build --release-build-before
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=pip
export MOZBUILD_STATE_PATH="${srcdir}/mozbuild"
export MOZ_ENABLE_FULL_SYMBOLS=1
export MOZ_BUILD_DATE="$(date -u${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH} +%Y%m%d%H%M%S)"
export MOZ_NOSPAM=1
export MOZ_PROFILER_STARTUP=1 # Starts the profiler is started as early as possible during startup.
# Work around https://bugzilla.mozilla.org/show_bug.cgi?id=1969383
export RUST_MIN_STACK=16777216
# Fix DRI/zink issues during compilation
export LIBGL_ALWAYS_SOFTWARE=true
@@ -205,8 +163,8 @@ build() {
# Do 3-tier PGO
if [[ "${_build_pgo::1}" == "t" ]]; then
local _old_profdata="${SRCDEST:-$startdir}/merged.profdata"
local _old_jarlog="${SRCDEST:-$startdir}/jarlog"
local _old_profdata="$srcdir/merged.profdata"
local _old_jarlog="$srcdir/jarlog"
# Restore old profile
if [[ "${_build_pgo_reuse::1}" == "t" ]]; then
@@ -228,6 +186,8 @@ build() {
echo >> .mozconfig "ac_add_options --enable-profile-generate=cross"
./mach build
_deno task build --release-build-after
echo "Profiling instrumented browser..."
./mach package
@@ -243,15 +203,16 @@ build() {
)
fi
LLVM_PROFDATA=llvm-profdata JARLOG_FILE=${PWD@Q}/jarlog \
LLVM_PROFDATA=llvm-profdata JARLOG_FILE="$PWD"/jarlog \
"${_headless_run[@]}" -- ./mach python build/pgo/profileserver.py
echo "Removing instrumented browser..."
./mach clobber
./mach clobber objdir
fi
echo "Building optimized browser..."
cat > .mozconfig ../mozconfig
echo >> .mozconfig "ac_add_options --enable-lto=cross,full"
if [[ -s merged.profdata ]]; then
stat -c "Profile data found (%s bytes)" merged.profdata
@@ -278,28 +239,21 @@ build() {
else
echo "Building browser..."
cat > .mozconfig ../mozconfig
echo >> .mozconfig "ac_add_options --enable-lto=cross,full"
./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
_deno task build --release-build-after
}
package() {
cd firedragon-v"${_pkgver}" || exit
cd firedragon-source-v"${_pkgver}" || exit
install -Ddvm755 "${pkgdir}/usr/lib/${pkgname}"
cp -rvf "obj/dist/firedragon/." "${pkgdir}/usr/lib/${pkgname}"
DESTDIR="$pkgdir" ./mach install
install -Ddvm755 "${pkgdir}/usr/bin"
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
// Use LANG environment variable to choose locale
@@ -331,12 +285,6 @@ app.distributor.channel=${pkgname}
app.partner.garudalinux=garudalinux
END
# Use system certificates
local nssckbi="${pkgdir}/usr/lib/${pkgname}/libnssckbi.so"
if [[ -e "${nssckbi}" ]]; then
ln -srfv "${pkgdir}/usr/lib/libnssckbi.so" "${nssckbi}"
fi
# Make native messaging work
ln -s "/usr/lib/mozilla/native-messaging-hosts" "${pkgdir}/usr/lib/${pkgname}/native-messaging-hosts"
@@ -363,6 +311,6 @@ END
ln -srfv "$pkgdir/usr/bin/$pkgname" "$pkgdir/usr/lib/$pkgname/${pkgname%-*}-bin"
# All the needed configuration files
install -Dvm644 "../${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
install -Dvm644 "firedragon/assets/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
install -Dvm644 "${srcdir}/firedragon.psd" "${pkgdir}/usr/share/psd/browsers/firedragon"
}