upnote-appimage
MEDIUM
maintainer Kycko
5 votes
scanned 2026-09-17 00:27:14.276658
Why flagged
The package downloads a prebuilt AppImage from a non-standard host (download.getupnote.com), which is an unverifiable executable artifact that could be silently swapped, posing a supply-chain risk.
Triggered rules
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
source=("${_appimageOrig}::https://download.${_website}/app/${_pkgname}.AppImage"
Medium
AI review
llm_review
An AI model (qwen/qwen3-235b-a22b-2507) reviewed this and agrees it is MEDIUM (confidence 95%): The package downloads a prebuilt AppImage from a non-standard host (download.getupnote.com), which is an unverifiable executable artifact that could be silently swapped, posing a supply-chain risk.
PKGBUILD
1 offending line(s) highlighted
1
# Previous maintainer: Syaddad Ali Sulaiman Hakim <contact at mail dot whysadad dot com>
2
# Current maintainer: Anton Samartsev <kycko at archlinux dot org>
3
4
_sname="upnote"
5
_pkgname=UpNote
6
_website="get${_sname}.com"
7
_deskfile="${_sname}.desktop"
8
_squashroot="squashfs-root"
9
10
pkgname=${_sname}-appimage
11
pkgver=9.22.4
12
pkgrel=1
13
_appimageOrig="${_pkgname}-${pkgver}.AppImage"
14
15
pkgdesc="Cross-platform note-taking application"
16
arch=('x86_64')
17
url="https://${_website}/"
18
license=('custom')
19
provides=("${_sname}")
20
conflicts=("${_sname}")
21
makedepends=('desktop-file-utils')
22
options=('!strip')
23
source=("${_appimageOrig}::https://download.${_website}/app/${_pkgname}.AppImage"
24
"${_deskfile}")
25
sha256sums=('SKIP'
26
'8977530cdac21641becea2b94f97a1ffc8995793008bafecf619cc9c112dcf57')
27
noextract=("${_appimageOrig}")
28
29
check() {
30
cd "$srcdir"
31
desktop-file-validate "${_deskfile}"
32
}
33
34
package() {
35
cd "$srcdir"
36
37
install -Dm755 "${_appimageOrig}" "$pkgdir/usr/bin/${_sname}"
38
install -Dm644 "${_deskfile}" "$pkgdir/usr/share/applications/${_deskfile}"
39
40
chmod +x "${_appimageOrig}"
41
./"${_appimageOrig}" --appimage-extract &>/dev/null
42
43
local _icon_found=0
44
for _icon in "${_sname}.png" "${_sname}.svg" "icon.png"; do
45
if [ -f "${_squashroot}/${_icon}" ]; then
46
install -Dm644 "${_squashroot}/${_icon}" "$pkgdir/usr/share/pixmaps/${_sname}.${_icon##*.}"
47
_icon_found=1
48
break
49
fi
50
done
51
52
if [ "${_icon_found}" -eq 0 ]; then
53
msg2 "Warning: Could not automatically find an icon file (${_sname}.png/svg or icon.png) within the AppImage."
54
msg2 " Desktop entry icon might be missing."
55
fi
56
57
find "${_squashroot}" -maxdepth 1 -iname 'LICENSE*' -print -exec install -Dm644 {} "$pkgdir/usr/share/licenses/$pkgname/LICENSE" \; || true
58
}
59
Changes since previous scan
--- PKGBUILD @ 2026-09-15 00:25+++ PKGBUILD @ 2026-09-17 00:27@@ -8,7 +8,7 @@ _squashroot="squashfs-root" pkgname=${_sname}-appimage-pkgver=9.22.1+pkgver=9.22.4 pkgrel=1 _appimageOrig="${_pkgname}-${pkgver}.AppImage" Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Medium | 2 |
| 2026-09-16 00:03:17 | Medium | 2 |
| 2026-09-15 01:18:20 | Medium | 2 |
| 2026-09-15 00:25:31 | Medium | 2 |
| 2026-09-14 00:27:57 | Medium | 2 |
| 2026-09-13 00:19:54 | Medium | 2 |
| 2026-09-12 00:25:17 | Medium | 2 |
| 2026-09-11 00:19:22 | Medium | 2 |
| 2026-09-10 00:22:44 | Medium | 2 |
| 2026-09-09 00:04:09 | Medium | 2 |
| 2026-09-08 00:18:08 | Medium | 2 |
| 2026-09-07 00:30:15 | Medium | 2 |
| 2026-09-06 00:17:06 | Medium | 2 |
| 2026-09-05 00:16:27 | Medium | 2 |
| 2026-09-04 00:03:13 | Medium | 2 |
| 2026-09-03 00:15:47 | Medium | 2 |
| 2026-09-02 00:02:31 | Medium | 2 |
| 2026-09-01 00:11:19 | Medium | 2 |
| 2026-08-31 00:19:57 | Medium | 2 |
| 2026-08-30 00:04:14 | Medium | 2 |