# Maintainer: funman300 pkgname=solitaire-quest pkgver=0.1.0 pkgrel=1 pkgdesc='Cross-platform Klondike Solitaire with progression, achievements, and optional sync' url='https://github.com/funman300/solitaire-quest' license=('MIT') arch=('x86_64') makedepends=('cargo' 'rust') depends=( 'gcc-libs' 'glibc' 'alsa-lib' 'libxkbcommon' 'systemd-libs' # libudev.so — required by Bevy input ) source=("$pkgname-$pkgver.tar.gz::https://github.com/funman300/solitaire-quest/archive/v$pkgver.tar.gz") b2sums=('SKIP') prepare() { cd "solitaire-quest-$pkgver" export RUSTUP_TOOLCHAIN=stable cargo fetch --locked --target "$(rustc -Vv | grep host | cut -d' ' -f2)" } build() { cd "solitaire-quest-$pkgver" export RUSTUP_TOOLCHAIN=stable export CARGO_TARGET_DIR=target cargo build --frozen --release -p solitaire_app } check() { cd "solitaire-quest-$pkgver" export RUSTUP_TOOLCHAIN=stable # Only test the non-Bevy crates — Bevy integration tests require a GPU/display # which is not available in a clean build environment. cargo test --frozen -p solitaire_core -p solitaire_sync } package() { cd "solitaire-quest-$pkgver" install -Dm0755 -t "$pkgdir/usr/bin/" "target/release/solitaire_app" install -Dm0644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" }