mirror of
				https://aur.archlinux.org/firedragon.git
				synced 2025-11-04 07:56:59 +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/1289394492.
This commit is contained in:
		
							
								
								
									
										49
									
								
								.SRCINFO
									
									
									
									
									
								
							
							
						
						
									
										49
									
								
								.SRCINFO
									
									
									
									
									
								
							@@ -1,49 +1,18 @@
 | 
				
			|||||||
pkgbase = firedragon
 | 
					pkgbase = firedragon
 | 
				
			||||||
	pkgdesc = Floorp fork build using custom branding and settings
 | 
						pkgdesc = Floorp fork build using custom branding and settings
 | 
				
			||||||
	pkgver = 11.12.2
 | 
						pkgver = 11.12.2
 | 
				
			||||||
	pkgrel = 1
 | 
						pkgrel = 2.1
 | 
				
			||||||
	epoch = 1
 | 
						epoch = 1
 | 
				
			||||||
	url = https://garudalinux.org
 | 
						url = https://garudalinux.org
 | 
				
			||||||
	install = firedragon.install
 | 
						install = firedragon.install
 | 
				
			||||||
	arch = x86_64
 | 
						arch = x86_64
 | 
				
			||||||
	license = MPL2
 | 
						license = MPL2
 | 
				
			||||||
	license = Floorp Shared Source License
 | 
						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
 | 
				
			||||||
	depends = dbus-glib
 | 
						depends = dbus-glib
 | 
				
			||||||
	depends = ffmpeg
 | 
						depends = ffmpeg
 | 
				
			||||||
	depends = gtk3
 | 
						depends = gtk3
 | 
				
			||||||
	depends = libevent
 | 
					 | 
				
			||||||
	depends = libjpeg
 | 
					 | 
				
			||||||
	depends = libpulse
 | 
						depends = libpulse
 | 
				
			||||||
	depends = libvpx
 | 
					 | 
				
			||||||
	depends = libwebp
 | 
					 | 
				
			||||||
	depends = libxss
 | 
						depends = libxss
 | 
				
			||||||
	depends = libxt
 | 
						depends = libxt
 | 
				
			||||||
	depends = mime-types
 | 
						depends = mime-types
 | 
				
			||||||
@@ -68,19 +37,11 @@ pkgbase = firedragon
 | 
				
			|||||||
	options = !strip
 | 
						options = !strip
 | 
				
			||||||
	backup = usr/lib/firedragon/firedragon.cfg
 | 
						backup = usr/lib/firedragon/firedragon.cfg
 | 
				
			||||||
	backup = usr/lib/firedragon/distribution/policies.json
 | 
						backup = usr/lib/firedragon/distribution/policies.json
 | 
				
			||||||
	source = https://github.com/Floorp-Projects/Floorp/archive/refs/tags/v11.12.2.tar.gz
 | 
						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 = floorp-core::git+https://github.com/Floorp-Projects/Floorp-core#commit=1ac82bbf62fe656f02aea7c9edb921a8c18b1fe1
 | 
						source = https://gitlab.com/garuda-linux/firedragon/settings/-/raw/master/firedragon.psd
 | 
				
			||||||
	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 = firedragon.desktop
 | 
						source = firedragon.desktop
 | 
				
			||||||
	sha256sums = 6fdd272a75fb04df23706c8b693c46c0400ef072bb3b9a4c1f6dcefb11652e5d
 | 
						sha256sums = c90102d90af653e1051aee7c064a54c09132a0aba3fe7abee8068c23adae5444
 | 
				
			||||||
	sha256sums = fe330c900317a1a798932dd9d197e38e44ad2a8cd8f19d9a8a20b9e60e60c112
 | 
						sha256sums = 61355930cc59813e7e610ffdab8a01e32be980fffe1dfd8f9654b8f8f9f7fdc0
 | 
				
			||||||
	sha256sums = 5f9a31c9a7166328ac364b9172e3b40bff822f142976fa009de5ada65a7dd938
 | 
					 | 
				
			||||||
	sha256sums = dc846923451a747a4d1c4efd9a325db1f4b24e19dfefa277deefc346c6f5788c
 | 
					 | 
				
			||||||
	sha256sums = SKIP
 | 
					 | 
				
			||||||
	sha256sums = SKIP
 | 
					 | 
				
			||||||
	sha256sums = 53d3e743f3750522318a786befa196237892c93f20571443fdf82a480e7f0560
 | 
						sha256sums = 53d3e743f3750522318a786befa196237892c93f20571443fdf82a480e7f0560
 | 
				
			||||||
 | 
					
 | 
				
			||||||
