scaffold-python-cli

LOW
maintainer alrayyes 0 votes scanned 2026-09-01 13:48:42.149435
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# Maintainer: Ryan Kes <ryan@andthensome.nl>
2#
3# Builds for real from the tagged release tarball, against Arch's own
4# python-* packages — not the frozen-binary approach the .deb/.rpm path
5# uses. AUR convention expects a real build the same way Nix's
6# flake.nix does, and Arch's python-* packages track upstream closely
7# enough that the naming/version-skew problem the .deb/.rpm path
8# sidesteps with a frozen binary doesn't apply here.
9#
10# Lives in this repo only for reference/review — a real AUR package for
11# a project stamped from this template is maintained in its own git repo
12# (ssh://aur@aur.archlinux.org/<pkgname>.git), pushed there by the
13# release job, not from here. `pkgver`/`sha256sums` below track this
14# template repo's own dev placeholder until a project stamped from it
15# renames the package and cuts its first real release.
16pkgname=scaffold-python-cli
17pkgver=0.3.0
18pkgrel=1
19pkgdesc="GitHub template for a Python/uv/Typer command-line tool"
20arch=('any')
21url="https://github.com/alrayyes/scaffold-python-cli"
22# No standard licence chosen for this template itself — see LICENSE. A
23# project stamped from it names its own licence here once it picks one.
24license=('custom')
25depends=(
26 'python'
27 'python-platformdirs'
28 'python-tomli-w'
29 'python-typer'
30)
31makedepends=(
32 'python-build'
33 'python-installer'
34 'python-wheel'
35 'python-uv-build'
36 'python-click-man'
37)
38_tag="scaffold-python-cli-v${pkgver}"
39_srcdir="scaffold-python-cli-${_tag}"
40source=("${pkgname}-${pkgver}.tar.gz::https://github.com/alrayyes/scaffold-python-cli/archive/${_tag}.tar.gz")
41# No release has been tagged yet — nothing at this URL for a real
42# checksum to pin. The release job's own "Bump pkgver and the
43# release-tarball checksum" step (see .github/workflows/release.yml)
44# overwrites this with a real one against the actual tag before it
45# builds and pushes to the AUR; SKIP only matters for this committed
46# reference copy until the first release cuts.
47sha256sums=('5fe80ecf501788d36e58067c886631166e666a846b8e944e755b0bcf8a4e9b24')
48
49build() {
50 cd "$_srcdir"
51 python -m build --wheel --no-isolation
52}
53
54package() {
55 cd "$_srcdir"
56 python -m installer --destdir="$pkgdir" dist/*.whl
57 install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
58
59 # One man page per command and subcommand, generated from the source
60 # tree rather than the installed package — this project's runtime
61 # dependencies are already on the system by this point (makepkg
62 # installs depends= before build()/package() run), so the CLI is
63 # importable straight off PYTHONPATH without a separate install step.
64 # Matches flake.nix's approach for the same reason
65 # scripts/generate-man.sh doesn't work here either: that script shells
66 # out to `uv run`, which isn't part of this build at all.
67 local mandir
68 mandir="$(mktemp -d)"
69 PYTHONPATH="src" python -c "
70import datetime
71import typer.main
72from click_man.core import write_man_pages
73from scaffold_python_cli.cli import app
74write_man_pages('scaffold-python-cli', typer.main.get_command(app), version='${pkgver}', target_dir='${mandir}', date=datetime.date.today())
75"
76 gzip -9 "$mandir"/*.1
77 install -Dm644 -t "$pkgdir/usr/share/man/man1" "$mandir"/*.1.gz
78 rm -rf "$mandir"
79}
80

Scan history

Scanned at (UTC)SeverityRules
2026-09-01 13:48:42 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