summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorGitLab CI2024-05-14 00:58:25 +0000
committerGitLab CI2024-05-14 00:58:25 +0000
commit3c39aad492651831dd1fcb59682569cc0fb016b8 (patch)
tree90e8512940adac754e985bbefc3fd078b3d0807c
parentcccced1025f49220ca83f8b302dc5fca9ab662e5 (diff)
downloadaur-3c39aad492651831dd1fcb59682569cc0fb016b8.tar.gz
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/1289394492.
-rw-r--r--.SRCINFO49
-rw-r--r--PKGBUILD333
2 files changed, 23 insertions, 359 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 569e25930b56..97171917f3c6 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,49 +1,18 @@
pkgbase = firedragon
pkgdesc = Floorp fork build using custom branding and settings
pkgver = 11.12.2
- pkgrel = 1
+ pkgrel = 2.1
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
@@ -68,19 +37,11 @@ pkgbase = firedragon
options = !strip
backup = usr/lib/firedragon/firedragon.cfg
backup = usr/lib/firedragon/distribution/policies.json
- source = https://github.com/Floorp-Projects/Floorp/archive/refs/tags/v11.12.2.tar.gz
- source = floorp-core::git+https://github.com/Floorp-Projects/Floorp-core#commit=1ac82bbf62fe656f02aea7c9edb921a8c18b1fe1
- source = floorp-l10n-central::git+https://github.com/Floorp-Projects/Unified-l10n-central#commit=b7a652ebf828e1c695a19903a568505d818463d2
- source = floorp-private::git+https://github.com/floorp-Projects/Floorp-private-components#commit=f81d5691d20a51be32d671fc9d0058de7255f86a
- source = common::git+https://gitlab.com/garuda-linux/firedragon/common.git
- source = settings::git+https://gitlab.com/garuda-linux/firedragon/settings.git
+ 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/garuda-linux/firedragon/settings/-/raw/master/firedragon.psd
source = firedragon.desktop
- sha256sums = 6fdd272a75fb04df23706c8b693c46c0400ef072bb3b9a4c1f6dcefb11652e5d
- sha256sums = fe330c900317a1a798932dd9d197e38e44ad2a8cd8f19d9a8a20b9e60e60c112
- sha256sums = 5f9a31c9a7166328ac364b9172e3b40bff822f142976fa009de5ada65a7dd938
- sha256sums = dc846923451a747a4d1c4efd9a325db1f4b24e19dfefa277deefc346c6f5788c
- sha256sums = SKIP
- sha256sums = SKIP
+ sha256sums = c90102d90af653e1051aee7c064a54c09132a0aba3fe7abee8068c23adae5444
+ sha256sums = 61355930cc59813e7e610ffdab8a01e32be980fffe1dfd8f9654b8f8f9f7fdc0
sha256sums = 53d3e743f3750522318a786befa196237892c93f20571443fdf82a480e7f0560
pkgname = firedragon
diff --git a/PKGBUILD b/PKGBUILD
index 2379c555092b..f5c8323971fb 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,19 +1,13 @@
# Maintainer: dr460nf1r3 <dr460nf1r3 at garudalinux dot org>
# 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
pkgname=firedragon
-_pkgname=FireDragon
-pkgver=11.12.2
-_floorp_core_commit="1ac82bbf62fe656f02aea7c9edb921a8c18b1fe1"
-_floorp_l10n_commit="b7a652ebf828e1c695a19903a568505d818463d2"
-_floorp_private_commit="f81d5691d20a51be32d671fc9d0058de7255f86a"
-pkgrel=1
+pkgver=${_pkgver%-*}
+pkgrel=${_pkgver#*-}.${_pkgrel}
epoch=1
pkgdesc="Floorp fork build using custom branding and settings"
url='https://garudalinux.org'
@@ -23,11 +17,7 @@ depends=(dbus
dbus-glib
ffmpeg
gtk3
- libevent
- libjpeg
libpulse
- libvpx
- libwebp
libxss
libxt
mime-types
@@ -35,31 +25,7 @@ depends=(dbus
pipewire
ttf-font
zlib)
-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)
+makedepends=()
optdepends=('hunspell-dictionary: Spell checking'
'libnotify: Notification integration'
'networkmanager: Location detection via available WiFi networks'
@@ -77,279 +43,22 @@ options=(!debug
!strip)
backup=("usr/lib/${pkgname}/${pkgname}.cfg"
"usr/lib/${pkgname}/distribution/policies.json")
-source=(https://github.com/Floorp-Projects/Floorp/archive/refs/tags/v"${pkgver}".tar.gz
- "floorp-core::git+https://github.com/Floorp-Projects/Floorp-core#commit=$_floorp_core_commit"
- "floorp-l10n-central::git+https://github.com/Floorp-Projects/Unified-l10n-central#commit=$_floorp_l10n_commit"
- "floorp-private::git+https://github.com/floorp-Projects/Floorp-private-components#commit=$_floorp_private_commit"
- "common::git+https://gitlab.com/garuda-linux/firedragon/common.git"
- "settings::git+https://gitlab.com/garuda-linux/firedragon/settings.git"
+source=(https://gitlab.com/api/v4/projects/55893651/packages/generic/firedragon/${_pkgver}/firedragon-v${_pkgver}.linux-x86_64.tar.bz2
+ https://gitlab.com/garuda-linux/firedragon/settings/-/raw/master/firedragon.psd
"${pkgname}.desktop")
-sha256sums=('6fdd272a75fb04df23706c8b693c46c0400ef072bb3b9a4c1f6dcefb11652e5d'
- 'fe330c900317a1a798932dd9d197e38e44ad2a8cd8f19d9a8a20b9e60e60c112'
- '5f9a31c9a7166328ac364b9172e3b40bff822f142976fa009de5ada65a7dd938'
- 'dc846923451a747a4d1c4efd9a325db1f4b24e19dfefa277deefc346c6f5788c'
- 'SKIP'
- 'SKIP'
+sha256sums=('c90102d90af653e1051aee7c064a54c09132a0aba3fe7abee8068c23adae5444'
+ '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() {
- # Floorp's shenanigan to make the build work without cloning the whole
- # git source (puts submodules' content in place)
- mv -f "${srcdir}"/floorp-core/* ./Floorp-"${pkgver}"/floorp
- mv -f "${srcdir}"/floorp-private/* ./Floorp-"${pkgver}"/floorp/Floorp-private-components
- mv -f "${srcdir}"/floorp-l10n-central/* ./Floorp-"${pkgver}"/floorp/browser/locales/l10n-central
-
- rm -rf "${srcdir}/mozbuild"
- mkdir "${srcdir}/mozbuild"
-
- cd Floorp-"${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
-
- local _patches_dir
- _patches_dir="${srcdir}/common/patches"
-
- local _floorp_patches_dir
- _floorp_patches_dir="${srcdir}/common/patches/floorp/"
-
- _patch() {
- printf 'Patching %s ...\n' "$1"
- patch -Np1 -i "$1"
- }
-
- # Remove some pre-installed addons that might be questionable
- _patch "${_floorp_patches_dir}"/remove_addons.patch
-
- # Stop some undesired requests (https://gitlab.com/librewolf-community/browser/common/-/issues/10)
- _patch "${_floorp_patches_dir}"/sed-patches/stop-undesired-requests.patch
-
- # Assorted patches
- _patch "${_floorp_patches_dir}"/urlbarprovider-interventions.patch
-
- # Allow uBlockOrigin to run in private mode by default, without user intervention
- _patch "${_floorp_patches_dir}"/allow-ubo-private-mode.patch
-
- # Add custom uBO assets (on first launch only)
- _patch "${_floorp_patches_dir}"/custom-ubo-assets-bootstrap-location.patch
-
- # Allows hiding the password manager (from the lw pref pane) / via a pref
- _patch "${_floorp_patches_dir}"/hide-passwordmgr.patch
-
- # Add Firedragon Preferences Pane
- _patch "${_patches_dir}"/pref-pane/pref-pane-small.patch
- cp "${_patches_dir}/pref-pane/category-firedragon.svg" browser/themes/shared/preferences/category-firedragon.svg
- cp "${_patches_dir}/pref-pane/firedragon.css" browser/themes/shared/preferences/firedragon.css
- cp "${_patches_dir}/pref-pane/firedragon.inc.xhtml" browser/components/preferences/firedragon.inc.xhtml
- cp "${_patches_dir}/pref-pane/firedragon.js" browser/components/preferences/firedragon.js
- cat < "${_patches_dir}/pref-pane/preferences.ftl" >> browser/locales/en-US/browser/preferences/preferences.ftl
-
- # Update privacy preferences -- DISABLED to test UI changes and allow user to easily change the setting
- # _patch "${_patches_dir}"/custom/privacy-preferences.patch
-
- rm -f "${srcdir}"/common/source_files/mozconfig
- cp -r "${srcdir}"/common/source_files/* ./
-}
-
-build() {
- cd Floorp-"${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
-}
-
package() {
- cd Floorp-"${pkgver}" || exit
+ cd "${srcdir}/${pkgname}"
- DESTDIR="${pkgdir}" ./mach install
+ install -Ddvm755 "${pkgdir}/usr/lib/${pkgname}"
+ cp -rvf "${srcdir}/firedragon/." "${pkgdir}/usr/lib/${pkgname}"
- rm "${pkgdir}/usr/lib/${pkgname}/pingsender"
+ install -Ddvm755 "${pkgdir}/usr/bin"
+ ln -srfv "$pkgdir/usr/lib/$pkgname/${pkgname%-*}" "$pkgdir/usr/bin/${pkgname%-*}"
local vendorjs="${pkgdir}/usr/lib/${pkgname}/browser/defaults/preferences/vendor.js"
install -Dvm644 /dev/stdin "${vendorjs}" << END
@@ -403,20 +112,14 @@ END
# Application icons
for i in 16 32 48 64 128; do
- install -Dvm644 browser/branding/firedragon/default$i.png \
- "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${pkgname}.png"
+ install -Dvm644 browser/chrome/icons/default/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 "../${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
- install -Dvm644 "${srcdir}/settings/firedragon.cfg" "${pkgdir}/usr/lib/${pkgname}/firedragon.cfg"
- install -Dvm644 "${srcdir}/settings/firedragon.psd" "${pkgdir}/usr/share/psd/browsers/firedragon"
- install -Dvm644 "${srcdir}/settings/defaults/pref/local-settings.js" "${pkgdir}/usr/lib/${pkgname}/defaults/pref/local-settings.js"
- install -Dvm644 "${srcdir}/settings/distribution/policies.json" "${pkgdir}/usr/lib/${pkgname}/distribution/policies.json"
+ install -Dvm644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
+ install -Dvm644 "${srcdir}/${pkgname}.psd" "${pkgdir}/usr/share/psd/browsers/${pkgname}"
}