idos-timetable-additionalinfo-chaps-mhd-pid-latest
LOW
maintainer dreieck
1 votes
scanned 2026-09-17 00:27:14.276658
Why flagged
The package downloads data files (photographs and license) from the project's own domain for use with a timetable application;虽主机不在白名单上,但内容为非可执行数据,最坏情况为数据篡改,无代码执行风险。
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 data files (photographs and license) from the project's own domain for use with a timetable application;虽主机不在白名单上,但内容为非可执行数据,最坏情况为数据篡改,无代码执行风险。
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:48
"${_target}::https://ttakt.chaps.cz/TTAktual/Win/Zip/${_zipfile}" -
PKGBUILD:49
"IDOS-Licence.pdf::https://chaps.cz/files/idos/IDOS-Licence.pdf"
PKGBUILD
2 offending line(s) highlighted
1
# Maintainer: dreieck
2
3
# PKGBUILD last time manually edited: At least on 2023-09-04.
4
url="https://chaps.cz/eng/download/idos/zip#kotvainf"
5
_zipfile="CPID.ZIP"
6
_pkgver() {
7
# Reason for a _pkgver(): Have something to run before source download so that we can have version aware source downloads.
8
wget -nv -O- "${url}" | tr -d '\a' | tr '\n' '\a' | sed 's|^.*File '"${_zipfile}"'\(.*\)Zip/'"${_zipfile}"'.*$|\1\n|g' | tr '\a' '\n' | grep 'Update date:' | cut -d, -f1 | sed -r 's|([0-9]+)\.([0-9]+)\.([0-9]+).|\n\3_\2_\1\n|g' | grep -E '^[0-9]+_[0-9]+_[0-9]+'
9
}
10
11
_pkgname=idos-timetable-additionalinfo-chaps-mhd-pid
12
pkgname="${_pkgname}-latest"
13
epoch=0
14
_pkgver="$(_pkgver)" # This should be set _before_ sources get downloaded.
15
pkgver="${_pkgver}"
16
pkgrel=3
17
pkgdesc="Photographs of some stops within the PID (Praha region) public transport area, to be used with the timetable search engines by CHAPS."
18
arch=('any')
19
license=('custom')
20
21
groups=(
22
"idos-timetable"
23
)
24
25
depends=(
26
"idos-timetable-data-mhd-pid"
27
)
28
29
makedepends=(
30
"wget"
31
)
32
33
optdepends=()
34
35
provides=(
36
"${_pkgname}=${pkgver}"
37
38
"idos-timetable-additionalinfo-mhd-pid=${pkgver}"
39
)
40
41
conflicts=(
42
"${_pkgname}"
43
)
44
45
_target="cpid-${_pkgver}.zip"
46
47
source=(
48
"${_target}::https://ttakt.chaps.cz/TTAktual/Win/Zip/${_zipfile}"
49
"IDOS-Licence.pdf::https://chaps.cz/files/idos/IDOS-Licence.pdf"
50
"license-dummy.txt"
51
)
52
53
sha256sums=(
54
'SKIP'
55
"SKIP"
56
"c6bb216055d3670d3100b7a74e04ce0644030f365f4349a09e630ef60fbcb9a4"
57
)
58
59
pkgver() {
60
printf '%s' "${_pkgver}"
61
}
62
63
64
package() {
65
_instdirbase='/opt/idos-timetable'
66
_instdir="${pkgdir}/${_instdirbase}"
67
install -d -m755 "${_instdir}"
68
69
cp -r "${srcdir}"/Data* "${_instdir}/"
70
chmod 755 "${_instdir}"/Data*
71
chmod 755 "${_instdir}"/Data*/*
72
chmod 644 "${_instdir}"/Data*/*/*
73
74
install -d -m755 "${pkgdir}/usr/share/doc/${_pkgname}"
75
echo "${url}" > "${pkgdir}/usr/share/doc/${_pkgname}/info.url"
76
chmod 644 "${pkgdir}/usr/share/doc/${_pkgname}/info.url"
77
78
install -D -m644 "${srcdir}/license-dummy.txt" "${pkgdir}/usr/share/licenses/${pkgname}/copying.txt"
79
install -D -m644 "${srcdir}/IDOS-Licence.pdf" "${pkgdir}/usr/share/licenses/${pkgname}/IDOS-Licence.pdf"
80
}
81
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 18:00:42 | Medium | 1 |
| 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 |