pkgname = firedragon
 | 
					pkgname = firedragon
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										333
									
								
								PKGBUILD
									
									
									
									
									
								
							
							
						
						
									
										333
									
								
								PKGBUILD
									
									
									
									
									
								
							@@ -1,19 +1,13 @@
 | 
				
			|||||||
# Maintainer: dr460nf1r3 <dr460nf1r3 at garudalinux dot org>
 | 
					# Maintainer: dr460nf1r3 <dr460nf1r3 at garudalinux dot org>
 | 
				
			||||||
# Co-Maintainer: FGD
 | 
					# Co-Maintainer: FGD
 | 
				
			||||||
 | 
					# Co-Maintainer: stefanwimmer128 <info at stefanwimmer128 dot xyz>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Three-stage profile-guided optimization
 | 
					_pkgver=11.12.2-2
 | 
				
			||||||
: ${_build_pgo:=true}
 | 
					_pkgrel=1
 | 
				
			||||||
 | 
					 | 
				
			||||||
# Profile with xvfb-run, if possible
 | 
					 | 
				
			||||||
: ${_build_pgo_xvfb:=false}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
pkgname=firedragon
 | 
					pkgname=firedragon
 | 
				
			||||||
_pkgname=FireDragon
 | 
					pkgver=${_pkgver%-*}
 | 
				
			||||||
