# Maintainer: Aaron D. Lee pkgname=stegasoo-git pkgver=4.2.0.r0.g0000000 pkgrel=1 pkgdesc="Secure steganography with hybrid photo + passphrase + PIN authentication" arch=('x86_64') url="https://github.com/adlee-was-taken/stegasoo" license=('MIT') # Use python312 from AUR to future-proof against 3.13 (jpegio compatibility) depends=( 'python312' ) makedepends=( 'git' 'python312' ) optdepends=( 'zbar: QR code reading from webcam/images' ) provides=('stegasoo') conflicts=('stegasoo') source=("${pkgname}::git+https://github.com/adlee-was-taken/stegasoo.git#branch=main") sha256sums=('SKIP') pkgver() { cd "$pkgname" git describe --long --tags 2>/dev/null | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' || \ printf "%s.r%s.g%s" "4.2.0" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" } build() { cd "$pkgname" # Create venv with python3.12 python3.12 -m venv --system-site-packages "$srcdir/venv" source "$srcdir/venv/bin/activate" # Install build deps pip install --upgrade pip wheel hatchling build # Build wheel python -m build --wheel --no-isolation } package() { cd "$pkgname" # Install to /opt/stegasoo with dedicated venv install -dm755 "$pkgdir/opt/stegasoo" # Create fresh venv in package python3.12 -m venv "$pkgdir/opt/stegasoo/venv" # Install the wheel with all extras "$pkgdir/opt/stegasoo/venv/bin/pip" install --no-cache-dir dist/*.whl[all] # Create symlinks to /usr/bin install -dm755 "$pkgdir/usr/bin" ln -s /opt/stegasoo/venv/bin/stegasoo "$pkgdir/usr/bin/stegasoo" # Install license install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" # Install docs install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md" # Install systemd service files (optional) install -Dm644 /dev/stdin "$pkgdir/usr/lib/systemd/system/stegasoo-web.service" <