firedragon-next

maintainer stefanwimmer128 · 0 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The package builds from source hosted on GitLab, a standard forge; the non-whitelisted host is the project's own release endpoint, and the source is verified via checksum, making this a normal AUR build with low risk.

Triggered rules

LOW AI review downgraded a static finding llm_review

The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package builds from source hosted on GitLab, a standard forge; the non-whitelisted host is the project's own release endpoint, and the source is verified via checksum, making this a normal AUR build with low risk.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM source=() URL on a non-standard host source_untrusted_domain

One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).

  • PKGBUILD:91 https://dev.gentoo.org/~juippis/mozilla/patchsets/$_gentoo

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Stefan Wimmer <info@stefanwimmer128.xyz>
2
3_pkgname=firedragon
4__pkgname=$_pkgname
5_rdns=org.garudalinux.$__pkgname
6_pkgver=13.0.0-rc.27
7_branding=dr460nized
8_gentoo=firefox-153-patches-01.tar.xz
9_gentoo_exclude=(0015-bgo-940031-wasm-support.patch)
10
11pkgname=$__pkgname-next
12pkgver=${_pkgver//-/_}
13pkgrel=1
14pkgdesc="FireDragon is a cross-platform, feature-rich and privacy-focused web browser"
15url="https://gitlab.com/garuda-linux/firedragon/firedragon13"
16arch=(x86_64 aarch64)
17license=(MPL-2.0)
18depends=(
19 alsa-lib
20 at-spi2-core
21 bash
22 cairo
23 dbus
24 ffmpeg
25 fontconfig
26 freetype2
27 gdk-pixbuf2
28 glib2
29 glibc
30 gtk3
31 hicolor-icon-theme
32 libgcc
33 libpulse
34 libstdc++
35 libx11
36 libxcb
37 libxcomposite
38 libxdamage
39 libxext
40 libxfixes
41 libxrandr
42 libxss
43 libxt
44 mime-types
45 nspr
46 nss
47 pango
48 ttf-font
49)
50makedepends=(
51 cbindgen
52 clang
53 diffutils
54 imake
55 jack
56 lld
57 llvm
58 mesa
59 nasm
60 nodejs
61 onnxruntime
62 pnpm
63 python
64 rust
65 unzip
66 wasi-compiler-rt
67 wasi-libc
68 wasi-libc++
69 wasi-libc++abi
70 xorg-server-xvfb
71 yasm
72 zip
73)
74optdepends=(
75 'hunspell-en_US: Spell checking, American English'
76 'libnotify: Notification integration'
77 'networkmanager: Location detection via available WiFi networks'
78 'onnxruntime: Local machine learning features such as smart tab groups'
79 'speech-dispatcher: Text-to-Speech'
80 'xdg-desktop-portal: Screensharing with Wayland'
81)
82provides=($_pkgname)
83conflicts=($_pkgname)
84options=(
85 !emptydirs
86 !lto
87 !makeflags
88)
89source=(
90 $_pkgname-v$_pkgver.source.tar.xz::$url/-/releases/v$_pkgver/downloads/$_pkgname.source.tar.xz
91 https://dev.gentoo.org/~juippis/mozilla/patchsets/$_gentoo
92)
93sha256sums=('5520b0d0dbc80e96a81f4b4a859a4feccddea210c349d49dda3b7f5e264d5270'
94 '9dc3e9423eea9b8bf16cd7cc2545a539717e9b32c1e4242a332988ff0add923e')
95noextract=($_gentoo)
96
97prepare() {
98 mkdir -p mozbuild
99 cd $_pkgname-v$_pkgver
100
101 tar -Oxf "$srcdir/$_gentoo" $(printf -- '--exclude=%s' "${_gentoo_exclude[@]}") | patch -Nsp1
102
103 echo ". \"\$topsrcdir/browser/$_pkgname/mozconfig/edition/$_pkgname-$_branding.mozconfig\"" > ../mozconfig
104 export FIREDRAGON_EDITION=$_branding
105
106 if [ $CARCH = x86_64 ]; then
107 echo ". \"\$topsrcdir/browser/$_pkgname/mozconfig/target/linux-x64.mozconfig\"" >> ../mozconfig
108 export FIREDRAGON_TARGET=linux-x64
109 elif [ $CARCH = aarch64 ]; then
110 echo ". \"\$topsrcdir/browser/$_pkgname/mozconfig/target/linux-arm64.mozconfig\"" >> ../mozconfig
111 export FIREDRAGON_TARGET=linux-arm64
112 fi
113
114 pnpm -C browser/$_pkgname install --frozen-lockfile
115 pnpm -C browser/$_pkgname all:build
116
117 cat >> ../mozconfig <<END
118ac_add_options --enable-linker=lld
119ac_add_options --disable-bootstrap
120ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
121
122# System libraries
123ac_add_options --with-system-nspr
124ac_add_options --with-system-nss
125
126# Features
127ac_add_options --enable-jack
128ac_add_options --disable-updater
129END
130}
131
132build() {
133 cd $_pkgname-v$_pkgver
134
135 export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=pip
136 export MOZBUILD_STATE_PATH="$srcdir/mozbuild"
137 export MOZ_BUILD_DATE="$(date -u${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH} +%Y%m%d%H%M%S)"
138 export MOZ_NOSPAM=1
139
140 # malloc_usable_size is used in various parts of the codebase
141 CFLAGS="${CFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
142 CXXFLAGS="${CXXFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
143
144 # Breaks compilation since https://bugzilla.mozilla.org/show_bug.cgi?id=1896066
145 CFLAGS="${CFLAGS/-fexceptions/}"
146 CXXFLAGS="${CXXFLAGS/-fexceptions/}"
147
148 # LTO needs more open files
149 ulimit -n 4096
150
151 if [[ "${_build_pgo:-t}" == "t" ]]; then
152 # Do 3-tier PGO
153 echo "Building instrumented browser..."
154 cat >.mozconfig ../mozconfig - <<END
155ac_add_options --enable-profile-generate=cross
156END
157 ./mach build --priority normal
158
159 echo "Profiling instrumented browser..."
160 ./mach package
161 LLVM_PROFDATA=llvm-profdata JARLOG_FILE="$PWD/jarlog" \
162 dbus-run-session \
163 xvfb-run -s "-screen 0 1920x1080x24 -nolisten local" \
164 ./mach python build/pgo/profileserver.py
165
166 stat -c "Profile data found (%s bytes)" merged.profdata
167 test -s merged.profdata
168
169 stat -c "Jar log found (%s bytes)" jarlog
170 test -s jarlog
171
172 echo "Removing instrumented browser..."
173 ./mach clobber objdir
174
175 echo "Building optimized browser..."
176 cat >.mozconfig ../mozconfig - <<END
177ac_add_options --enable-lto=cross,full
178ac_add_options --enable-profile-use=cross
179ac_add_options --with-pgo-profile-path=${PWD@Q}/merged.profdata
180ac_add_options --with-pgo-jarlog=${PWD@Q}/jarlog
181END
182 else
183 cat >.mozconfig ../mozconfig
184 fi
185 ./mach build --priority normal
186
187 cat browser/locales/shipped-locales | xargs ./mach package-multi-locale --locales
188}
189
190package() {
191 cd $_pkgname-v$_pkgver
192
193 mkdir -p "$pkgdir/usr/lib"
194 tar -xvf obj/dist/"$(cat obj/dist/package_name.txt)" -C "$pkgdir/usr/lib"
195
196 local appdir="$pkgdir/usr/lib/$_pkgname"
197
198 install -Dvm644 /dev/stdin "$appdir/browser/defaults/preferences/vendor.js" <<END
199// Use LANG environment variable to choose locale
200pref("intl.locale.requested", "");
201
202// Use system-provided dictionaries
203pref("spellchecker.dictionary_path", "/usr/share/hunspell");
204
205// Disable default browser checking.
206pref("browser.shell.checkDefaultBrowser", false);
207
208// Don't disable extensions in the application directory
209pref("extensions.autoDisableScopes", 11);
210
211// Enable GNOME Shell search provider
212pref("browser.gnome-search-provider.enabled", true);
213END
214
215 install -Dvm644 /dev/stdin "$appdir/distribution/distribution.ini" <<END
216[Global]
217id=${pkgname}
218version=${pkgver}-${pkgrel}
219about=${pkgdesc}
220
221[Preferences]
222app.distributor=garudalinux
223app.distributor.channel=${pkgname}
224app.partner.garudalinux=garudalinux
225END
226
227 # Link up system ONNX runtime
228 ln -srv "$pkgdir/usr/lib/libonnxruntime.so" -t "$appdir"
229
230 # Install desktop icons and metadata
231 local i
232 for i in 16 22 24 32 48 64 128 256; do
233 install -Dvm644 "browser/$_pkgname/branding/$_branding/default$i.png" \
234 "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$_rdns.png"
235 done
236
237 install -Dvm644 browser/$_pkgname/assets/$_rdns.desktop -t "$pkgdir/usr/share/applications"
238 install -Dvm644 browser/$_pkgname/assets/$_rdns.metainfo.xml -t "$pkgdir/usr/share/metainfo"
239
240 # Install a wrapper to avoid confusion about binary path
241 install -Dvm755 /dev/stdin "$pkgdir/usr/bin/$_pkgname" <<END
242#!/bin/sh
243exec /usr/lib/$_pkgname/$_pkgname "\$@"
244END
245
246 # Replace duplicate binary with wrapper
247 # https://bugzilla.mozilla.org/show_bug.cgi?id=658850
248 ln -srfv "$pkgdir/usr/bin/$_pkgname" "$pkgdir/usr/lib/$_pkgname/$_pkgname-bin"
249
250 # Use system certificates
251 if [[ -e $appdir/libnss3.so ]]; then
252 ln -sfv ../libnssckbi.so -t "$appdir"
253 fi
254
255 # Register GNOME search provider
256 install -Dvm644 /dev/stdin "$pkgdir/usr/share/gnome-shell/search-providers/$_pkgname.search-provider.ini" <<END
257[Shell Search Provider]
258DesktopId=$_pkgname.desktop
259BusName=org.mozilla.${_pkgname//-/_}.SearchProvider
260ObjectPath=/org/mozilla/${_pkgname//-/_}/SearchProvider
261Version=2
262END
263}
264

Changes since previous scan

--- PKGBUILD @ 2026-07-23 17:25
+++ PKGBUILD @ 2026-08-03 00:08
@@ -1,11 +1,12 @@
# Maintainer: Stefan Wimmer <info@stefanwimmer128.xyz>
_pkgname=firedragon
+__pkgname=$_pkgname
+_rdns=org.garudalinux.$__pkgname
_pkgver=13.0.0-rc.27
_branding=dr460nized
-
-__pkgname=$_pkgname
-_rdns=org.garudalinux.$__pkgname
+_gentoo=firefox-153-patches-01.tar.xz
+_gentoo_exclude=(0015-bgo-940031-wasm-support.patch)
pkgname=$__pkgname-next
pkgver=${_pkgver//-/_}
@@ -87,16 +88,17 @@
)
source=(
$_pkgname-v$_pkgver.source.tar.xz::$url/-/releases/v$_pkgver/downloads/$_pkgname.source.tar.xz
- fix-wasm32-wasi-target.patch
+ https://dev.gentoo.org/~juippis/mozilla/patchsets/$_gentoo
)
sha256sums=('5520b0d0dbc80e96a81f4b4a859a4feccddea210c349d49dda3b7f5e264d5270'
- 'f7ba345f2b82ce4eab315f15f388e907bed86e00a3011ccd79e732f4e8762124')
+ '9dc3e9423eea9b8bf16cd7cc2545a539717e9b32c1e4242a332988ff0add923e')
+noextract=($_gentoo)
prepare() {
mkdir -p mozbuild
cd $_pkgname-v$_pkgver
- patch -Nsp1 -i "$srcdir"/fix-wasm32-wasi-target.patch
+ tar -Oxf "$srcdir/$_gentoo" $(printf -- '--exclude=%s' "${_gentoo_exclude[@]}") | patch -Nsp1
echo ". \"\$topsrcdir/browser/$_pkgname/mozconfig/edition/$_pkgname-$_branding.mozconfig\"" > ../mozconfig
export FIREDRAGON_EDITION=$_branding

Scan history

Scanned at (UTC)SeverityRules
2026-08-03 00:08:14 LOW 2
2026-08-02 00:16:08 LOW 2
2026-08-01 00:11:18 LOW 2
2026-07-31 00:14:10 LOW 2
2026-07-30 00:17:23 LOW 2
2026-07-29 00:25:53 LOW 2
2026-07-28 00:07:28 LOW 2
2026-07-27 00:24:32 LOW 2
2026-07-26 00:07:32 LOW 2
2026-07-25 00:13:44 LOW 2
2026-07-24 05:27:22 MEDIUM 1
2026-07-23 17:25:21 CLEAN 0
2026-07-21 09:16:42 CLEAN 0
2026-07-18 07:57:03 CLEAN 0
2026-07-15 19:49:33 CLEAN 0
2026-07-08 17:29:03 CLEAN 0
2026-07-04 07:13:52 CLEAN 0
2026-06-24 20:20:37 CLEAN 0
2026-06-20 14:37:07 CLEAN 0
2026-06-18 16:11:54 CLEAN 0

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion