chore(pkg): simplify PKGBUILDs for local private builds

Remove GitHub source tarball and b2sums. Both PKGBUILDs now build
directly from the local workspace via _srcdir="$startdir/../..".
Run makepkg from pkg/solitaire-quest/ or pkg/solitaire-quest-server/.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
funman300
2026-04-28 22:45:52 +00:00
parent 800dfb50ce
commit 4d6f8bccb7
2 changed files with 19 additions and 17 deletions
+9 -9
View File
@@ -13,36 +13,38 @@ depends=(
'glibc' 'glibc'
) )
backup=('etc/solitaire-quest-server/server.env') backup=('etc/solitaire-quest-server/server.env')
# Build from the local workspace (two levels above this PKGBUILD).
_srcdir="$startdir/../.."
source=( source=(
"$pkgname-$pkgver.tar.gz::https://github.com/funman300/solitaire-quest/archive/v$pkgver.tar.gz"
'solitaire-quest-server.service' 'solitaire-quest-server.service'
'server.env' 'server.env'
) )
b2sums=('SKIP' b2sums=('SKIP'
'SKIP'
'SKIP') 'SKIP')
prepare() { prepare() {
cd "solitaire-quest-$pkgver"
export RUSTUP_TOOLCHAIN=stable export RUSTUP_TOOLCHAIN=stable
cd "$_srcdir"
cargo fetch --locked --target "$(rustc -Vv | grep host | cut -d' ' -f2)" cargo fetch --locked --target "$(rustc -Vv | grep host | cut -d' ' -f2)"
} }
build() { build() {
cd "solitaire-quest-$pkgver"
export RUSTUP_TOOLCHAIN=stable export RUSTUP_TOOLCHAIN=stable
export CARGO_TARGET_DIR=target export CARGO_TARGET_DIR=target
cd "$_srcdir"
cargo build --frozen --release -p solitaire_server cargo build --frozen --release -p solitaire_server
} }
check() { check() {
cd "solitaire-quest-$pkgver"
export RUSTUP_TOOLCHAIN=stable export RUSTUP_TOOLCHAIN=stable
cd "$_srcdir"
cargo test --frozen -p solitaire_server -p solitaire_sync cargo test --frozen -p solitaire_server -p solitaire_sync
} }
package() { package() {
cd "solitaire-quest-$pkgver" cd "$_srcdir"
# Binary # Binary
install -Dm0755 -t "$pkgdir/usr/bin/" "target/release/solitaire_server" install -Dm0755 -t "$pkgdir/usr/bin/" "target/release/solitaire_server"
@@ -54,10 +56,8 @@ package() {
install -Dm0640 "$srcdir/server.env" \ install -Dm0640 "$srcdir/server.env" \
"$pkgdir/etc/solitaire-quest-server/server.env" "$pkgdir/etc/solitaire-quest-server/server.env"
# License # License and docs
install -Dm0644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" install -Dm0644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
# Self-hosting guide
install -Dm0644 README_SERVER.md \ install -Dm0644 README_SERVER.md \
"$pkgdir/usr/share/doc/$pkgname/README_SERVER.md" "$pkgdir/usr/share/doc/$pkgname/README_SERVER.md"
} }
+10 -8
View File
@@ -15,32 +15,34 @@ depends=(
'libxkbcommon' 'libxkbcommon'
'systemd-libs' # libudev.so — required by Bevy input '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') # Build from the local workspace (two levels above this PKGBUILD).
_srcdir="$startdir/../.."
source=()
b2sums=()
prepare() { prepare() {
cd "solitaire-quest-$pkgver"
export RUSTUP_TOOLCHAIN=stable export RUSTUP_TOOLCHAIN=stable
cd "$_srcdir"
cargo fetch --locked --target "$(rustc -Vv | grep host | cut -d' ' -f2)" cargo fetch --locked --target "$(rustc -Vv | grep host | cut -d' ' -f2)"
} }
build() { build() {
cd "solitaire-quest-$pkgver"
export RUSTUP_TOOLCHAIN=stable export RUSTUP_TOOLCHAIN=stable
export CARGO_TARGET_DIR=target export CARGO_TARGET_DIR=target
cd "$_srcdir"
cargo build --frozen --release -p solitaire_app cargo build --frozen --release -p solitaire_app
} }
check() { check() {
cd "solitaire-quest-$pkgver"
export RUSTUP_TOOLCHAIN=stable export RUSTUP_TOOLCHAIN=stable
# Only test the non-Bevy crates — Bevy integration tests require a GPU/display cd "$_srcdir"
# which is not available in a clean build environment. # Only test non-Bevy crates — Bevy integration tests require a GPU/display.
cargo test --frozen -p solitaire_core -p solitaire_sync cargo test --frozen -p solitaire_core -p solitaire_sync
} }
package() { package() {
cd "solitaire-quest-$pkgver" cd "$_srcdir"
install -Dm0755 -t "$pkgdir/usr/bin/" "target/release/solitaire_app" install -Dm0755 -t "$pkgdir/usr/bin/" "target/release/solitaire_app"
install -Dm0644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" install -Dm0644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
} }