todesk-rpm-bin
maintainer Pulsar33550336
· 3 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads a prebuilt RPM from the official vendor's domain (dl.todesk.com), which is plausibly part of ToDesk's own infrastructure; the binary is not obfuscated or executed during build, and the worst case of a swapped source would be code execution at runtime, but the host is official and the checksum is verified, making this a standard vendor-supplied binary package 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-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads a prebuilt RPM from the official vendor's domain (dl.todesk.com), which is plausibly part of ToDesk's own infrastructure; the binary is not obfuscated or executed during build, and the worst case of a swapped source would be code execution at runtime, but the host is official and the checksum is verified, making this a standard vendor-supplied binary package 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:33
source_x86_64=("https://dl.todesk.com/linux/${_pkgname}-v${pkgver}-x86_64.rpm")
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Pulsar33550336 <pulsar33550336@163.com>
2
# Maintainer: yjun <jerrysteve1101 at gmail dot com>
3
# Maintainer: witt <1989161762 at qq dot com>
4
5
pkgname=todesk-rpm-bin
6
_pkgname=${pkgname%-rpm-bin}
7
_binaryname=ToDesk
8
pkgver=4.8.1.0
9
pkgrel=1
10
pkgdesc="Remote control and team work"
11
arch=('x86_64' 'aarch64')
12
url="https://www.todesk.com/"
13
license=('custom')
14
depends=('gtk3'
15
'libappindicator-gtk3'
16
'noto-fonts-cjk')
17
makedepends=('wget' 'tar')
18
provides=("${_pkgname}")
19
conflicts=("${_pkgname}")
20
# !strip: strip could generate error.
21
# --->
22
# strip: error: the input file './opt/todesk/bin/todesk' has no sections
23
# strip: error: the input file './opt/todesk/bin/todeskd' has no sections
24
#
25
# emptydirs: leave /opt/todesk/config empty dir
26
options=('!strip' 'emptydirs')
27
DLAGENTS=("https::/usr/bin/wget -U 'Mozilla' -O %o %u")
28
install="${_pkgname}.install"
29
source=('license.html')
30
# https://dl.todesk.com/linux/todesk-v4.7.2.0-c7-x86_64.rpm
31
# https://dl.todesk.com/linux/todesk-v4.8.1.0-x86_64.rpm
32
# https://dl.todesk.com/linux/todesk-v4.8.1.0-x86_64.rpm
33
source_x86_64=("https://dl.todesk.com/linux/${_pkgname}-v${pkgver}-x86_64.rpm")
34
sha256sums=('402b2db2586c723af990beb0f96249b9680880f4f30e58a7cbe7cbd20b979a0b')
35
sha256sums_x86_64=('01dfa91f429053921412596a52853eb40d89202ce140f2633d8621cce8788971')
36
37
_install() {
38
find ${@: 2} -type f -exec install -Dm$1 {} ${pkgdir}/{} \;
39
}
40
41
build() {
42
mkdir -p ${srcdir}/build
43
}
44
45
package() {
46
cd ${srcdir}
47
48
# binary wrapper
49
install -Dm755 usr/bin/${_pkgname} -t ${pkgdir}/usr/bin/
50
51
# binary & scripts
52
install -Dm755 opt/${_pkgname}/bin/${_binaryname}{,_Service,_Session} -t ${pkgdir}/opt/${_pkgname}/bin
53
install -Dm755 opt/${_pkgname}/bin/CrashReport -t ${pkgdir}/opt/${_pkgname}/bin
54
55
# lib
56
# bundled libaray for hardware video encode
57
cp -a opt/${_pkgname}/bin/*.so* ${pkgdir}/opt/${_pkgname}/bin/
58
# _install 644 opt/${_pkgname}/bin -name libzrtc.so
59
60
# icon
61
# find opt/${_pkgname}/res -maxdepth 1 -type f -exec install -Dm644 {} ${pkgdir}/{} \;
62
_install 644 opt/${_pkgname}/res -maxdepth 1
63
64
# config
65
# empty dir
66
install -dm755 ${pkgdir}/opt/${_pkgname}/config
67
68
# desktop entry
69
install -Dm644 usr/share/applications/${_pkgname}.desktop -t ${pkgdir}/usr/share/applications
70
71
# systemd service
72
install -Dm644 etc/systemd/system/${_pkgname}d.service -t ${pkgdir}/usr/lib/systemd/system
73
74
# icon
75
# find usr/share/icons -type f -exec install -Dm644 {} ${pkgdir}/{} \;
76
_install 644 usr/share/icons
77
78
# license
79
install -Dm644 ${srcdir}/license.html -t ${pkgdir}/usr/share/licenses/${pkgname}/
80
}
81
# vim: set sw=2 ts=2 et:
82
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 |