# Maintainer: lilydjwg <lilydjwg@gmail.com>
# Contributor: seiuneko <chfsefefgesfen foxmail>
# Contributor: Orhun Parmaksız <orhun@archlinux.org>
# Contributor: Caleb Maclennan <caleb@alerque.com>
# Contributor: Ellie Huxtable <e@elm.sh>

pkgbase=atuin-lily-git
pkgname=(atuin-lily-git atuin-server-lily-git)
_pkgname=atuin-lily
__pkgname=atuin
pkgver=18.17.1.r162.g34965810
pkgrel=1
pkgdesc="Magical shell history (lilydjwg's fork)"
arch=('x86_64' 'aarch64')
url="https://github.com/lilydjwg/atuin"
license=('MIT')
depends=('gcc-libs' 'sqlite3')
makedepends=('cargo' 'git' 'protobuf')
source=("${_pkgname}::git+https://github.com/lilydjwg/atuin.git")
sha256sums=('SKIP')
options=('!lto')

pkgver() {
  cd "$_pkgname"
  git describe --tags | sed -E 's/([^-]*-g)/r\1/;s/-/./g;s/^v//'
}

prepare() {
  cd "$_pkgname"
  cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
  mkdir -p completions/
}

build() {
  cd "$_pkgname"
  LIBSQLITE3_SYS_USE_PKG_CONFIG=1 cargo build --release --frozen --all-features
  for sh in 'bash' 'fish' 'zsh'; do
    "target/release/$__pkgname" gen-completions -s "$sh" -o completions/
  done
}

package_atuin-lily-git() {
  optdepends=('bash-preexec: bash integration'
              'atuin-server-lily-git: sync server')
  conflicts=('atuin')
  provides=('atuin')
  local _pdir="atuin-lily-git"
  cd "$_pkgname"
  install -Dm755 "target/release/$__pkgname" -t "$pkgdir/usr/bin"
  install -Dm644 LICENSE -t "$pkgdir/usr/share/licenses/$_pdir"
  install -Dm644 README.md -t "$pkgdir/usr/share/doc/$_pdir"
  install -Dm644 "completions/$__pkgname.bash" "${pkgdir}/usr/share/bash-completion/completions/$__pkgname"
  install -Dm644 "completions/$__pkgname.fish" -t "${pkgdir}/usr/share/fish/vendor_completions.d"
  install -Dm644 "completions/_$__pkgname" -t "${pkgdir}/usr/share/zsh/site-functions"
}

package_atuin-server-lily-git() {
  pkgdesc="Magical shell history (sync server; lilydjwg's fork)"

  local _pdir="atuin-server-lily-git"
  cd "$_pkgname"
  install -Dm755 "target/release/$__pkgname-server" -t "$pkgdir/usr/bin"
  install -Dm644 LICENSE -t "$pkgdir/usr/share/licenses/$_pdir"
  install -Dm644 README.md crates/atuin-server/server.toml -t "$pkgdir/usr/share/doc/$_pdir"
  install -Dm644 systemd/atuin-server.service -t "$pkgdir"/usr/lib/systemd/system/
  install -Dm644 systemd/atuin-server.sysusers -t "$pkgdir"/usr/lib/sysusers.d/
}

# vim: ts=2 sw=2 et:
