xmind2md

maintainer chirag297 · 1 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The PKGBUILD sources from the official GitHub repository of the maintainer (tagged release tarball), which is a legitimate upstream source. The `pip install xmindparser` happens at runtime (inside a user-owned virtualenv under $HOME), not during the build/install phase, so it does not affect the system package installation. This is a sloppy packaging pattern (the dependency should be declared as a proper AUR/pacman dependency like `python-xmindparser` rather than fetched via pip at runtime), but it is not a build-time supply-chain risk. The sha256sums='SKIP' is also sloppy but not malicious. The overall concern is low: no executed binaries from unofficial hosts, no obfuscation, no system-level pip install. The cheaper model's MEDIUM rating is a false positive — the pip call is a runtime user-space action, not a package-installation-time code execution concern.

Triggered rules

LOW AI review downgraded a static finding llm_review

The static rules flagged this MEDIUM, but an AI model (anthropic/claude-4.6-sonnet-20260217) reviewed the full PKGBUILD and judged it LOW (confidence 82%): The PKGBUILD sources from the official GitHub repository of the maintainer (tagged release tarball), which is a legitimate upstream source. The `pip install xmindparser` happens at runtime (inside a user-owned virtualenv under $HOME), not during the build/install phase, so it does not affect the system package installation. This is a sloppy packaging pattern (the dependency should be declared as a proper AUR/pacman dependency like `python-xmindparser` rather than fetched via pip at runtime), but it is not a build-time supply-chain risk. The sha256sums='SKIP' is also sloppy but not malicious. The overall concern is low: no executed binaries from unofficial hosts, no obfuscation, no system-level pip install. The cheaper model's MEDIUM rating is a false positive — the pip call is a runtime user-space action, not a package-installation-time code execution concern.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM pip install of an external package pip_install_external

`pip install <package>` fetches an unpinned package from PyPI at build time, outside source=() and makepkg's checksums.

  • PKGBUILD:38 pip install xmindparser

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Chirag Bharambe <chirag@bharambe.dev>
2
3pkgname=xmind2md
4pkgver=1.0.0
5pkgrel=1
6pkgdesc="A tool to convert XMind files to Markdown format"
7arch=('any')
8url="https://github.com/chiragbharambe/xmind2md"
9license=('MIT')
10depends=('python')
11makedepends=('python-pip' 'python-virtualenv')
12
13source=("$pkgname-$pkgver.tar.gz::https://github.com/chiragbharambe/$pkgname/archive/v$pkgver.tar.gz")
14sha256sums=('SKIP')
15
16package() {
17 cd "$srcdir/$pkgname-$pkgver"
18
19 # Create necessary directories
20 install -dm755 "$pkgdir/usr/bin"
21 install -dm755 "$pkgdir/usr/lib/$pkgname"
22 install -dm755 "$pkgdir/usr/share/$pkgname"
23
24 # Install Python script
25 install -Dm755 xmind_converter.py "$pkgdir/usr/lib/$pkgname/xmind_converter.py"
26
27 # Create setup script
28 cat > "$pkgdir/usr/lib/$pkgname/setup.sh" << 'EOF'
29#!/bin/bash
30
31VENV_PATH="$HOME/.local/share/xmind2md/venv"
32
33# Create virtual environment if it doesn't exist
34if [ ! -d "$VENV_PATH" ]; then
35 mkdir -p "$HOME/.local/share/xmind2md"
36 python -m venv "$VENV_PATH"
37 source "$VENV_PATH/bin/activate"
38 pip install xmindparser
39 deactivate
40fi
41
42echo "Setup complete! xmind2md is ready to use."
43EOF
44 chmod 755 "$pkgdir/usr/lib/$pkgname/setup.sh"
45
46 # Create main executable
47 cat > "$pkgdir/usr/bin/$pkgname" << 'EOF'
48#!/bin/bash
49
50VENV_PATH="$HOME/.local/share/xmind2md/venv"
51
52# Check if venv exists, if not run setup
53if [ ! -d "$VENV_PATH" ]; then
54 /usr/lib/xmind2md/setup.sh
55fi
56
57# Activate venv and run converter
58source "$VENV_PATH/bin/activate"
59python /usr/lib/xmind2md/xmind_converter.py "$@"
60deactivate
61EOF
62 chmod 755 "$pkgdir/usr/bin/$pkgname"
63
64 # Install license and readme
65 install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
66 install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
67}
68

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 00:14:10 LOW 2
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 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
2026-07-16 00:05:41 LOW 2
2026-07-15 00:09:25 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