mroonga
The package builds Mroonga as a storage engine for MariaDB, sourcing the code from the official project host (packages.groonga.org) and MariaDB's official rsync mirror; both sources are legitimate project infrastructure, and the build integrates the Mroonga source into a full MariaDB compilation, which is a normal and safe AUR practice.
Triggered rules
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package builds Mroonga as a storage engine for MariaDB, sourcing the code from the official project host (packages.groonga.org) and MariaDB's official rsync mirror; both sources are legitimate project infrastructure, and the build integrates the Mroonga source into a full MariaDB compilation, which is a normal and safe AUR practice.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:17
source=(http://packages.groonga.org/source/mroonga/mroonga-$pkgver.tar.gz -
PKGBUILD:18
https://rsync.osuosl.org/pub/mariadb/${MYSQL_VERSION}/source/${MYSQL_VERSION}.tar.gz
PKGBUILD
2 offending line(s) highlighted# Maintainer: Hiroshi Hatake <cosmo0920.wp[at]gmail.com>
pkgname=mroonga
pkgver=15.07
pkgrel=1
pkgdesc="Fast fulltext search on MySQL(MariaDB bundled Mroonga package)."
mariadbver=10.11.11
MYSQL_VERSION=mariadb-${mariadbver}
arch=('i686' 'x86_64')
url="http://mroonga.org/"
license=('LGPL2.1')
provides=("mysql-clients=$mariadbver" "mysql=$mariadbver" "libmysqlclient=$mariadbver")
# The default links with mirror redirection fail for signatures, specific
# mirrors may be out of date every now and then. Let's use the upstream
# rsync source via https and hope it does not hurt them too much.
# https://mariadb.com/kb/en/library/mirror-sites-for-mariadb/
source=(http://packages.groonga.org/source/mroonga/mroonga-$pkgver.tar.gz
https://rsync.osuosl.org/pub/mariadb/${MYSQL_VERSION}/source/${MYSQL_VERSION}.tar.gz
mariadb.service
mariadb-post.sh
mariadb-tmpfile.conf
remove-private-keyword.patch
)
makedepends=('boost' 'bzip2' 'cmake' 'cracklib' 'curl' 'jemalloc' 'judy' 'krb5' 'liburing'
'libxcrypt' 'libxml2' 'lz4' 'openssl' 'pcre2' 'systemd' 'zlib' 'zstd' 'xz' 'pkg-config')
conflicts=('libmariadbclient' 'mariadb-clients' 'mytop' 'mariadb' 'mysql' 'libmysqlclient' 'mysql-clients')
depends=('liburing' 'libxcrypt' 'libcrypt.so' 'openssl' 'pcre2' 'zlib' 'zstd'
'perl' 'inetutils' 'libaio' 'libxml2' 'groonga' 'groonga-normalizer-mysql')
optdepends=('cutter-test_framework' 'ruby' 'snowball-c')
prepare() {
cd $srcdir/mariadb-$mariadbver
rm -rf storage/mroonga
cd $srcdir
mkdir -p $srcdir/mariadb-$mariadbver/storage/mroonga
mv $srcdir/mroonga-${pkgver}/* $srcdir/mariadb-$mariadbver/storage/mroonga
(cd $srcdir/mariadb-$mariadbver
patch -p0 < $srcdir/remove-private-keyword.patch
)
}
build() {
cd $srcdir/mariadb-$mariadbver
local _cmake_options=(
# build options
-DCOMPILATION_COMMENT="Mroonga on AUR"
-DCMAKE_BUILD_TYPE=RelWithDebInfo
-Wno-dev
# file paths
# /etc
-DINSTALL_SYSCONFDIR=/etc
-DINSTALL_SYSCONF2DIR=/etc/my.cnf.d
# /run
-DINSTALL_UNIX_ADDRDIR=/run/mysqld/mysqld.sock
# /usr
-DCMAKE_INSTALL_PREFIX=/usr
# /usr/bin /usr/include
-DINSTALL_SCRIPTDIR=bin
-DINSTALL_INCLUDEDIR=include/mysql
# /usr/lib
-DINSTALL_PLUGINDIR=lib/mysql/plugin
-DINSTALL_SYSTEMD_UNITDIR=/usr/lib/systemd/system/
-DINSTALL_SYSTEMD_SYSUSERSDIR=/usr/lib/sysusers.d/
-DINSTALL_SYSTEMD_TMPFILESDIR=/usr/lib/tmpfiles.d/
# /usr/share
-DINSTALL_SHAREDIR=share
-DINSTALL_SUPPORTFILESDIR=share/mysql
-DINSTALL_MYSQLSHAREDIR=share/mysql
-DINSTALL_DOCREADMEDIR=share/doc/mariadb
-DINSTALL_DOCDIR=share/doc/mariadb
-DINSTALL_MANDIR=share/man
# /var
-DMYSQL_DATADIR=/var/lib/mysql
# default settings
-DDEFAULT_CHARSET=utf8mb4
-DDEFAULT_COLLATION=utf8mb4_unicode_ci
# features
-DENABLED_LOCAL_INFILE=ON
-DPLUGIN_EXAMPLE=NO
-DPLUGIN_FEDERATED=NO
-DPLUGIN_FEEDBACK=NO
-DWITH_EMBEDDED_SERVER=ON
-DWITH_EXTRA_CHARSETS=complex
-DWITH_JEMALLOC=ON
-DWITH_LIBWRAP=OFF
-DWITH_PCRE2=system
-DWITH_READLINE=ON
-DWITH_SSL=system
-DWITH_SYSTEMD=yes
-DWITH_UNIT_TESTS=OFF
-DWITH_ZLIB=system
)
cmake . "${_cmake_options[@]}"
make
}
package() {
backup=('etc/mysql/my.cnf')
install=mariadb.install
cd $srcdir/mariadb-$mariadbver
install -D -m0644 support-files/mariadb.pc "$pkgdir"/usr/share/pkgconfig/mariadb.pc
install -D -m0644 support-files/mysql.m4 "$pkgdir"/usr/share/aclocal/mysql.m4
make DESTDIR="$pkgdir" install
# not needed for using Mroonga just for testing.
rm -r "$pkgdir"/usr/{mysql-test,sql-bench}
rm "$pkgdir"/usr/share/man/man1/mysql-test-run.pl.1
install -Dm755 ../mariadb-post.sh "$pkgdir"/usr/bin/mysqld-post
install -Dm644 ../mariadb.service "$pkgdir"/usr/lib/systemd/system/mysqld.service
install -Dm644 ../mariadb-tmpfile.conf "$pkgdir"/usr/lib/tmpfiles.d/mysql.conf
}
sha1sums=('85d4266284e03ecb042c2b4da672fb1b639679ef'
'a0574a4417e073805bff9a9f757fc950e0eb8a01'
'4bc34244fc4b578c155c8cd569d952a97a476f10'
'206e9f7ba5357027becc2491e0987442f684d63e'
'c2a86c745002923234f9d6d79b3b462d5ab55e8d'
'125ea01196b1c4461509f937248610ee2dd15574')
sha256sums=('04c13efd262e8aa5317d5bc56015aa972757b0fda91ddddab88c7862928243c3'
'6f29d4d7e40fc49af4a0fe608984509ef2d153df3cd8afe4359dce3ca0e27890'
'2c60dfdc866078a8402d6e18d538e6a1deaa70e1b2410bee5eb209a314d7daa7'
'368f9fd2454d80eb32abb8f29f703d1cf9553353fb9e1ae4529c4b851cb8c5dd'
'2af318c52ae0fe5428e8a9245d1b0fc3bc5ce153842d1563329ceb1edfa83ddd'
'a18931f61b544211cecdca6ccd5110d7790d389cfa04130373167b498aa1ac99')
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 00:19:22 | Low | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 00:04:09 | Low | 2 |
| 2026-09-08 00:18:08 | Low | 2 |
| 2026-09-07 00:30:15 | Low | 2 |
| 2026-09-06 00:17:06 | Low | 2 |
| 2026-09-05 00:16:27 | Low | 2 |
| 2026-09-04 00:03:13 | Low | 2 |
| 2026-09-03 00:15:47 | Low | 2 |
| 2026-09-02 00:02:31 | Low | 2 |
| 2026-09-01 00:11:19 | Low | 2 |
| 2026-08-31 00:19:57 | Low | 2 |
| 2026-08-30 00:04:14 | Low | 2 |
| 2026-08-29 00:29:17 | Low | 2 |