lmstudio-bin
MEDIUM
maintainer noureddinex
70 votes
scanned 2026-11-01 00:21:48.120785
Why flagged
The package downloads a prebuilt AppImage from a non-whitelisted host (installers.lmstudio.ai), which is an unverifiable executable artifact that could be silently replaced, 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:15
source=("https://installers.lmstudio.ai/linux/x64/${_pkgver}/LM-Studio-${_pkgver}-x64.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-whitelisted host (installers.lmstudio.ai), which is an unverifiable executable artifact that could be silently replaced, posing a supply-chain risk.
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: noureddinex
2
pkgname=lmstudio-bin
3
pkgver=0.4.28
4
pkgrel=2
5
_pkgver=${pkgver}-${pkgrel}
6
pkgdesc="LM Studio - A desktop app for exploring and running large language models locally"
7
arch=('x86_64')
8
url="https://lmstudio.ai"
9
license=('EULA')
10
depends=('fuse2' 'zlib' 'hicolor-icon-theme' 'gtk3' 'nss' 'libxcrypt-compat')
11
options=('!strip')
12
install=lmstudio-bin.install
13
provides=(lmstudio)
14
conflicts=(lmstudio)
15
source=("https://installers.lmstudio.ai/linux/x64/${_pkgver}/LM-Studio-${_pkgver}-x64.AppImage"
16
"lmstudio.png"
17
"lmstudio.desktop")
18
sha256sums=('a3e6cf8233697be0a8ad6871197b424242af3c5a346671aeed59959ed7eebf11'
19
'9f791789c959a11316328692807737a5f1bc1c170ae99ec04c56bfd8ee8263e5'
20
'635dec12f3e3a57136b9e6fd7c2839ed6da7287fa55b482d64debf6eacf36baa')
21
22
prepare() {
23
chmod +x "${srcdir}/${source[0]##*/}"
24
}
25
26
package() {
27
# Create installation directory
28
install -dm755 "$pkgdir/opt/lm-studio"
29
30
# Install AppImage
31
install -Dm755 "${srcdir}/${source[0]##*/}" "$pkgdir/opt/lm-studio/lm-studio.AppImage"
32
33
# Install static icon
34
install -Dm644 "${srcdir}/lmstudio.png" "${pkgdir}/usr/share/icons/hicolor/512x512/apps/lmstudio-bin.png"
35
install -Dm644 "${srcdir}/lmstudio.png" "${pkgdir}/usr/share/pixmaps/lmstudio-bin.png"
36
37
# Desktop entry
38
install -Dm644 "$srcdir/lmstudio.desktop" "$pkgdir/usr/share/applications/lmstudio.desktop"
39
40
# Symlink to binary
41
install -dm755 "$pkgdir/usr/bin"
42
ln -s /opt/lm-studio/lm-studio.AppImage "$pkgdir/usr/bin/lm-studio"
43
}
44
Changes since previous scan
--- PKGBUILD @ 2026-10-31 00:07+++ PKGBUILD @ 2026-11-01 00:21@@ -1,6 +1,6 @@ # Maintainer: noureddinex pkgname=lmstudio-bin-pkgver=0.4.27+pkgver=0.4.28 pkgrel=2 _pkgver=${pkgver}-${pkgrel} pkgdesc="LM Studio - A desktop app for exploring and running large language models locally"@@ -15,7 +15,7 @@ source=("https://installers.lmstudio.ai/linux/x64/${_pkgver}/LM-Studio-${_pkgver}-x64.AppImage" "lmstudio.png" "lmstudio.desktop")-sha256sums=('392a542fe5b4e094a8517af748ddcd6809789a45903700f5ec30fe087d630a96'+sha256sums=('a3e6cf8233697be0a8ad6871197b424242af3c5a346671aeed59959ed7eebf11' '9f791789c959a11316328692807737a5f1bc1c170ae99ec04c56bfd8ee8263e5' '635dec12f3e3a57136b9e6fd7c2839ed6da7287fa55b482d64debf6eacf36baa') Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-01 00:21:48 | Medium | 2 |
| 2026-10-31 03:57:49 | Medium | 2 |
| 2026-10-31 00:07:41 | Medium | 2 |
| 2026-10-30 03:55:04 | Medium | 2 |
| 2026-10-30 00:29:30 | Medium | 2 |
| 2026-10-29 15:52:51 | Medium | 2 |
| 2026-10-29 00:13:55 | Medium | 2 |
| 2026-10-28 00:06:54 | Medium | 2 |
| 2026-10-27 00:23:28 | Medium | 2 |
| 2026-10-26 00:12:40 | Medium | 2 |
| 2026-10-25 00:20:48 | Medium | 2 |
| 2026-10-24 00:14:55 | Medium | 2 |
| 2026-10-23 00:02:19 | Medium | 2 |
| 2026-10-22 00:13:10 | Medium | 2 |
| 2026-10-21 00:12:50 | Medium | 2 |
| 2026-10-20 00:10:31 | Medium | 2 |
| 2026-10-19 00:03:55 | Medium | 2 |
| 2026-10-18 00:06:55 | Medium | 2 |
| 2026-10-17 00:21:55 | Medium | 2 |
| 2026-10-16 00:12:47 | Medium | 2 |