macros-git

maintainer ethanstokes · 0 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The pnpm install runs on the project's own UI subdirectory from the git source, which is a normal build step for a frontend component, not an external unreviewed package install.

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 pnpm install runs on the project's own UI subdirectory from the git source, which is a normal build step for a frontend component, not an external unreviewed package install.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM npm/yarn/pnpm install of an undeclared external package npm_install_external

Runs `npm/yarn/pnpm install <package>` for a package not in source=(), pulling unpinned, unreviewed code at build time. Severity downgraded: the package declares/looks like a Node.js consumer, where build-time installs are expected.

  • PKGBUILD:32 pnpm install --dir ui

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Ethan Stokes <erstokes10@gmail.com>
2
3pkgname=macros-git
4pkgver=0.4.0.r233.01215d8
5pkgrel=1
6pkgdesc='A Tauri app to manage and run macros on Linux.'
7url='https://github.com/EthanRStokes/macros'
8arch=('x86_64')
9license=('GPL-3.0-only')
10makedepends=('rust' 'git' 'gcc' 'glibc' 'pnpm')
11depends=(
12 'gtk3' 'nss' 'alsa-lib' 'hicolor-icon-theme' 'webkit2gtk-4.1'
13 'libgcc' 'glibc'
14)
15conflicts=('macros')
16provides=('macros')
17source=("git+https://github.com/EthanRStokes/macros")
18sha256sums=('SKIP')
19options=('!lto')
20
21pkgver() {
22 cd "$srcdir/macros"
23 printf "%s.r%s.%s" "$(git describe --tags --abbrev=0 | sed 's/^v//')" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
24}
25
26prepare() {
27 cd "$srcdir/macros"
28 git reset --hard HEAD
29 git_tag="$(git describe --tags --abbrev=0 | sed 's/^v//')"
30
31 cargo fetch
32 pnpm install --dir ui
33}
34
35build() {
36 cd "$srcdir/macros"
37 export MACROS_PNPM_OFFLINE=1
38 cargo build --release --frozen
39}
40
41package() {
42 cd "$srcdir/macros"
43
44 local libdir="$pkgdir/usr/lib/macros"
45
46 # Binary's RUNPATH is $ORIGIN, so the CEF runtime payload (libcef.so,
47 # GL/Vulkan shims, *.pak, icudtl.dat, locales/, ...) has to live alongside
48 # it in a private libdir, not /usr/bin.
49 install -Dm755 "target/release/macros" "$libdir/macros"
50 install -Dm755 "target/release/libcef.so" "$libdir/libcef.so"
51 install -Dm755 "target/release/libEGL.so" "$libdir/libEGL.so"
52 install -Dm755 "target/release/libGLESv2.so" "$libdir/libGLESv2.so"
53 install -Dm755 "target/release/libvk_swiftshader.so" "$libdir/libvk_swiftshader.so"
54 install -Dm755 "target/release/libvulkan.so.1" "$libdir/libvulkan.so.1"
55 install -Dm755 "target/release/chrome-sandbox" "$libdir/chrome-sandbox"
56 install -Dm644 "target/release/vk_swiftshader_icd.json" "$libdir/vk_swiftshader_icd.json"
57 install -Dm644 "target/release/icudtl.dat" "$libdir/icudtl.dat"
58 install -Dm644 "target/release/v8_context_snapshot.bin" "$libdir/v8_context_snapshot.bin"
59 install -Dm644 "target/release/chrome_100_percent.pak" "$libdir/chrome_100_percent.pak"
60 install -Dm644 "target/release/chrome_200_percent.pak" "$libdir/chrome_200_percent.pak"
61 install -Dm644 "target/release/resources.pak" "$libdir/resources.pak"
62 cp -r "target/release/locales" "$libdir/locales"
63
64 install -d "$pkgdir/usr/bin"
65 ln -sf /usr/lib/macros/macros "$pkgdir/usr/bin/macros"
66
67 install -Dm644 "res/icons/macros.png" "$pkgdir"/usr/share/icons/hicolor/256x256/apps/macros.png
68 install -Dm644 "res/macros.desktop" "$pkgdir"/usr/share/applications/macros.desktop
69}
70

Changes since previous scan

