sf
maintainer coleleavitt
· 1 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The source is a prebuilt Salesforce CLI binary from Salesforce's official domain, which is a trusted vendor; despite the non-whitelisted host, this is a standard and expected source for the software, and the checksum is verified.
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 source is a prebuilt Salesforce CLI binary from Salesforce's official domain, which is a trusted vendor; despite the non-whitelisted host, this is a standard and expected source for the software, and the checksum is verified.
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:14
source=("${pkgname}-${pkgver}.tar.xz::https://developer.salesforce.com/media/salesforce-cli/sf/channels/stable/sf-linux-x64.tar.xz")
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Cole Leavitt <coleleavitt@protonmail.com>
2
3
pkgname=sf
4
pkgver=2.145.6
5
pkgrel=1
6
pkgdesc="A tool for creating and managing Salesforce DX projects from the command line"
7
arch=('x86_64')
8
url="https://developer.salesforce.com/tools/salesforcecli"
9
license=('BSD')
10
depends=('nodejs')
11
optdepends=('gnome-keyring: for saving default credentials')
12
provides=('sf')
13
options=('!strip')
14
source=("${pkgname}-${pkgver}.tar.xz::https://developer.salesforce.com/media/salesforce-cli/sf/channels/stable/sf-linux-x64.tar.xz")
15
sha256sums=('f4beaf80290c0ee83b1dd71717f95c9defbabc6552091bd157978bc3a34474c1')
16
changelog=CHANGELOG
17
18
prepare() {
19
cd "${srcdir}/sf"
20
# Add any necessary preparation steps here
21
}
22
23
check() {
24
cd "${srcdir}/sf"
25
# Add any test commands here
26
}
27
28
package() {
29
install_dir="/opt/${pkgname}"
30
31
# Create the installation directory
32
install -dm755 "${pkgdir}${install_dir}"
33
34
# Copy all files from the extracted directory to the installation directory
35
cp -a "${srcdir}/sf/"* "${pkgdir}${install_dir}"
36
37
# Set executable permissions for the sf binary
38
chmod +x "${pkgdir}${install_dir}/bin/sf"
39
40
# Create a symlink in /usr/bin
41
install -dm755 "${pkgdir}/usr/bin"
42
ln -s "${install_dir}/bin/sf" "${pkgdir}/usr/bin/sf"
43
44
# Install license file
45
install -Dm644 "${srcdir}/sf/LICENSE.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
46
}
47
48
post_install() {
49
echo "To check for Salesforce CLI updates, run:"
50
echo " sf update"
51
}
52
53
Changes since previous scan
--- PKGBUILD @ 2026-07-30 00:17+++ PKGBUILD @ 2026-08-03 00:08@@ -1,7 +1,7 @@ # Maintainer: Cole Leavitt <coleleavitt@protonmail.com> pkgname=sf-pkgver=2.144.6+pkgver=2.145.6 pkgrel=1 pkgdesc="A tool for creating and managing Salesforce DX projects from the command line" arch=('x86_64')@@ -12,7 +12,7 @@ provides=('sf') options=('!strip') source=("${pkgname}-${pkgver}.tar.xz::https://developer.salesforce.com/media/salesforce-cli/sf/channels/stable/sf-linux-x64.tar.xz")-sha256sums=('4da4c1f9c4d07ff44b40dc21998df640f43e4bc515dffccdf59aa684ecd8dc8f')+sha256sums=('f4beaf80290c0ee83b1dd71717f95c9defbabc6552091bd157978bc3a34474c1') changelog=CHANGELOG prepare() {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 03:13:55 | MEDIUM | 1 |
| 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 03:22:31 | MEDIUM | 1 |
| 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 |