bcompare-mate
bcompare
scanned 2026-09-17 00:27:14.276658
The source is a prebuilt tarball from the official vendor's domain (scootersoftware.com), which is the legitimate and expected source for this proprietary software, making the download appropriate despite the non-whitelisted host.
Triggered rules
llm_review
An AI model (qwen/qwen3-235b-a22b-2507) reviewed this and agrees it is LOW (confidence 95%): The source is a prebuilt tarball from the official vendor's domain (scootersoftware.com), which is the legitimate and expected source for this proprietary software, making the download appropriate despite the non-whitelisted host.
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:23
source=("https://www.scootersoftware.com/files/${pkgbase}-${pkgver}.x86_64.tar.gz")
PKGBUILD
1 offending line(s) highlighted# Maintainer: Musikolo <musikolo {at} hotmail [dot] com>
# Contributor: Magician <magician21 ett lycos daht com>
# Contributor: Petrovo https://aur.archlinux.org/account.php?Action=AccountInfo&ID=33361
# Contributor: Pierre-François Gomez https://aur.archlinux.org/account/pef/
# Contributor: Shura https://aur.archlinux.org/account/shura/
# Contributor: Michael Hansen <zrax0111 gmail com>
# Contributor: Wesley Chan https://aur.archlinux.org/account/Wesley_Chan
# Original PKGBUILD file from:
# - https://bbs.archlinux.org/viewtopic.php?pid=757428#p757428
# - http://www.scootersoftware.com/vbulletin/showpost.php?s=3c1f289bc76655230b49f440dbe17b53&p=26449&postcount=7
pkgbase=bcompare
pkgname=('bcompare' 'bcompare-kde6' 'bcompare-kde5' 'bcompare-kde4' 'bcompare-nautilus' 'bcompare-thunar' 'bcompare-cinnamon' 'bcompare-mate')
pkgver=5.2.5.32528
pkgrel=1
arch=('x86_64')
url='https://www.scootersoftware.com'
license=('custom')
groups=('utility')
depends=('qt6-base')
makedepends=('sed')
source=("https://www.scootersoftware.com/files/${pkgbase}-${pkgver}.x86_64.tar.gz")
sha256sums=('aaa9967ca7b74bab9e1ccfad118c5417331c2c8ec26c4b8d05e8a41605f4a847')
options=('!strip') # Do not strip binaries because it breaks them down
prepare() {
# Prepare the directory skeleton needed for install.sh
_install_dir="${srcdir}/install"
install -m 755 -d "${_install_dir}/usr/share/applications"
install -m 755 -d "${_install_dir}/usr/share/doc/${pkgname}"
install -m 755 -d "${_install_dir}/usr/share/mime/packages"
install -m 755 -d "${_install_dir}/usr/share/pixmaps"
# Set up KDE4 service menus
install -m 755 -d "${_install_dir}/usr/lib/kde4"
install -m 755 -d "${_install_dir}/usr/share/kde4/services"
# Set up Gnome service menus
install -m 755 -d "${_install_dir}/usr/lib/nautilus/extensions-4"
install -m 755 -d "${_install_dir}/usr/lib/nautilus/extensions-3.0"
install -m 755 -d "${_install_dir}/usr/lib/nemo/extensions-3.0"
install -m 755 -d "${_install_dir}/usr/lib/caja/extensions-3.0"
# Set up Xfce service menus
install -m 755 -d "${_install_dir}/usr/lib/thunarx-2"
install -m 755 -d "${_install_dir}/usr/lib/thunarx-3"
# Apply some fixes on install.sh script
cd "${pkgbase}-${pkgver}"
sed -i 's|/usr/|${PREFIX}/usr/|g' install.sh
sed -i 's|${PREFIX}/usr/bin|/usr/bin|g' install.sh
sed -i '/-h \/lib64/{N;N;d;}' install.sh
sed -i 's|kde4-config -v|kde4-config -v 2> /dev/null|' install.sh
}
package_bcompare() {
pkgdesc="Beyond Compare 5: Compare, sync, and merge files and folders."
optdepends=('bcompare-kde6: KDE Plasma 6 service menus for Beyond Compare 5.'
'bcompare-kde5: KDE Plasma 5 service menus for Beyond Compare 5.'
'bcompare-kde4: KDE 4 service menus for Beyond Compare 5.'
'bcompare-nautilus: Gnome/Nautilus service menus for Beyond Compare 5.'
'bcompare-thunar: Xfce/Thunar service menus for Beyond Compare 5.'
'bcompare-cinnamon: Cinnamon service menus for Beyond Compare 5.'
'bcompare-mate: MATE service menus for Beyond Compare 5.' )
install=${pkgbase}.install
# Excecute install script - needs to be run here
cd "${pkgbase}-${pkgver}"
_install_dir="${srcdir}/install"
sh -version &> /dev/null && sh install.sh --prefix="${_install_dir}"\
|| bash install.sh --prefix="${_install_dir}"
# Prepare the directory skeleton needed for install.sh
cp -r "${_install_dir}/bin" "${pkgdir}/"
cp -r "${_install_dir}/lib" "${pkgdir}/"
cp -r "${_install_dir}/usr" "${pkgdir}/"
# Move some directories to usr
cd "${pkgdir}"
if [ -d usr/lib ]; then
mv usr/lib/* lib
fi
mv bin lib usr/
# Fix wrong paths
sed -i "s|"${_install_dir}"|/usr|g" usr/bin/bcompare
# Remove KDE, Gnome and Xfce files
rm -rf "${pkgdir}/usr/share/kde4"
rm -rf "${pkgdir}/usr/lib/x86_64-linux-gnu"
rm -rf "${pkgdir}/usr/lib/kde4"
rm -rf "${pkgdir}/usr/lib/nautilus"
rm -rf "${pkgdir}/usr/lib/thunarx-2"
rm -rf "${pkgdir}/usr/lib/thunarx-3"
rm -rf "${pkgdir}/usr/lib/caja"
rm -rf "${pkgdir}/usr/lib/nemo"
pushd usr/lib/beyondcompare/ > /dev/null
rm -f kde_context_menu uninstall.sh
mv help "${pkgdir}/usr/share/doc/${pkgname}"
mv copyright README "${pkgdir}/usr/share/doc/${pkgname}/"
rm -rf ext
popd > /dev/null
# Clean some mime files
pushd usr/share > /dev/null
mv mime/packages .
rm -rf mime/*
mv packages mime/
popd > /dev/null
}
package_bcompare-kde6() {
pkgdesc="KDE Plasma 6 service menus for Beyond Compare 5."
depends=('bcompare')
install=${pkgbase}-kde-plasma.install
msg2 "Packaging KDE Plasma 6 service menus..."
cd "${srcdir}/install/lib/beyondcompare/ext"
install -m 755 -D -t "${pkgdir}/usr/lib/qt6/plugins/kf6/kfileitemaction" bcompare_ext_kde6.amd64.so
msg2 "Done!"
}
package_bcompare-kde5() {
pkgdesc="KDE Plasma 5 service menus for Beyond Compare 5."
depends=('bcompare' 'kinit5')
install=${pkgbase}-kde-plasma.install
# Set up service menus
msg2 "Packaging KDE Plasma 5 service menus..."
cd "${srcdir}/install/lib/beyondcompare/ext"
install -m 755 -D -t "${pkgdir}/usr/lib/qt/plugins/kf5/kfileitemaction" bcompare_ext_kde5.amd64.so
msg2 "Done!"
}
package_bcompare-kde4() {
pkgdesc="KDE 4 service menus for Beyond Compare 5."
depends=('bcompare')
replaces=('bcompare-kde')
conflicts=('bcompare-kde')
msg2 "Packaging KDE 4 service menus..."
_install_dir="${srcdir}/install"
# Set up service menus
install -m 755 -d "${pkgdir}/usr/lib"
install -m 755 -d "${pkgdir}/usr/share"
mv "${_install_dir}/usr/lib/kde4" "${pkgdir}/usr/lib/"
mv "${_install_dir}/usr/share/kde4" "${pkgdir}/usr/share"
msg2 "Done!"
}
package_bcompare-nautilus() {
pkgdesc="Gnome/Nautilus service menus for Beyond Compare 5."
depends=('bcompare')
provides=('bcompare-gnome')
msg2 "Packaging Gnome/Nautilus service menus..."
_install_dir="${srcdir}/install"
# Set up service menus
install -m 755 -d "${pkgdir}/usr/lib"
mv "${_install_dir}/usr/lib/nautilus" "${pkgdir}/usr/lib/"
msg2 "Done!"
}
package_bcompare-thunar() {
pkgdesc="Xfce/Thunar service menus for Beyond Compare 5."
depends=('bcompare')
provides=('bcompare-xfce')
msg2 "Packaging Xfce/Thunar service menus..."
_install_dir="${srcdir}/install"
# Set up service menus
install -m 755 -d "${pkgdir}/usr/lib"
mv "${_install_dir}/usr/lib/thunarx-2" "${pkgdir}/usr/lib/"
mv "${_install_dir}/usr/lib/thunarx-3" "${pkgdir}/usr/lib/"
msg2 "Done!"
}
package_bcompare-cinnamon() {
pkgdesc="Cinnamon service menus for Beyond Compare 5."
depends=('bcompare')
msg2 "Packaging Cinnamon service menus..."
_install_dir="${srcdir}/install"
# Set up service menus
install -m 755 -d "${pkgdir}/usr/lib"
mv "${_install_dir}/usr/lib/nemo" "${pkgdir}/usr/lib/"
msg2 "Done!"
}
package_bcompare-mate() {
pkgdesc="MATE service menus for Beyond Compare 5."
depends=('bcompare')
msg2 "Packaging MATE service menus..."
_install_dir="${srcdir}/install"
# Set up service menus
install -m 755 -d "${pkgdir}/usr/lib"
mv "${_install_dir}/usr/lib/caja" "${pkgdir}/usr/lib/"
msg2 "Done!"
}
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 |