aurgen

LOW
maintainer eserlxl 0 votes scanned 2026-10-20 17:28:05.182546
View on AUR
Why flagged

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

Triggered rules

Low Few votes, recently uploaded zero_votes_recent

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

PKGBUILD

1# Copyright © 2025 Eser KUBALI <eserlxl@gmail.com>
2# SPDX-License-Identifier: GPL-3.0-or-later
3#
4# This file is part of aurgen and is licensed under
5# the GNU General Public License v3.0 or later.
6# See the LICENSE file in the project root for details.
7
8# Maintainer: Eser KUBALI <eserlxl@gmail.com>
9
10pkgname=aurgen
11pkgver=1.9.2
12pkgrel=1
13pkgdesc='Generate, test and publish AUR packages for GitHub projects'
14arch=('any')
15url='https://github.com/eserlxl/aurgen'
16license=('GPL-3.0-or-later')
17validpgpkeys=('2B0541BF62E91D538C55739DF677BC1E3BD7246E')
18depends=('curl' 'jq' 'util-linux' 'bash' 'coreutils' 'diffutils' 'findutils' 'gawk' 'git' 'gnupg' 'grep' 'gzip' 'make' 'pacman' 'pacman-contrib' 'sed' 'tar')
19makedepends=()
20optdepends=('github-cli: create GitHub releases and upload assets in aur mode' 'shellcheck: lint mode' 'namcap: PKGBUILD checks in test mode' 'bubblewrap: sandboxed make install for runtime dependency detection')
21source=("https://github.com/eserlxl/aurgen/releases/download/v1.9.2/aurgen-1.9.2.tar.gz" "https://github.com/eserlxl/aurgen/releases/download/v1.9.2/aurgen-1.9.2.tar.gz.sig")
22b2sums=('d82c8097a7458f5d88df00da5fde64f89c67fee0bac1bd2d90b114c2ca076313fba140997bfb45096a609e3e074b34e7dde2d644a60f319e4d3f2e03ff153b6c'
23 'SKIP')
24
25build() {
26 # No build steps required
27 :
28}
29
30# Helper function to copy and rebase paths with optional exclusions
31copy_tree() {
32 local src="$1" destbase="$2" mode="$3"
33 shift 3
34 [[ -d "$src" ]] || return 0
35
36 local abs_src
37 abs_src="$(realpath "$src" 2>/dev/null)" || return 0
38
39 # Patterns stay find arguments so install-YAML metacharacters are not executed.
40 local -a find_cmd=(find "$abs_src" -maxdepth 5 -type f)
41 local exclude
42 for exclude in "$@"; do
43 # Trim whitespace
44 exclude="${exclude#"${exclude%%[! ]*}"}"
45 exclude="${exclude%"${exclude##*[! ]}"}"
46 if [[ -n "$exclude" ]]; then
47 find_cmd+=(-not -path "$abs_src/$exclude/*")
48 fi
49 done
50 find_cmd+=(-print0)
51
52 mapfile -d '' -t files < <("${find_cmd[@]}") || return 0
53
54 for file in "${files[@]}"; do
55 local relpath
56 relpath="$(realpath --relative-to="$abs_src" "$file")"
57 install -Dm"$mode" "$file" "$pkgdir/$destbase/$relpath"
58 done
59}
60
61package() {
62 # Note: Tarball is created without subdirectory prefix, so no cd needed
63 # Install license file
64 for name in LICENSE LICENSE.txt COPYING; do
65 [[ -f "$name" ]] && install -Dm644 "$name" "$pkgdir/usr/share/licenses/$pkgname/LICENSE" && break
66 done
67
68 # Copy sections based on configuration
69 copy_tree "bin" "usr/bin" "755"
70 copy_tree "lib" "usr/lib/$pkgname" "644"
71 copy_tree "etc" "etc/$pkgname" "644"
72 copy_tree "share" "usr/share/$pkgname" "644"
73 copy_tree "include" "usr/include/$pkgname" "644"
74 copy_tree "local" "usr/local/$pkgname" "644"
75 copy_tree "var" "var/$pkgname" "644"
76 copy_tree "opt" "opt/$pkgname" "644" '[]'
77 echo "$pkgver" > "$pkgdir/usr/lib/$pkgname/VERSION"
78}
79

Scan history

Scanned at (UTC)SeverityRules
2026-10-20 17:28:05 Low 1

Report a package

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

0 / 4000
Your suggestion