# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=czkawka
pkgver=8.0.0
pkgrel=0
pkgdesc="Multi functional app to find duplicates, empty folders, similar images etc. (CLI)"
url="https://github.com/qarmin/czkawka"
arch="all !loongarch64"  # limited by rustix crate
license="MIT"
makedepends="
	alsa-lib-dev
	bzip2-dev
	cargo
	cargo-auditable
	gtk4.0-dev
	"
checkdepends="cmd:xvfb-run"
subpackages="$pkgname-gui $pkgname-doc"
source="https://github.com/qarmin/czkawka/archive/$pkgver/czkawka-$pkgver.tar.gz"
options="net" # fetch dependencies


prepare() {
	default_prepare

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

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

check() {
	# Tests must be run inside an X11 or Wayland session.
	xvfb-run cargo test --frozen
}

package() {
	install -D -m 755 target/release/czkawka_cli "$pkgdir"/usr/bin/czkawka
	ln -s czkawka "$pkgdir"/usr/bin/czkawka_cli

	install -D -m 644 czkawka_core/LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
}

gui() {
	pkgdesc="${pkgdesc/CLI/GUI}"
	license="$license AND CC-BY-4.0"

	cd "$builddir"

	install -D -m 755 ./target/release/czkawka_gui -t "$subpkgdir"/usr/bin/

	install -D -m 644 ./data/icons/com.github.qarmin.czkawka.svg \
		-t "$subpkgdir"/usr/share/icons/hicolor/scalable/apps/

	install -D -m 644 ./data/com.github.qarmin.czkawka.desktop \
		-t "$subpkgdir"/usr/share/applications/

	install -D -m 644 ./data/com.github.qarmin.czkawka.metainfo.xml \
		-t "$subpkgdir"/usr/share/metainfo/
}

sha512sums="
e53d09bba7b843f8048b2e1cc1bdd986248aa6acbc803f9789f480922937568ad17df7df4d21aac295f7d9bbd33acb820797198421f9e57531b8f1859dda9f38  czkawka-8.0.0.tar.gz
"
