tape16

LOW
maintainer z3n 0 votes scanned 2026-09-22 11:37:52.799854
View on AUR
Why flagged

The package downloads a prebuilt .deb from a GitHub release and extracts it; while the host is not whitelisted, it is the project's official repository, and the binary payload is expected for this software, with no obfuscated or remote code execution.

Triggered rules

Low Few votes, recently uploaded zero_votes_recent

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

Low AI review llm_review

An AI model (qwen/qwen3-235b-a22b-2507) reviewed this and agrees it is LOW (confidence 95%): The package downloads a prebuilt .deb from a GitHub release and extracts it; while the host is not whitelisted, it is the project's official repository, and the binary payload is expected for this software, with no obfuscated or remote code execution.

PKGBUILD

1# Maintainer: z3n <z3nlabs at proton dot me>
2
3# TAPE 16 Linux packaging notes:
4# - GitHub "Source code" tag archives (archive/refs/tags/*.tar.gz) only contain
5# old Windows snapshots + README — not usable for a Linux package.
6# - Use the release asset TAPE-16-v${pkgver}-Linux-Release.zip instead.
7# - Upstream recommends AppImage for Arch-like distros; we package the .deb
8# payload instead for proper /usr integration (launchers, icons, desktop files).
9
10pkgname=tape16
11pkgver=0.9.400
12pkgrel=1
13pkgdesc="Destructive tape-style 16-track DAW (binary release)"
14arch=('x86_64')
15url="https://emrmusicgroup.com/tape16/"
16license=('LicenseRef-EMR-EULA')
17groups=('pro-audio')
18depends=(
19 'alsa-lib'
20 'alsa-utils'
21 'bash'
22 'curl'
23 'fontconfig'
24 'freetype2'
25 'gcc-libs'
26 'glibc'
27 'libgl'
28 'libx11'
29 'libxcursor'
30 'libxext'
31 'libxi'
32 'libxinerama'
33 'libxkbcommon'
34 'libxrandr'
35 'libxrender'
36 'pipewire'
37 'pipewire-alsa'
38 'pipewire-jack'
39 'pipewire-pulse'
40 'wireplumber'
41 'xorg-xwayland'
42 'zlib'
43)
44optdepends=(
45 'pavucontrol: PulseAudio/PipeWire volume control GUI'
46 'qpwgraph: PipeWire graph patchbay'
47 'realtime-privileges: system-wide realtime audio limits (audio group)'
48 'wine: Windows VST hosting via yabridge (experimental)'
49 'winetricks: helper for Wine prefix setup'
50 'yabridge: bridge Windows VST plugins on Linux'
51 'zenity: GUI dialogs for install/system-check helpers'
52)
53options=('!strip' '!debug')
54install="${pkgname}.install"
55# Display/audio profile baked into profile.env + desktop names.
56# Switch to "x11" before building if you run a pure X11 session (i3, etc.).
57_display_profile=wayland
58source=(
59 "TAPE-16-v${pkgver}-Linux-Release.zip::https://github.com/jackpaterson1/TAPE-16-Public-Releases/releases/download/${pkgver}/TAPE-16-v${pkgver}-Linux-Release.zip"
60)
61sha256sums=(
62 'a356d3f64dd89acdec18d60763c8b48553532da7a38c355a3010791fe87e4fea'
63)
64
65prepare() {
66 case "${_display_profile}" in
67 wayland|x11) ;;
68 *)
69 echo "Invalid _display_profile='${_display_profile}' (use wayland or x11)" >&2
70 return 1
71 ;;
72 esac
73
74 local profile_dir deb
75 case "${_display_profile}" in
76 wayland) profile_dir='TAPE 16 Wayland Deb' ;;
77 x11) profile_dir='TAPE 16 X11 Deb' ;;
78 esac
79
80 deb="$(find "${srcdir}" -type f -path "*/${profile_dir}/INSTALL-TAPE16.deb" | head -n1)"
81 if [[ -z "${deb}" || ! -f "${deb}" ]]; then
82 echo "Could not find ${profile_dir}/INSTALL-TAPE16.deb in the release zip" >&2
83 return 1
84 fi
85
86 rm -rf "${srcdir}/deb-root"
87 mkdir -p "${srcdir}/deb-root"
88 bsdtar -C "${srcdir}/deb-root" -xf "${deb}"
89 bsdtar -C "${srcdir}/deb-root" -xf "${srcdir}/deb-root/data.tar.zst"
90}
91
92package() {
93 cd "${srcdir}/deb-root"
94
95 # Application payload and launchers
96 install -dm755 "${pkgdir}/usr"
97 cp -a usr/. "${pkgdir}/usr/"
98
99 # Realtime limits (redundant with realtime-privileges, harmless if both present)
100 install -Dm644 etc/security/limits.d/tape16-audio.conf \
101 "${pkgdir}/etc/security/limits.d/99-tape16-audio.conf"
102
103 # License from bundled EULA
104 install -Dm644 "usr/lib/tape16/Resources/EULA.txt" \
105 "${pkgdir}/usr/share/licenses/${pkgname}/EULA.txt"
106 install -Dm644 "usr/lib/tape16/Resources/TERMS_AND_CONDITIONS.txt" \
107 "${pkgdir}/usr/share/licenses/${pkgname}/TERMS_AND_CONDITIONS.txt"
108 install -Dm644 "usr/lib/tape16/Resources/PRIVACY_POLICY.txt" \
109 "${pkgdir}/usr/share/licenses/${pkgname}/PRIVACY_POLICY.txt"
110
111 # Drop Debian packaging noise
112 rm -f "${pkgdir}/usr/share/doc/tape16/README.Debian"
113 rm -f "${pkgdir}/usr/share/doc/tape16/changelog.gz"
114
115 # Generic desktop name for Arch (profile still selected via profile.env)
116 if [[ -f "${pkgdir}/usr/share/applications/tape16.desktop" ]]; then
117 sed -i 's/^Name=.*/Name=TAPE 16/' "${pkgdir}/usr/share/applications/tape16.desktop"
118 sed -i 's/^Comment=.*/Comment=Destructive tape-style 16-track DAW/' \
119 "${pkgdir}/usr/share/applications/tape16.desktop"
120 fi
121 if [[ -f "${pkgdir}/usr/share/applications/tape16-lowlatency.desktop" ]]; then
122 sed -i 's/^Name=.*/Name=TAPE 16 (Low Latency)/' \
123 "${pkgdir}/usr/share/applications/tape16-lowlatency.desktop"
124 sed -i 's/^Comment=.*/Comment=TAPE 16 with lower PipeWire\/JACK buffer size/' \
125 "${pkgdir}/usr/share/applications/tape16-lowlatency.desktop"
126 fi
127}
128

Scan history

Scanned at (UTC)SeverityRules
2026-09-22 11:37:52 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