yandex-music
maintainer dmitrysvd
· 19 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads a prebuilt .deb from Yandex's own S3 bucket, which is an official and expected source for this application; the downloaded file is a standard package format, not an obfuscated payload, and the checksum is verified, making this a normal distribution method for the official app 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 .deb from Yandex's own S3 bucket, which is an official and expected source for this application; the downloaded file is a standard package format, not an obfuscated payload, and the checksum is verified, making this a normal distribution method for the official app 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:26
source=("https://music-desktop-application.s3.yandex.net/stable/Yandex_Music_amd64_${pkgver}.deb")
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: dmitrysvd
2
3
pkgname=yandex-music
4
pkgver=5.109.1
5
pkgrel=1
6
pkgdesc="Official Yandex Music App for Linux"
7
arch=('x86_64')
8
url="https://music.yandex.ru/download/"
9
license=('LicenseRef-unknown')
10
depends=(
11
alsa-lib
12
gtk3
13
libnotify
14
nss
15
libxss
16
libxtst
17
xdg-utils
18
at-spi2-core
19
util-linux-libs
20
libsecret
21
)
22
optdepends=(
23
libappindicator-gtk3
24
)
25
options=('!strip' '!debug')
26
source=("https://music-desktop-application.s3.yandex.net/stable/Yandex_Music_amd64_${pkgver}.deb")
27
sha256sums=('355b9d3fc4a2567774d75921f85ae95a5af6bf7ccb9206ed1f9762fe690c3cc7')
28
29
package() {
30
bsdtar -xf data.tar.* --directory "${pkgdir}"
31
32
# Remove Cyrillic from the path
33
mv "${pkgdir}/opt/Яндекс Музыка" "${pkgdir}/opt/yandex-music"
34
35
# Disable auto-updates
36
rm "${pkgdir}/opt/yandex-music/resources/app-update.yml"
37
38
# Fix desktop file
39
sed -i 's|/opt/Яндекс Музыка|/opt/yandex-music|g' "${pkgdir}/usr/share/applications/yandexmusic.desktop"
40
41
# Localize Cyrillic name
42
sed -i 's|Name=Яндекс Музыка|Name=Yandex Music\nName[ru]=Яндекс Музыка|g' "${pkgdir}/usr/share/applications/yandexmusic.desktop"
43
44
# Change StartupWMClass to package name from package.json in app.asar
45
sed -i 's|StartupWMClass=Яндекс Музыка|StartupWMClass=YandexMusic|g' "${pkgdir}/usr/share/applications/yandexmusic.desktop"
46
47
# Fix menu category
48
sed -i 's|Categories=Audio;|Categories=AudioVideo;Audio;|g' "${pkgdir}/usr/share/applications/yandexmusic.desktop"
49
50
# Fix GTK version error for Gnome users
51
sed -i 's|Exec="/opt/yandex-music/yandexmusic"|Exec="/opt/yandex-music/yandexmusic" --gtk-version=3|' "${pkgdir}/usr/share/applications/yandexmusic.desktop"
52
53
install -Dm644 "${pkgdir}/opt/yandex-music/LICENSE.electron.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.electron.txt"
54
install -Dm644 "${pkgdir}/opt/yandex-music/LICENSES.chromium.html" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSES.chromium.html"
55
56
# add to the $PATH
57
install -dm755 "${pkgdir}/usr/bin"
58
ln -s "/opt/yandex-music/yandexmusic" "${pkgdir}/usr/bin/yandex-music"
59
}
60
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 |