# Contributor: Chloe Kudryavtsev <code@toast.bunkerlabs.net>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: omni <omni+alpine@hack.org>
maintainer="omni <omni+alpine@hack.org>"
pkgname=skim
pkgver=0.17.3
pkgrel=0
pkgdesc="Fuzzy finder written in Rust"
url="https://github.com/lotabout/skim"
arch="all !s390x" # s390x blocked by nix crate
license="MIT"
makedepends="cargo cargo-auditable"
subpackages="
	$pkgname-doc
	$pkgname-tmux::noarch
	$pkgname-bash-plugin:_bash:noarch
	$pkgname-fish-plugin:_fish:noarch
	$pkgname-vim-plugin:_vim:noarch
	$pkgname-zsh-plugin:_zsh:noarch
	"
install="$pkgname.post-upgrade"
options="net"
source="https://github.com/lotabout/skim/archive/v$pkgver/skim-$pkgver.tar.gz
	$pkgname.plugin.sh
	$pkgname.plugin.zsh
	"

prepare() {
	default_prepare

	cargo fetch --target="$CTARGET" --locked
}

build() {
	cargo auditable build --release --frozen
}

check() {
	cargo test -p skim --frozen
}

package() {
	install -Dm755 target/release/sk bin/sk-tmux \
		-t "$pkgdir"/usr/bin/

	install -Dm644 man/man1/*.1 -t "$pkgdir"/usr/share/man/man1/
	install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/"$pkgname"/

	install -Dm644 plugin/skim.vim -t "$pkgdir"/usr/share/vim/vimfiles/plugin/

	install -Dm644 shell/*.bash "$srcdir"/"$pkgname".plugin.sh \
		-t "$pkgdir"/usr/share/bash/plugins/"$pkgname"/

	install -Dm644 shell/key-bindings.fish \
		"$pkgdir"/usr/share/fish/vendor_functions.d/skim-key-bindings.fish

	install -Dm644 shell/*.zsh "$srcdir"/"$pkgname".plugin.zsh \
		-t "$pkgdir"/usr/share/zsh/plugins/"$pkgname"/
}

tmux() {
	pkgdesc="tmux launcher for $pkgname"
	depends="bash"

	amove usr/bin/sk-tmux
}

_vim() {
	pkgdesc="Vim plugin for $pkgname"
	depends=""
	install_if="$pkgname=$pkgver-r$pkgrel vim"

	amove usr/share/vim
}

_bash() {
	pkgdesc="Bash plugin for $pkgname (completion and key bindings)"
	depends=""
	install_if="$pkgname=$pkgver-r$pkgrel bash"

	amove usr/share/bash/plugins
}

_fish() {
	pkgdesc="Fish key bindings for $pkgname"
	depends=""
	install_if="$pkgname=$pkgver-r$pkgrel fish"

	amove usr/share/fish
}

_zsh() {
	pkgdesc="Zsh plugin for $pkgname (completion and key bindings)"
	depends=""
	install_if="$pkgname=$pkgver-r$pkgrel zsh"

	amove usr/share/zsh/plugins
}

sha512sums="
da69d340c5d851ef8a729c7b0c2970dfd3a46cbf76eebf484bd9fd0ff0be115d7314d2ad0579e131d0fe49bb761fa1488b8e89f45ed402e74fdb9a2a409c59e0  skim-0.17.3.tar.gz
a13ba25c08fe5b54231508be8d2f0a9f4d342630e6c31f2524cc6b8b99cead5b80daa2e2e37a581198f9ce79df2b00fdf81acf84fe1ad8043ee96e4db0870ee6  skim.plugin.sh
4ea4a5511704ef6fe57e7d3187739ba501ddb80d249738310d773edd9e2d08c26d27ec0c8976320e979aa8688984fe591b63a63b3c8589d5b80190e7d85d1c8b  skim.plugin.zsh
"
