nvidia-sync-terminal-fix
nvidia-sync
scanned 2026-09-17 00:27:14.276658
The package downloads a .deb from NVIDIA's official domain (download.nvidia.com), which is a legitimate source for NVIDIA software; extracting and installing it is standard for AUR packages, and the installed files are transparent and expected for the application.
Triggered rules
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 downloads a .deb from NVIDIA's official domain (download.nvidia.com), which is a legitimate source for NVIDIA software; extracting and installing it is standard for AUR packages, and the installed files are transparent and expected for the application.
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:11
"https://workbench.download.nvidia.com/stable/linux/debian/pool/proprietary/n/nvidia-sync/nvidia-sync_${pkgver}_amd64.deb"
PKGBUILD
1 offending line(s) highlighted# Maintainer: Johnathon Schultz <jomoschultz+aur [at] gmail [dot] com>
pkgname=('nvidia-sync' 'nvidia-sync-terminal-fix')
pkgver=0.100.18
pkgrel=1
arch=('x86_64')
url="https://build.nvidia.com/spark/connect-to-your-spark/sync"
license=('custom:NVIDIA')
source=(
"https://workbench.download.nvidia.com/stable/linux/debian/pool/proprietary/n/nvidia-sync/nvidia-sync_${pkgver}_amd64.deb"
"nvidia-sync-terminal-launcher.sh"
)
sha256sums=('2eeee871e2db29a33ac8f75c3234b59b5804f5edea4923393224acc4b6c776ee'
'1cd21fa2618882fae08d26211638c53d60e54573ca8dee42803692fe71a2af4e')
package_nvidia-sync() {
pkgdesc="NVIDIA Sync is a desktop app that connects your computer to your DGX Spark over the local network. It gives you a single interface to manage SSH access and launch development tools on your DGX Spark."
depends=('gtk3' 'libxss' 'nss' 'libsecret') # Common dependencies for Electron apps
optdepends=(
'gnome-terminal: For Terminal button support'
'nvidia-sync-terminal-fix: For Terminal button support on non-GNOME desktops'
)
# A .deb file is just an 'ar' archive. We extract it.
ar -x "${srcdir}/nvidia-sync_${pkgver}_amd64.deb"
# The 'ar' command gives us a 'data.tar.xz'. We extract that into the package folder.
tar -xf data.tar.xz -C "${pkgdir}/"
# Copy the license file
install -Dm644 "${pkgdir}/opt/NVIDIA Sync/LICENSE.electron.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
# Create a symlink so 'nvidia-sync' is on the user's PATH
# We must make the /usr/bin directory first
install -d "${pkgdir}/usr/bin"
ln -s "/opt/NVIDIA Sync/nvidia-sync" "${pkgdir}/usr/bin/nvidia-sync"
}
package_nvidia-sync-terminal-fix() {
pkgdesc="Terminal fix for nvidia-sync on non-GNOME desktops"
depends=('nvidia-sync') # Depends on the main app + a fallback terminal
optdepends=(
'ghostty: Preferred terminal'
'alacritty: Preferred terminal'
'konsole: Preferred terminal'
)
provides=('gnome-terminal') # This package PROVIDES the command
conflicts=('gnome-terminal') # And it CONFLICTS with the real one
# Install our wrapper script to /usr/bin
install -Dm755 "${srcdir}/nvidia-sync-terminal-launcher.sh" "${pkgdir}/usr/bin/nvidia-sync-terminal-launcher"
# Create the fake 'gnome-terminal' symlink
ln -s "/usr/bin/nvidia-sync-terminal-launcher" "${pkgdir}/usr/bin/gnome-terminal"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 00:19:22 | Low | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 00:04:09 | Low | 2 |
| 2026-09-08 00:18:08 | Low | 2 |
| 2026-09-07 00:30:15 | Low | 2 |
| 2026-09-06 00:17:06 | Low | 2 |
| 2026-09-05 00:16:27 | Low | 2 |
| 2026-09-04 00:03:13 | Low | 2 |
| 2026-09-03 00:15:47 | Low | 2 |
| 2026-09-02 00:02:31 | Low | 2 |
| 2026-09-01 00:11:19 | Low | 2 |
| 2026-08-31 00:19:57 | Low | 2 |
| 2026-08-30 00:04:14 | Low | 2 |
| 2026-08-29 00:29:17 | Low | 2 |