pkgver=11.12.2
 | 
					pkgrel=${_pkgver#*-}.${_pkgrel}
 | 
				
			||||||
_floorp_core_commit="1ac82bbf62fe656f02aea7c9edb921a8c18b1fe1"
 | 
					 | 
				
			||||||
_floorp_l10n_commit="b7a652ebf828e1c695a19903a568505d818463d2"
 | 
					 | 
				
			||||||
_floorp_private_commit="f81d5691d20a51be32d671fc9d0058de7255f86a"
 | 
					 | 
				
			||||||
pkgrel=1
 | 
					 | 
				
			||||||
epoch=1
 | 
					epoch=1
 | 
				
			||||||
pkgdesc="Floorp fork build using custom branding and settings"
 | 
					pkgdesc="Floorp fork build using custom branding and settings"
 | 
				
			||||||
url='https://garudalinux.org'
 | 
					url='https://garudalinux.org'
 | 
				
			||||||
@@ -23,11 +17,7 @@ depends=(dbus
 | 
				
			|||||||
  dbus-glib
 | 
					  dbus-glib
 | 
				
			||||||
  ffmpeg
 | 
					  ffmpeg
 | 
				
			||||||
  gtk3
 | 
					  gtk3
 | 
				
			||||||
  libevent
 | 
					 | 
				
			||||||
  libjpeg
 | 
					 | 
				
			||||||
  libpulse
 | 
					  libpulse
 | 
				
			||||||
  libvpx
 | 
					 | 
				
			||||||
  libwebp
 | 
					 | 
				
			||||||
  libxss
 | 
					  libxss
 | 
				
			||||||
  libxt
 | 
					  libxt
 | 
				
			||||||
  mime-types
 | 
					  mime-types
 | 
				
			||||||
@@ -35,31 +25,7 @@ depends=(dbus
 | 
				
			|||||||
  pipewire
 | 
					  pipewire
 | 
				
			||||||
  ttf-font
 | 
					  ttf-font
 | 
				
			||||||
  zlib)
 | 
					  zlib)
 | 
				
			||||||
makedepends=(cbindgen
 | 
					makedepends=()
 | 
				
			||||||
  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'
 | 
					optdepends=('hunspell-dictionary: Spell checking'
 | 
				
			||||||
  'libnotify: Notification integration'
 | 
					  'libnotify: Notification integration'
 | 
				
			||||||
  'networkmanager: Location detection via available WiFi networks'
 | 
					  'networkmanager: Location detection via available WiFi networks'
 | 
				
			||||||
@@ -77,279 +43,22 @@ options=(!debug
 | 
				
			|||||||
  !strip)
 | 
					  !strip)
 | 
				
			||||||
backup=("usr/lib/${pkgname}/${pkgname}.cfg"
 | 
					backup=("usr/lib/${pkgname}/${pkgname}.cfg"
 | 
				
			||||||
  "usr/lib/${pkgname}/distribution/policies.json")
 | 
					  "usr/lib/${pkgname}/distribution/policies.json")
 | 
				
			||||||
source=(https://github.com/Floorp-Projects/Floorp/archive/refs/tags/v"${pkgver}".tar.gz
 | 
					source=(https://gitlab.com/api/v4/projects/55893651/packages/generic/firedragon/${_pkgver}/firedragon-v${_pkgver}.linux-x86_64.tar.bz2
 | 
				
			||||||
  "floorp-core::git+https://github.com/Floorp-Projects/Floorp-core#commit=$_floorp_core_commit"
 | 
					  https://gitlab.com/garuda-linux/firedragon/settings/-/raw/master/firedragon.psd
 | 
				
			||||||
  "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"
 | 
					 | 
				
			||||||
  "${pkgname}.desktop")
 | 
					  "${pkgname}.desktop")
 | 
				
			||||||
sha256sums=('6fdd272a75fb04df23706c8b693c46c0400ef072bb3b9a4c1f6dcefb11652e5d'
 | 
					sha256sums=('c90102d90af653e1051aee7c064a54c09132a0aba3fe7abee8068c23adae5444'
 | 
				
			||||||
            'fe330c900317a1a798932dd9d197e38e44ad2a8cd8f19d9a8a20b9e60e60c112'
 | 
					            '61355930cc59813e7e610ffdab8a01e32be980fffe1dfd8f9654b8f8f9f7fdc0'
 | 
				
			||||||
            '5f9a31c9a7166328ac364b9172e3b40bff822f142976fa009de5ada65a7dd938'
 | 
					 | 
				
			||||||
            'dc846923451a747a4d1c4efd9a325db1f4b24e19dfefa277deefc346c6f5788c'
 | 
					 | 
				
			||||||
            'SKIP'
 | 
					 | 
				
			||||||
            'SKIP'
 | 
					 | 
				
			||||||
            '53d3e743f3750522318a786befa196237892c93f20571443fdf82a480e7f0560')
 | 
					            '53d3e743f3750522318a786befa196237892c93f20571443fdf82a480e7f0560')
 | 
				
			||||||
install="${pkgname}.install"
 | 
					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() {
 | 
					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"
 | 
					  local vendorjs="${pkgdir}/usr/lib/${pkgname}/browser/defaults/preferences/vendor.js"
 | 
				
			||||||
  install -Dvm644 /dev/stdin "${vendorjs}" << END
 | 
					  install -Dvm644 /dev/stdin "${vendorjs}" << END
 | 
				
			||||||
@@ -403,20 +112,14 @@ END
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  # Application icons
 | 
					  # Application icons
 | 
				
			||||||
  for i in 16 32 48 64 128; do
 | 
					  for i in 16 32 48 64 128; do
 | 
				
			||||||
    install -Dvm644 browser/branding/firedragon/default$i.png \
 | 
					    install -Dvm644 browser/chrome/icons/default/default$i.png "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${pkgname}.png"
 | 
				
			||||||
      "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${pkgname}.png"
 | 
					 | 
				
			||||||
  done
 | 
					  done
 | 
				
			||||||
  install -Dvm644 browser/branding/firedragon/content/about-logo.png \
 | 
					 | 
				
			||||||
    "${pkgdir}/usr/share/icons/hicolor/192x192/apps/${pkgname}.png"
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # Replace duplicate binary with wrapper
 | 
					  # Replace duplicate binary with wrapper
 | 
				
			||||||
  # https://bugzilla.mozilla.org/show_bug.cgi?id=658850
 | 
					  # https://bugzilla.mozilla.org/show_bug.cgi?id=658850
 | 
				
			||||||
  ln -srfv "$pkgdir/usr/bin/$pkgname" "$pkgdir/usr/lib/$pkgname/${pkgname%-*}-bin"
 | 
					  ln -srfv "$pkgdir/usr/bin/$pkgname" "$pkgdir/usr/lib/$pkgname/${pkgname%-*}-bin"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # All the needed configuration files
 | 
					  # All the needed configuration files
 | 
				
			||||||
  install -Dvm644 "../${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
 | 
					  install -Dvm644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
 | 
				
			||||||
  install -Dvm644 "${srcdir}/settings/firedragon.cfg" "${pkgdir}/usr/lib/${pkgname}/firedragon.cfg"
 | 
					  install -Dvm644 "${srcdir}/${pkgname}.psd" "${pkgdir}/usr/share/psd/browsers/${pkgname}"
 | 
				
			||||||
  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"
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user