brother-mfc-l2700dw
maintainer stefano
· 11 votes
· scanned 2026-08-18 00:03:42.021799
LOW
View on AUR ↗
Why flagged
The package downloads official Brother driver RPMs from brother.com's download subdomain, which is the vendor's legitimate distribution infrastructure; despite the static analyzer flag for a non-standard host, this is a normal and expected source for proprietary drivers, and the checksums are 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 package downloads official Brother driver RPMs from brother.com's download subdomain, which is the vendor's legitimate distribution infrastructure; despite the static analyzer flag for a non-standard host, this is a normal and expected source for proprietary drivers, and the checksums are 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:13
"http://download.brother.com/welcome/dlf101789/mfcl2700dwlpr-$pkgver-$pkgrel.i386.rpm"
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Stefano <stefanomilani92@gmail.com>
2
pkgname="brother-mfc-l2700dw"
3
pkgver="3.2.0"
4
pkgrel=2
5
pkgdesc="LPR and CUPS driver for the Brother MFC-L2700DW"
6
arch=('i686' 'x86_64')
7
url="https://support.brother.com/g/b/producttop.aspx?c=us&lang=en&prod=mfcl2700dw_us_eu_as"
8
license=('custom:brother commercial license')
9
depends=('cups')
10
depends_x86_64=('lib32-glibc')
11
install="$pkgname.install"
12
source=(
13
"http://download.brother.com/welcome/dlf101789/mfcl2700dwlpr-$pkgver-$pkgrel.i386.rpm"
14
"http://download.brother.com/welcome/dlf101790/mfcl2700dwcupswrapper-$pkgver-$pkgrel.i386.rpm"
15
'cupswrapper-license.txt'
16
'lpr-license.txt'
17
)
18
sha256sums=(
19
'de599f5d4b97750984befd2f9731ca73b4dbccbee442107259b1c5c0c48c1a8d'
20
'552ba52371cdd47a4e47ab2e5e564ac58e1fbe1bcd530c3d388bc1464bdb9c07'
21
'2c6aa6a641332e5c87e971ac2a8beae13b059747bdba331bbd515914770d72d9'
22
'9d85a8aafdaac8fac80e04234ad2acf5642bbf0b91ee582d2a89519a55f6dd67'
23
)
24
prepare() {
25
# do not install in '/usr/local'
26
if [ -d $srcdir/usr/local/Brother ]; then
27
install -dm755 "$srcdir/usr/share"
28
mv "$srcdir/usr/local/Brother/" "$srcdir/usr/share/brother"
29
rm -rf "$srcdir/usr/local"
30
sed -i 's|/usr/local/Brother|/usr/share/brother|g' `grep -lr '/usr/local/Brother' ./`
31
fi
32
# setup cups-directories
33
install -dm755 "$srcdir/usr/share/cups/model"
34
install -dm755 "$srcdir/usr/lib/cups/filter"
35
# copy ppd and filter file to their destination dirs
36
cd `find . -type d -name 'cupswrapper'`
37
cp *lpdwrapper* "$srcdir/usr/lib/cups/filter/"
38
cp *.ppd "$srcdir/usr/share/cups/model/"
39
# set the basedir to an absolute path in the perl-lpdwrapper-script
40
# the relative path,generated on the basis of the caller, does not work in this case
41
cd "$srcdir"
42
# get absolute printer path
43
_baseDir="\"/$(find opt -maxdepth 3 -depth -print -quit -type d)\""
44
# replace the dynamic basedir var with the absolute path
45
sed -i "s|\`readlink\ \$0\`|$_baseDir|" $srcdir/usr/lib/cups/filter/*lpdwrapper*
46
# /etc/printcap is managed by cups
47
rm "$(find $srcdir -type f -name 'setupPrintcap*')"
48
}
49
package() {
50
cp -R "$srcdir/usr" "$pkgdir"
51
cp -R "$srcdir/opt" "$pkgdir"
52
install -m 644 -D cupswrapper-license.txt $pkgdir/usr/share/licenses/${pkgname}/cupswrapper-licence.txt
53
install -m 644 -D lpr-license.txt $pkgdir/usr/share/licenses/${pkgname}/lpr-licence.txt
54
}
55
56
Changes since previous scan
--- PKGBUILD @ 2026-08-11 17:21+++ PKGBUILD @ 2026-08-18 00:03@@ -15,10 +15,11 @@ 'cupswrapper-license.txt' 'lpr-license.txt' )-md5sums=('ff69f49954e8fea524787c617ac3fcfd'- '061ca3a558720d9fdcb000eaad394690'- '97ad0cffd216059e9d1d3121899d8646'- '5e87a3dc0f3e3438c088eda0f3565f0d'+sha256sums=(+'de599f5d4b97750984befd2f9731ca73b4dbccbee442107259b1c5c0c48c1a8d' +'552ba52371cdd47a4e47ab2e5e564ac58e1fbe1bcd530c3d388bc1464bdb9c07'+'2c6aa6a641332e5c87e971ac2a8beae13b059747bdba331bbd515914770d72d9'+'9d85a8aafdaac8fac80e04234ad2acf5642bbf0b91ee582d2a89519a55f6dd67' ) prepare() { # do not install in '/usr/local'Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-18 00:03:42 | LOW | 2 |
| 2026-08-17 00:18:29 | LOW | 2 |
| 2026-08-16 00:03:42 | LOW | 2 |
| 2026-08-15 00:26:13 | LOW | 2 |
| 2026-08-14 00:03:41 | LOW | 2 |
| 2026-08-13 00:17:07 | LOW | 2 |
| 2026-08-12 00:27:08 | LOW | 2 |
| 2026-08-11 19:21:46 | MEDIUM | 1 |
| 2026-08-11 17:21:34 | MEDIUM | 1 |
| 2026-08-11 15:21:23 | MEDIUM | 1 |
| 2026-06-19 23:51:18 | CLEAN | 2 |
| 2026-06-18 16:11:54 | MEDIUM | 1 |