pandoc-static-git

LOW
maintainer gesh 2 votes scanned 2026-09-17 00:27:14.276658
View on AUR
Why flagged

The flagged 'external install' via cabal is part of building the project from source using its official build system; this is normal for Haskell packages and not a supply-chain risk.

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 90%): The flagged 'external install' via cabal is part of building the project from source using its official build system; this is normal for Haskell packages and not a supply-chain risk.

1 higher static finding superseded - not the current verdict (shown for transparency)
Medium External install via pipx/uv/poetry/cargo/go/gem alt_pkg_manager_install

A non-pip/npm package manager (pipx, uv, poetry, cargo install, go install, gem, conda…) fetches and builds an external package at build time, outside source=() and makepkg's checksums.

  • PKGBUILD:68 cabal install pandoc-cli --install-method=copy --installdir "$pkgdir/usr/bin"

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Gesh <gesh@gesh.uni.cx>
2# based on pandoc-sile-git, by
3# Contributor: Caleb Maclennan <caleb@alerque.com>
4# Contributor: Felix Yan <felixonmars@archlinux.org>
5# Contributor: Arch Haskell Team <arch-haskell@haskell.org>
6
7shopt -s extglob
8
9pkgname=pandoc-static-git
10_pkgname_old=(pandoc-cli pandoc)
11pkgver=3.10.2.r14.g0ce83fb13
12pkgrel=1
13pkgdesc='Conversion between markup formats (static build, dynamic Lua support)'
14arch=('i686' 'x86_64')
15url='https://pandoc.org'
16license=('GPL-2.0-or-later')
17provides=("${_pkgname_old[@]/%/=${pkgver%%*([a-z]).r*}}")
18conflicts=("${_pkgname_old[@]}")
19depends=('gmp' 'zlib')
20makedepends=('git' 'cabal-install' 'ghc' 'curl')
21optdepends=('texlive-core: for pdf output')
22_url=https://github.com/jgm/pandoc
23source=("$pkgname::git+$_url.git")
24sha256sums=('SKIP')
25
26pkgver() {
27 cd "$pkgname"
28 git describe --tags --long --match 'pandoc-cli-*' \
29 | sed 's/^pandoc-cli-//;s/^v//' \
30 | awk -F- \
31 'BEGIN { OFS="" }
32 {
33 revcount=$(NF-1)
34 sha=$NF
35 NF=(NF-2)
36 printf "%s.r%s.%s\n", $0, revcount, sha
37 }'
38}
39
40prepare() {
41 cd "$pkgname"
42
43 rts=$(date +%s --date="$(curl -I http://hackage.haskell.org/01-index.tar |
44 awk -F': ' '$1 == "Last-modified" { print $2 }')")
45 lts=$(TZ=UTC date +@%s --date='today 00:00')
46 ts=$(printf '%s\n' "$rts" "$lts" | sort -n | head -n1)
47 cabal update hackage.haskell.org,$ts
48 cabal configure --prefix=/usr --docdir=/usr/share/doc/"$pkgname" \
49 --enable-tests --flag embed_data_files
50 cabal build --only-dependencies
51}
52
53build() {
54 cd "$pkgname"
55
56 cabal build --offline
57 cabal run -v0 pandoc-cli -- --bash-completion > pandoc.bash
58}
59
60check() {
61 cd "$pkgname"
62 cabal test
63}
64
65package() {
66 cd "$pkgname"
67 mkdir -p "$pkgdir/usr/bin"
68 cabal install pandoc-cli --install-method=copy --installdir "$pkgdir/usr/bin"
69 env -C "$pkgdir/usr/bin" ln -s pandoc pandoc-lua
70 env -C "$pkgdir/usr/bin" ln -s pandoc pandoc-server
71 install -Dm644 COPYRIGHT "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
72 install -Dm644 pandoc-cli/man/pandoc*.1 -t "$pkgdir"/usr/share/man/man1/
73 _install_completion_script bash bash-completion/completions/pandoc
74 _install_completion_script zsh zsh/site-functions/_pandoc
75 _install_completion_script fish fish/vendor_completions.d/pandoc.fish
76}
77
78_install_completion_script() {
79 install -Dm644 \
80 <("$pkgdir/usr/bin/pandoc" --completion=$1) \
81 "$pkgdir/usr/share/$2"
82}
83
84# vim:set ts=2 sw=2 et
85

Scan history

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

Report a package

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

0 / 4000
Your suggestion