# Maintainer: Morgan <morganamilo@archlinux.org>
pkgname=paru
pkgver=2.1.0
pkgrel=3
pkgdesc='Feature packed AUR helper'
url='https://github.com/morganamilo/paru'
source=("$pkgname-$pkgver.tar.gz::https://github.com/Morganamilo/paru/archive/v$pkgver.tar.gz"
        0001-deps-use-latest-alpm-crate-commit.patch
        0002-fix-aur-package-list-gz-decode.patch)
backup=("etc/paru.conf")
arch=('i686' 'pentium4' 'x86_64' 'arm' 'armv7h' 'armv6h' 'aarch64')
license=('GPL-3.0-or-later')
makedepends=('cargo')
depends=('git' 'pacman' 'libalpm.so>=14')
optdepends=('bat: colored pkgbuild printing' 'devtools: build in chroot and downloading pkgbuilds')
sha256sums=('eea4dbb524db765d5316f540f9ee670c0bf81aae4827b5417eebb4c9b5651727'
            'c35eb11f6b98dd87d836deb3d54759f3beb14b97587f5e0a71c3cc51c9500f4b'
            '8b2f7680dfeaa563920837ca96123c3780bffd4386a105b496f90da85b46be8d')

prepare() {
  cd "$pkgname-$pkgver"

  # patch for pacman 7.1.0
  patch -Np1 -i ../0001-deps-use-latest-alpm-crate-commit.patch

  # fix AUR package list gzip decoding (5be0cfa)
  patch -Np1 -i ../0002-fix-aur-package-list-gz-decode.patch

  cargo fetch --locked --target "$(rustc -vV | sed -n 's|host: ||p')"
}

build () {
  cd "$srcdir/$pkgname-$pkgver"

  #if pacman -T pacman-git > /dev/null; then
    _features+="git,"
  #fi

  if [[ $CARCH != x86_64 ]]; then
    export CARGO_PROFILE_RELEASE_LTO=off
  fi

  cargo build --frozen --features "${_features:-}" --release --target-dir target
  ./scripts/mkmo locale/
}

package() {
  cd "$srcdir/$pkgname-$pkgver"

  install -Dm755 target/release/paru "${pkgdir}/usr/bin/paru"
  install -Dm644 paru.conf "${pkgdir}/etc/paru.conf"

  install -Dm644 man/paru.8 "$pkgdir/usr/share/man/man8/paru.8"
  install -Dm644 man/paru.conf.5 "$pkgdir/usr/share/man/man5/paru.conf.5"

  install -Dm644 completions/bash "${pkgdir}/usr/share/bash-completion/completions/paru.bash"
  install -Dm644 completions/fish "${pkgdir}/usr/share/fish/vendor_completions.d/paru.fish"
  install -Dm644 completions/zsh "${pkgdir}/usr/share/zsh/site-functions/_paru"

  install -d "$pkgdir/usr/share/"
  cp -r locale "$pkgdir/usr/share/"
}