--- PKGBUILD @ 2026-07-08 03:27
+++ PKGBUILD @ 2026-08-03 00:08
@@ -1,17 +1,16 @@
# Maintainer: Ethan Stokes <erstokes10@gmail.com>
pkgname=macros-git
-pkgver=0.3.1.r137.cfec47a
+pkgver=0.4.0.r233.01215d8
pkgrel=1
-pkgdesc='A libcosmic app to manage and run macros on Linux.'
+pkgdesc='A Tauri app to manage and run macros on Linux.'
url='https://github.com/EthanRStokes/macros'
arch=('x86_64')
license=('GPL-3.0-only')
-makedepends=('rust' 'git' 'gcc' 'glibc')
+makedepends=('rust' 'git' 'gcc' 'glibc' 'pnpm')
depends=(
- 'expat' 'fontconfig' 'libxkbcommon' 'freetype2' 'hicolor-icon-theme' 'cosmic-icon-theme'
+ 'gtk3' 'nss' 'alsa-lib' 'hicolor-icon-theme' 'webkit2gtk-4.1'
'libgcc' 'glibc'
- "libx11" "libxi" "libxtst"
)
conflicts=('macros')
provides=('macros')
@@ -30,22 +29,42 @@
git_tag="$(git describe --tags --abbrev=0 | sed 's/^v//')"
cargo fetch
+ pnpm install --dir ui
}
build() {
cd "$srcdir/macros"
- cargo build --release
+ export MACROS_PNPM_OFFLINE=1
+ cargo build --release --frozen
}
package() {
cd "$srcdir/macros"
- install -Dm755 "target/release/macros" "$pkgdir"/usr/bin/macros
+
+ local libdir="$pkgdir/usr/lib/macros"
+
+ # Binary's RUNPATH is $ORIGIN, so the CEF runtime payload (libcef.so,
+ # GL/Vulkan shims, *.pak, icudtl.dat, locales/, ...) has to live alongside
+ # it in a private libdir, not /usr/bin.
+ install -Dm755 "target/release/macros" "$libdir/macros"
+ install -Dm755 "target/release/libcef.so" "$libdir/libcef.so"
+ install -Dm755 "target/release/libEGL.so" "$libdir/libEGL.so"
+ install -Dm755 "target/release/libGLESv2.so" "$libdir/libGLESv2.so"
+ install -Dm755 "target/release/libvk_swiftshader.so" "$libdir/libvk_swiftshader.so"
+ install -Dm755 "target/release/libvulkan.so.1" "$libdir/libvulkan.so.1"
+ install -Dm755 "target/release/chrome-sandbox" "$libdir/chrome-sandbox"
+ install -Dm644 "target/release/vk_swiftshader_icd.json" "$libdir/vk_swiftshader_icd.json"
+ install -Dm644 "target/release/icudtl.dat" "$libdir/icudtl.dat"
+ install -Dm644 "target/release/v8_context_snapshot.bin" "$libdir/v8_context_snapshot.bin"
+ install -Dm644 "target/release/chrome_100_percent.pak" "$libdir/chrome_100_percent.pak"
+ install -Dm644 "target/release/chrome_200_percent.pak" "$libdir/chrome_200_percent.pak"
+ install -Dm644 "target/release/resources.pak" "$libdir/resources.pak"
+ cp -r "target/release/locales" "$libdir/locales"
+
+ install -d "$pkgdir/usr/bin"
+ ln -sf /usr/lib/macros/macros "$pkgdir/usr/bin/macros"
install -Dm644 "res/icons/macros.png" "$pkgdir"/usr/share/icons/hicolor/256x256/apps/macros.png
install -Dm644 "res/macros.desktop" "$pkgdir"/usr/share/applications/macros.desktop
-
- install -Dm644 "res/icons/remove.svg" "$pkgdir"/usr/share/macros/icons/remove.svg
- install -Dm644 "res/icons/up.svg" "$pkgdir"/usr/share/macros/icons/up.svg
- install -Dm644 "res/icons/down.svg" "$pkgdir"/usr/share/macros/icons/down.svg
}

Scan history

Scanned at (UTC)SeverityRules
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 07:17:22 MEDIUM 1
2026-07-08 03:27:03 CLEAN 0
2026-06-18 16:11:54 CLEAN 0

Report a package

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

0 / 4000
Your suggestion