# Maintainer: Uyanide pkgname=soteria pkgver=0.3.2 pkgrel=1 _tag="v${pkgver}" _srcdir="${pkgname}-${_tag#v}" pkgdesc="A GTK-based polkit authentication agent" arch=('x86_64') url="https://github.com/imvaskel/soteria" license=('Apache-2.0') depends=( 'glib2' 'glibc' 'gtk4' 'libgcc' 'polkit' ) makedepends=( 'rust' 'gettext' ) options=(!debug) source=( "${pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/${_tag}.tar.gz" "soteria.service" ) sha512sums=('4b1f89d2e32e5f9b91ff8a1a7d2749331ec56892d69998815dd48c8f57d04aba064410a7f174691cb132fcc505991bf47a6705a0b16e2f9994a47ebdcba8c349' '2302e1dfb914af8fbc4ac8a813961057eb07a44f8ba9b9e1c96ffad72c0742f748b24715065078ad195df5a86b46c06fd87aa6f760cfde11c9f658d1f82dc2c3') prepare() { cd "${_srcdir}" export RUSTUP_TOOLCHAIN=stable cargo fetch --locked --target "$(rustc --print host-tuple)" } build() { cd "${_srcdir}" export RUSTUP_TOOLCHAIN=stable export CARGO_TARGET_DIR=target cargo build --release --frozen } package() { install -Dm644 -t "${pkgdir}/usr/lib/systemd/user" soteria.service cd "${_srcdir}" install -Dm755 -t "${pkgdir}/usr/lib/soteria-polkit" target/release/soteria install -Dm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE local lang dest cd po for file in *.po; do lang=${file%.*} dest="${pkgdir}/usr/share/locale/${lang}/LC_MESSAGES" install -d "$dest" msgfmt "$file" -o "${dest}/soteria.mo" done }