pianoteq-stage

LOW
maintainer TheA4Paper 12 votes scanned 2026-10-17 00:21:55.226236
View on AUR
Why flagged

The package requires a manually downloaded source tarball from the official vendor site, which is a normal practice for proprietary software; the non-standard host flag is a false positive as the download is from the project's official domain.

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-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package requires a manually downloaded source tarball from the official vendor site, which is a normal practice for proprietary software; the non-standard host flag is a false positive as the download is from the project's official domain.

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:53 'https://www.pianoteq.com/images/logo/pianoteq_icon_128.png')

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: TheA4Paper <flatandblank@gmail.com>
2# Contributor: maksut <maksut.cagil@gmail.com>
3# Contributor: spider-mario <spidermario@free.fr>
4# Contributor: Saiki81 <saikia81 at hotmail dot com>
5# adapted from package: pianoteq-stage-trial-bin
6# adapted from pkgbuild creator: CrocoDuck <crocoduck dot oducks at gmail dot com>
7
8# the source package must be downloaded manually
9# this can be done by going to the link here:
10# https://www.modartt.com/download?file=pianoteq_setup_v910.tar.xz
11# The downloaded files must be placed in the appropriate directory
12# - makepkg: The same directory as this PKGBUILD
13# - yay: /home/<user>/.cache/yay/pianoteq-stage
14# - paru: /home/<user>/.cache/paru/clone/pianoteq-stage/
15
16pkgname=pianoteq-stage
17pkgver=9.2.5
18pkgrel=1
19pkgdesc="Virtual piano instrument using physical modelling synthesis. Both standalone and plugin versions."
20arch=(x86_64 aarch64)
21url="https://www.pianoteq.com/pianoteq"
22license=('custom')
23depends=('alsa-lib' 'freetype2' 'ttf-font' 'libx11')
24makedepends=('gendesk')
25optdepends=()
26provides=("${pkgname%-*}")
27conflicts=("${pkgname%-*}" "pianoteq-stage-bin" "pianoteq-standard-trial-bin")
28options=('!debug')
29_name="Pianoteq 9"
30
31#Source file download guide
32_sourcefile="./pianoteq_setup_v${pkgver//./}.tar.xz"
33if [ ! -f ${_sourcefile} ]; then
34 echo ""
35 echo " Due to license and website restriction, to install this package, the distribution file must be downloaded manually."
36 echo " You can download the source file of Pianoteq Stage $pkgver from here:"
37 echo ""
38 echo " https://www.modartt.com/download?file=pianoteq_setup_v${pkgver//./}.tar.xz"
39 echo ""
40 echo " You must be logged in and own a valid copy of Pianoteq Stage in order to download"
41 echo ""
42 echo " The Downloaded file must be placed in the appropriate directory depending on your AUR helper (or lack of thereof) here:"
43 echo " - makepkg: Same directory as this PKGBUILD"
44 echo " - yay: /home/<user>/.cache/yay/pianoteq-stage"
45 echo " - paru: /home/<user>/.cache/paru/clone/pianoteq-stage/ "
46 echo ""
47 echo "Operation Aborted"
48 echo ""
49 exit 1
50fi
51
52source=("local://pianoteq_setup_v${pkgver//./}.tar.xz"
53 'https://www.pianoteq.com/images/logo/pianoteq_icon_128.png')
54b2sums=('c338e954e1df21505ac289f5f77a73d48b1396ee183a611693438e7388e19813be1cb2115a5af1f5b001733e07006f16042adcfc0062edf3bdd1c13c534ef3d3'
55 'bbb48b5b2bd5bbe52a39c84f42ea6c12a3633e4713e00d8132654ddf5adc5d7da1b7951c683cb11446ee847a388a775eb48591089a4e8dc69ed6d97cfc80d56d')
56
57prepare() {
58 cd "$_name"
59 # Generate Desktop Entry
60 gendesk -f -n \
61 --pkgname=$pkgname \
62 --pkgdesc="$pkgdesc" \
63 --name="$_name" \
64 --exec="\"$_name\"" \
65 --categories='Audio;AudioVideo;AudioVideoEditing;Midi;Music;Sequencer;'
66}
67
68package() {
69 depends+=(libasound.so libfreetype.so libfontconfig.so)
70 cd "$_name"
71
72 # Define architecture specific directory
73 if [[ "$CARCH" == x86_64 ]]; then
74 _archdir=x86-64bit
75 elif [[ "$CARCH" == aarch64 ]]; then
76 _archdir=arm-64bit
77 fi
78
79 # Install stand-alone executable and symlink
80 install -vDm 755 "$_archdir/$_name" -t "$pkgdir"/usr/bin
81 ln -sf "$_name" "$pkgdir"/usr/bin/${pkgname}${pkgver%%.*}
82 # Install VST3 plug-in bundle
83 install -vDm 755 "$_archdir/$_name.vst3"/Contents/$CARCH-linux/*.so \
84 -t "$pkgdir/usr/lib/vst3/$_name.vst3"/Contents/$CARCH-linux
85 # Install LV2 plug-in bundle
86 install -vDm 755 "$_archdir/$_name.lv2"/*.so -t "$pkgdir/usr/lib/lv2/$_name.lv2"
87 install -vDm 644 "$_archdir/$_name.lv2"/*.ttl -t "$pkgdir/usr/lib/lv2/$_name.lv2"
88
89 # Install desktop launcher
90 install -vDm 644 "$srcdir"/pianoteq_icon_128.png "$pkgdir"/usr/share/pixmaps/$pkgname.png
91 install -vDm 644 $pkgname.desktop -t "$pkgdir"/usr/share/applications
92
93 # Install license
94 install -vDm 644 *Licence* -t "$pkgdir"/usr/share/licenses/$pkgname
95
96 # Install documentation
97 install -vDm 644 README_LINUX.txt Documentation/* -t "$pkgdir"/usr/share/doc/$pkgname
98}
99
100

Scan history

Scanned at (UTC)SeverityRules
2026-10-17 00:21:55 Low 2
2026-10-16 00:12:47 Low 2
2026-10-15 00:28:05 Low 2
2026-10-14 00:06:47 Low 2
2026-10-13 00:23:45 Low 2
2026-10-12 00:18:51 Low 2
2026-10-11 00:26:05 Low 2
2026-10-10 00:11:52 Low 2
2026-10-09 00:05:33 Low 2
2026-10-08 00:28:03 Low 2
2026-10-07 00:21:34 Low 2
2026-10-06 00:13:36 Low 2
2026-10-05 00:08:03 Low 2
2026-10-04 00:18:08 Low 2
2026-10-03 00:23:04 Low 2
2026-10-02 00:00:32 Low 2
2026-10-01 00:02:06 Low 2
2026-09-30 00:20:07 Low 2
2026-09-29 00:07:46 Low 2
2026-09-28 00:28:32 Low 2

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion