artery-isp-console-bin

LOW
maintainer taotieren 2 votes scanned 2026-11-01 00:21:48.120785
View on AUR
Why flagged

The package downloads a prebuilt binary from the official vendor's domain (arterytek.com) for a legitimate MCU programming tool; the host is not on standard whitelists but is plausibly the project's official source, and the installed files are consistent with the described functionality.

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 a prebuilt binary from the official vendor's domain (arterytek.com) for a legitimate MCU programming tool; the host is not on standard whitelists but is plausibly the project's official source, and the installed files are consistent with the described functionality.

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:36 source=("${_pkg_file_name}::https://www.arterytek.com/download/Program%20and%20Debug/Artery_ISP_Console_Linux-${arch}_V${pkgver}.zip"

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: taotieren <admin@taotieren.com>
2
3pkgname=artery-isp-console-bin
4pkgver=3.0.24
5pkgrel=1
6# epoch=1
7pkgdesc="Artery ISP Console 是一款基于 MCU Bootloader 的命令行应用程序。使用该应用程序,用户可以通过 UART 端口或者 USB 端口配置操作 Artery 的 MCU 设备。"
8arch=('x86_64')
9url="https://www.arterytek.com/cn/support/tools.jsp"
10license=('LicenseRef-Commercial')
11provides=(${pkgname%-bin} Artery_ISP_Console)
12conflicts=(${pkgname%-bin})
13replaces=()
14depends=(
15 bash
16 qt5-base
17 libgcc_s.so
18 libstdc++.so
19 libusb
20)
21makedepends=('unzip')
22optdepends=(
23 'at-link-console'
24 'at32-bootloader-doc'
25 'at32-ide'
26 'at32-ide-project-generate'
27 'at32-new-clock-configuration'
28 'at32-work-bench'
29 'at32-openocd'
30 'jlink-software-and-documentation: Segger JLink software & documentation pack for Linux'
31)
32backup=()
33options=('!strip' '!debug' '!lto')
34install=${pkgname}.install
35_pkg_file_name=Artery_ISP_Console_Linux-${arch}_V${pkgver}.zip
36source=("${_pkg_file_name}::https://www.arterytek.com/download/Program%20and%20Debug/Artery_ISP_Console_Linux-${arch}_V${pkgver}.zip"
37 ${pkgname}.install)
38sha256sums=('c3966acc21c26dd0e535fc9ab115d62d2977cda704604608fd672fef3411bc67'
39 'a5c4d923298e09eef75b9481ea4fd83998d01c1d3605f118edd42f89ee17e619')
40noextract=()
41
42package() {
43 unzip -O gbk -o "${srcdir}"/${_pkg_file_name} -d "${srcdir}"
44
45 cd "${srcdir}/"
46 install -dm0755 "${pkgdir}/opt/artery32/${pkgname%-bin}/" \
47 "${pkgdir}/usr/lib/"
48
49 cp -rv Document "${pkgdir}/opt/artery32/${pkgname%-bin}/Document"
50 cp -rv *.pdf "${pkgdir}/opt/artery32/${pkgname%-bin}/Document"
51
52 cd ${_pkg_file_name%.zip}
53 cp -rv Map "${pkgdir}/opt/artery32/${pkgname%-bin}/Map"
54 install -Dm0755 AT32_ISP_Console "${pkgdir}/opt/artery32/${pkgname%-bin}/AT32_ISP_Console"
55 install -dm0755 "${pkgdir}/usr/lib"
56 cp -rv {libAT*.so*,libFiles.so*} "${pkgdir}/usr/lib"
57 # install -Dm0644 AT32_ISP_Console.sh "${pkgdir}/opt/artery32/${pkgname%-bin}/AT32_ISP_Console.sh.template"
58 install -Dm0644 DFU_download.sh "${pkgdir}/opt/artery32/${pkgname%-bin}/DFU_download.sh.template"
59 install -Dm0644 I2C_download.sh "${pkgdir}/opt/artery32/${pkgname%-bin}/I2C_download.sh.template"
60 install -Dm0644 SPI_download.sh "${pkgdir}/opt/artery32/${pkgname%-bin}/SPI_download.sh.template"
61 install -Dm0644 USART_download.sh "${pkgdir}/opt/artery32/${pkgname%-bin}/USART_download.sh.template"
62
63 cd "${pkgdir}/usr/lib/"
64 for lib in lib*; do
65 ln -sf /usr/lib/"$lib" "${pkgdir}/usr/lib/${lib%.0.0}"
66 ln -sf /usr/lib/"$lib" "${pkgdir}/usr/lib/${lib%.1.0.0}"
67 done
68
69 install -Dm0644 /dev/stdin "${pkgdir}/usr/lib/udev/rules.d/49-artery32-udev.rules" <<EOF
70# Copy this file to /etc/udev/rules.d/
71# If rules fail to reload automatically, you can refresh udev rules
72# with the command "udevadm control --reload"
73
74ACTION!="add|change", GOTO="artery32_udev_rules_end"
75
76SUBSYSTEM=="gpio", MODE="0660", TAG+="uaccess"
77
78SUBSYSTEM!="usb|tty|hidraw", GOTO="artery32_udev_rules_end"
79
80# Artery tek
81ATTRS{idVendor}=="2e3c", ATTRS{idProduct}=="f000", MODE="660", TAG+="uaccess"
82ATTRS{idVendor}=="2e3c", ATTRS{idProduct}=="df11", MODE="660", TAG+="uaccess"
83
84# If you share your linux system with other users, or just don't like the
85# idea of write permission for everybody, you can replace MODE:="0666" with
86# OWNER:="yourusername" to create the device owned by you, or with
87# GROUP:="somegroupname" and mange access using standard unix groups.
88
89LABEL="artery32_udev_rules_end"
90EOF
91
92 install -Dm0755 /dev/stdin "${pkgdir}/usr/bin/${pkgname%-bin}" <<EOF
93#!/bin/bash
94/opt/artery32/${pkgname%-bin}/AT32_ISP_Console "\$@"
95EOF
96 chown -R root:root "${pkgdir}/"
97}
98

Scan history

Scanned at (UTC)SeverityRules
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

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion