projectx
maintainer windy
· 57 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads source code from SourceForge and a trusted mirror (ftp.fau.de), both hosting the project's own files; the non-whitelisted host is a reputable university FTP site commonly used for distribution, and the downloaded tarball is a standard part of the build process for a native extension, not an executable payload.
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 90%): The package downloads source code from SourceForge and a trusted mirror (ftp.fau.de), both hosting the project's own files; the non-whitelisted host is a reputable university FTP site commonly used for distribution, and the downloaded tarball is a standard part of the build process for a native extension, not an executable payload.
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:23
https://ftp.fau.de/gentoo/distfiles/50/projectx-idctfast.tar.xz
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Stephan Windmüller <arch at freewarepoint dot de>
2
# Contributer: Sebastian Sareyko <public@nooms.de>
3
#
4
# It is possible to choose the idct implementation
5
# Available are:
6
#
7
# none use ProjectX Java implementation
8
# idct-mjpeg taken from MJPEGTOOLS 1.8.0
9
# idct-mjpeg-mmx taken from MJPEGTOOLS 1.8.0
10
#
11
_idct=idct-mjpeg-mmx
12
13
pkgname=projectx
14
pkgver=0.91.0.08
15
pkgrel=5
16
license=('GPL')
17
arch=('i686' 'x86_64')
18
pkgdesc="DVB demux tool for repairing and analyzing different stream types"
19
makedepends=('make')
20
depends=('java-runtime<=11' 'java-environment' 'bash')
21
url="http://sourceforge.net/projects/project-x"
22
source=(https://downloads.sourceforge.net/project/project-x/project-x/ProjectX_0.91.0.00/ProjectX_0.91.0.zip
23
https://ftp.fau.de/gentoo/distfiles/50/projectx-idctfast.tar.xz
24
IDCTFast.patch
25
projectx)
26
27
sha256sums=('8ea38a6a9af5b5c0cf0a17429d85618804323b328a1f922db85e5af91197ad9a'
28
'd05b86b05c4924b434a6a9bb443c05d5421f6df7a2b19616a53ef1e4b4dada45'
29
'1d14666ebf1200fad3e8d0bb6a5c32d0bc23dee88be8ca4d95eb87fcb736b932'
30
'98bc74e72132c07b22bf774784247e8a761edb536bed772b68304adf27034010')
31
32
33
build() {
34
cd ${srcdir}
35
mv Project-X/lib/PORTABLE Project-X_0.91.0/lib
36
mv Project-X/src/net/sourceforge/dvb/projectx/video/IDCTFast.java Project-X_0.91.0/src/net/sourceforge/dvb/projectx/video
37
if [ ${_idct} != "none" ]; then
38
patch --binary -p0 < IDCTFast.patch
39
fi
40
cd ${srcdir}/Project-X_0.91.0
41
sh ./build.sh
42
if [ ${_idct} != "none" ]; then
43
cd lib/PORTABLE/
44
export JAVA_HOME="/usr/lib/jvm/`archlinux-java get`/"
45
make clean
46
make PROJECTX_HOME=${srcdir}/Project-X_0.91.0 IDCT=${_idct} CPLAT="$CFLAGS -fPIC"
47
cd ${srcdir}/Project-X_0.91.0
48
fi
49
}
50
51
package() {
52
cd ${srcdir}/Project-X_0.91.0
53
install -D -m0755 $srcdir/projectx $pkgdir/usr/bin/projectx
54
install -D -m0644 ProjectX.jar $pkgdir/usr/share/java/projectx/ProjectX.jar
55
if [ ${_idct} != "none" ]; then
56
install -D -m0644 lib/PORTABLE/libidctfast.so \
57
$pkgdir/usr/lib/projectx/libidctfast.so
58
fi
59
install -D -m0644 lib/commons-net-1.3.0.jar \
60
$pkgdir/usr/share/java/projectx/lib/commons-net-1.3.0.jar
61
install -D -m0644 lib/jakarta-oro-2.0.8.jar \
62
$pkgdir/usr/share/java/projectx/lib/jakarta-oro-2.0.8.jar
63
sed -i -e 's#Exec=java -jar /usr/share/projectx/ProjectX.jar#Exec=/usr/bin/projectx#' projectx.desktop
64
install -D -m0644 projectx.desktop $pkgdir/usr/share/applications/projectx.desktop
65
}
66
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 |