# Maintainer: Kevin Veen-Birkenbach pkgname=package-manager pkgver=0.9.1 pkgrel=1 pkgdesc="Local-flake wrapper for Kevin's package-manager (Nix-based)." arch=('any') url="https://github.com/kevinveenbirkenbach/package-manager" license=('MIT') # Nix is the only runtime dependency; Python is provided by the Nix closure. depends=('nix') makedepends=('rsync') install=${pkgname}.install # Local source checkout — avoids the tarball requirement. # We build from the project root (two levels above packaging/arch/). source=() sha256sums=() # Local source directory name under $srcdir _srcdir_name="source" prepare() { mkdir -p "$srcdir/$_srcdir_name" local project_root project_root="$(cd "$startdir/../.." && pwd)" rsync -a \ --exclude=".git" \ --exclude=".github" \ --exclude="pkg" \ --exclude="srcpkg" \ --exclude="packaging" \ --exclude="assets" \ "$project_root/" "$srcdir/$_srcdir_name/" } build() { cd "$srcdir/$_srcdir_name" : } package() { cd "$srcdir/$_srcdir_name" # Install the wrapper into /usr/bin install -Dm0755 "scripts/launcher.sh" \ "$pkgdir/usr/bin/pkgmgr" # Install Nix bootstrap (init + lib) install -d "$pkgdir/usr/lib/package-manager/nix" cp -a scripts/nix/* "$pkgdir/usr/lib/package-manager/nix/" chmod 0755 "$pkgdir/usr/lib/package-manager/nix/init.sh" # Install the full repository into /usr/lib/package-manager mkdir -p "$pkgdir/usr/lib/package-manager" # Copy entire project tree from our local source checkout cp -a . "$pkgdir/usr/lib/package-manager/" # Remove packaging-only and development artefacts from the installed tree rm -rf \ "$pkgdir/usr/lib/package-manager/.git" \ "$pkgdir/usr/lib/package-manager/.github" \ "$pkgdir/usr/lib/package-manager/tests" \ "$pkgdir/usr/lib/package-manager/PKGBUILD" \ "$pkgdir/usr/lib/package-manager/Dockerfile" \ "$pkgdir/usr/lib/package-manager/debian" \ "$pkgdir/usr/lib/package-manager/packaging" \ "$pkgdir/usr/lib/package-manager/.gitignore" \ "$pkgdir/usr/lib/package-manager/__pycache__" \ "$pkgdir/usr/lib/package-manager/.gitkeep" || true }