gradle8-src
maintainer patlefort
· 2 votes
· base
gradle8
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads source and binary distributions from the official Gradle distribution domain (services.gradle.org), which is the project's legitimate release infrastructure; building from official project-owned sources with proper checksums is standard AUR practice and not inherently risky.
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-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads source and binary distributions from the official Gradle distribution domain (services.gradle.org), which is the project's legitimate release infrastructure; building from official project-owned sources with proper checksums is standard AUR practice and not inherently risky.
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:32
source=("https://services.gradle.org/distributions/${_pkgbase}-${pkgver}-src.zip"
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Patrick Northon <northon_patrick3@yahoo.ca>
2
# Contributor: Levente Polyak <anthraxx[at]archlinux[dot]org>
3
# Contributor: Simon Legner <Simon.Legner@gmail.com>
4
# Contributor: Chris Molozian (novabyte) <chris DOT molozian AT gmail DOT com>
5
# Contributor: Sanjuro Makabe (itti) <vuck AT gmx DOT de>
6
7
_pkgbase=gradle
8
pkgbase=gradle8
9
pkgname=('gradle8' 'gradle8-doc' 'gradle8-src')
10
pkgver=8.14.5
11
pkgrel=1
12
pkgdesc='Powerful build system for the JVM'
13
url='https://gradle.org/'
14
arch=('any')
15
license=('Apache')
16
depends=(
17
'bash'
18
'coreutils'
19
'findutils'
20
'sed'
21
'which'
22
)
23
makedepends=(
24
'asciidoc'
25
'git'
26
'groovy'
27
'java-environment=11'
28
'java-environment=17'
29
'java-environment=21'
30
'xmlto'
31
)
32
source=("https://services.gradle.org/distributions/${_pkgbase}-${pkgver}-src.zip"
33
"https://services.gradle.org/distributions/${_pkgbase}-${pkgver}-all.zip"
34
"${_pkgbase}.sh")
35
sha256sums=('67a8a7ba59acefb11d67acb2b5fecb90362e873528dc87fc36f3829e94110937'
36
'62c3769155d7d17ea05084ad498067824c1804568a408a6faa78a5ef95ed67a8'
37
'1cdf7f30f91a8f81d5608ce2d005ce1105ecae19626db72a56a7b5f426e5609d')
38
sha512sums=('f63b8a036e1fc07207a6f1692dbbf100c9bb89fd453556fe3526abf873bf24dcaff237777eb167245ab4ab728f42a5d225cd755eb8d47c06a2b389bdcec603ea'
39
'6e174b8e0ced5898a1a9d5eedeee9d2bca78d109bceed4ad222165e0edc90ba35c10ad4aba123de826056fd15e4105fdfb39eda8f8471dd4e9c8714fdb25b0c3'
40
'597f72a376e9b582da6ac012acf3d681d21da1a0a3124c70639558737e7adbd937a260bdc5c2a215dfe32493b974fd9096b79710a1e185745f65a700e00091ef')
41
42
_srcdir="${_pkgbase}-${pkgver}"
43
_java_home='/usr/lib/jvm/java-21-openjdk'
44
45
prepare() {
46
cd ${_srcdir}
47
# remove adoptium references because we want to use our java implementation
48
grep -lr "vendor = JvmVendorSpec.ADOPTIUM" | xargs sed -i "/JvmVendorSpec.ADOPTIUM/d"
49
50
# inhibit automatic download of binary gradle
51
sed -i "s#distributionUrl=.*#distributionUrl=file\:${srcdir}/${_pkgbase}-${pkgver}-all.zip#" \
52
gradle/wrapper/gradle-wrapper.properties
53
}
54
55
build() {
56
cd ${_srcdir}
57
export PATH="$_java_home/bin:$PATH"
58
export JAVA_HOME="$_java_home"
59
./gradlew installAll \
60
--info \
61
-Porg.gradle.java.installations.paths="$_java_home" \
62
-Porg.gradle.java.installations.auto-download=false \
63
-PfinalRelease=true \
64
-Pgradle_installPath="$(pwd)/dist" \
65
--no-configuration-cache
66
}
67
68
package_gradle8() {
69
cd ${_srcdir}/dist
70
depends+=('java-environment>=21')
71
optdepends=(
72
'gradle8-doc: gradle8 documentation'
73
'gradle8-src: gradle8 sources'
74
)
75
76
# install profile.d script
77
install -Dm 644 "${srcdir}"/${_pkgbase}.sh "${pkgdir}"/etc/profile.d/${pkgbase}.sh
78
79
# create the necessary directory structure
80
install -d "${pkgdir}"/usr/share/java/${pkgname}/bin
81
install -d "${pkgdir}"/usr/share/java/${pkgname}/lib/{plugins,agents}
82
install -d "${pkgdir}"/usr/share/java/${pkgname}/init.d
83
install -d "${pkgdir}"/usr/bin
84
85
# copy across jar files
86
install -Dm 644 lib/*.jar "${pkgdir}"/usr/share/java/${pkgname}/lib
87
install -Dm 644 lib/plugins/*.jar "${pkgdir}"/usr/share/java/${pkgname}/lib/plugins
88
install -Dm 644 lib/agents/*.jar "${pkgdir}"/usr/share/java/${pkgname}/lib/agents
89
90
# copy across supporting text documentation and scripts
91
install -m 644 NOTICE "${pkgdir}"/usr/share/java/${pkgname}
92
install -m 755 bin/gradle "${pkgdir}"/usr/share/java/${pkgname}/bin
93
install -m 644 init.d/*.* "${pkgdir}"/usr/share/java/${pkgname}/init.d
94
95
# link gradle script to /usr/bin
96
ln -s /usr/share/java/${pkgname}/bin/${_pkgbase} "${pkgdir}"/usr/bin/${pkgname}
97
}
98
99
package_gradle8-doc() {
100
pkgdesc+=' (documentation)'
101
options=('!strip')
102
103
cd ${_srcdir}/dist
104
install -d "${pkgdir}"/usr/share/java/gradle/docs
105
cp -r docs/* "${pkgdir}"/usr/share/java/gradle/docs
106
}
107
108
package_gradle8-src() {
109
pkgdesc+=' (sources)'
110
options=('!strip')
111
112
cd ${_srcdir}/dist
113
install -d "${pkgdir}"/usr/share/java/gradle/src
114
cp -r src/* "${pkgdir}"/usr/share/java/gradle/src
115
}
116
117
# vim: ts=2 sw=2 et:
118
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 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 00:02:28 | LOW | 2 |
| 2026-07-23 00:14:47 | LOW | 2 |
| 2026-07-22 00:29:32 | LOW | 2 |
| 2026-07-21 00:24:15 | LOW | 2 |
| 2026-07-20 00:19:49 | LOW | 2 |
| 2026-07-19 00:17:08 | LOW | 2 |
| 2026-07-18 00:14:48 | LOW | 2 |
| 2026-07-17 00:06:16 | LOW | 2 |
| 2026-07-16 00:05:41 | LOW | 2 |
| 2026-07-15 00:09:25 | LOW | 2 |