zsa-keymapp-bin
The package downloads a versioned tarball from the vendor's own CDN (DigitalOcean Spaces) for a legitimate ZSA keyboard utility; the source is not executed remotely and the worst case of a swapped host would be a malicious binary, but it is still the official distribution method for this software.
Triggered rules
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 versioned tarball from the vendor's own CDN (DigitalOcean Spaces) for a legitimate ZSA keyboard utility; the source is not executed remotely and the worst case of a swapped host would be a malicious binary, but it is still the official distribution method for this software.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:27
source=("${pkgname}-${pkgver}.tar.gz::https://oryx.nyc3.cdn.digitaloceanspaces.com/keymapp/keymapp-latest.tar.gz"
PKGBUILD
1 offending line(s) highlighted# Maintainer: Sebastian Wiesner <sebastian@swsnr.de>
# Contributor: Michael Cooper <mythmon at gmail dot com>
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted.
# THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
pkgname=zsa-keymapp-bin
_pkgname=keymapp
pkgver=1.3.7
pkgrel=1
pkgdesc="A live visual reference for your ZSA keyboard"
arch=(x86_64)
url="https://zsa.io/flash"
license=(custom:not-provided)
depends=(libusb gtk3)
depends=(zsa-udev libusb gtk3 webkit2gtk-4.1)
# ZSA does not seem to provide a proper versioned download for keymapp, so just grab the latest one.
# If the checksum fails we know there's a new version.
source=("${pkgname}-${pkgver}.tar.gz::https://oryx.nyc3.cdn.digitaloceanspaces.com/keymapp/keymapp-latest.tar.gz"
'keymapp.desktop')
sha256sums=('a87bc7083cd6461ba10e0da4b94f249a29100d712542d54498f01e947cf868fa'
'798667e23dfc74f6a4c65f7ecb9838dec4987a2c4224fe9bb38e85cb2d2ad861')
package() {
install -Dm0755 "${srcdir}/keymapp" "${pkgdir}/usr/bin/keymapp"
install -Dm0644 -t "${pkgdir}/usr/share/applications/" "${srcdir}/keymapp.desktop"
install -Dm0644 "${srcdir}/icon.png" "${pkgdir}/usr/share/pixmaps/keymapp.png"
mkdir -p "${pkgdir}/usr/share/licenses/${pkgname}"
echo "No license information provided" > "${pkgdir}/usr/share/licenses/${pkgname}/license.md"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-01 00:21:48 | Low | 2 |
| 2026-10-31 00:07:41 | Low | 2 |
| 2026-10-30 00:29:30 | Low | 2 |
| 2026-10-29 00:13:55 | Low | 2 |
| 2026-10-28 00:06:54 | Low | 2 |
| 2026-10-27 00:23:28 | Low | 2 |
| 2026-10-26 00:12:40 | Low | 2 |
| 2026-10-25 00:20:48 | Low | 2 |
| 2026-10-24 00:14:55 | Low | 2 |
| 2026-10-23 00:02:19 | Low | 2 |
| 2026-10-22 00:13:10 | Low | 2 |
| 2026-10-21 00:12:50 | Low | 2 |
| 2026-10-20 00:10:31 | Low | 2 |
| 2026-10-19 00:03:55 | Low | 2 |
| 2026-10-18 00:06:55 | Low | 2 |
| 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 |