diff --git a/PKGBUILD.in b/PKGBUILD.in new file mode 100644 index 0000000..56e66e5 --- /dev/null +++ b/PKGBUILD.in @@ -0,0 +1,33 @@ +# Maintainer: Gergő Sályi +pkgname=multibg-sway +pkgver=@pkgver@ +pkgrel=1 +pkgdesc='Set a different wallpaper for the background of each Sway workspace' +arch=('x86_64' 'i686' 'pentium4' 'armv7h' 'aarch64') +url="https://github.com/gergo-salyi/multibg-sway" +license=('MIT' 'Apache') +depends=('gcc-libs' 'glibc') +makedepends=('cargo') +optdepends=('sway: window manager to set the wallpapers with') +source=("$pkgname-$pkgver.tar.gz::https://static.crates.io/crates/$pkgname/$pkgname-$pkgver.crate") +sha256sums=('@sha256sum@') + +prepare() { + cd "$pkgname-$pkgver" + export RUSTUP_TOOLCHAIN=stable + cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')" +} + +build() { + cd "$pkgname-$pkgver" + export RUSTUP_TOOLCHAIN=stable + export CARGO_TARGET_DIR=target + cargo build --frozen --release +} + +package() { + cd "$pkgname-$pkgver" + install -Dm0755 -t "$pkgdir/usr/bin/" "target/release/$pkgname" + install -Dm644 "README.md" "$pkgdir/usr/share/doc/${pkgname}/README.md" + install -Dm644 "LICENSE-MIT" "$pkgdir/usr/share/licenses/${pkgname}/LICENSE-MIT" +} diff --git a/scripts/pkgbuild.sh b/scripts/pkgbuild.sh new file mode 100755 index 0000000..e509540 --- /dev/null +++ b/scripts/pkgbuild.sh @@ -0,0 +1,19 @@ +#!/bin/bash +set -euo pipefail + +if [[ "$(head -2 Cargo.toml)" != '[package] +name = "multibg-sway"' ]]; then + echo 'Not in crate root' + exit 1 +fi + +version=$(cargo pkgid | cut -d '#' -f2) +crate="target/package/multibg-sway-$version.crate" +sum=$(sha256sum "$crate" | cut -d ' ' -f1) + +if [[ PKGBUILD -nt "$crate" ]]; then + echo 'Nothing to do' + exit 1 +fi + +sed -e "s/@pkgver@/$version/" -e "s/@sha256sum@/$sum/" < PKGBUILD.in > PKGBUILD