#!/usr/bin/env bash # shellcheck disable=SC2034 # shellcheck disable=SC2154 # The PKGBUILD for Haveno. # Maintainer: Matheus # Contributor: Matheus pkgname="haveno" pkgver="1.0.0" pkgrel="1" pkgdesc="Decentralised P2P exchange built on Monero and Tor." arch=("any") url="https://github.com/haveno-dex/${pkgname}" license=("AGPL-3.0-or-later") depends=("bash" "java-runtime>=21") makedepends=("java-environment>=21") source=("${pkgname}-v${pkgver}.tar.gz::${url}/archive/refs/tags/${pkgver}.tar.gz" "${pkgname}.desktop") sha512sums=("c2d234d609d5b3cb2eac485f5c624628bbb97d67f34ddda59703cb967e1fc04660e9313bbbd06a37e59b4cf6633ff30243f1a34c2c483aaa4fa566dd25a17048" "046e32ecc69058d270b5660d55c323d1458b91989f1a3ddc8a107edc28c196029d25b5a5f5f46b754a778919cca13d016ef3e17813578605938c2b3b289b8e93") build() { cd "${srcdir}"/"${pkgname}"-"${pkgver}"/ || exit 1 ./gradlew -F lenient -x test build } package() { # Assure that the directories exist. mkdir -p "${pkgdir}"/usr/bin/ mkdir -p "${pkgdir}"/usr/share/applications/ mkdir -p "${pkgdir}"/usr/share/doc/"${pkgname}"/ mkdir -p "${pkgdir}"/usr/share/java/"${pkgname}"/ mkdir -p "${pkgdir}"/usr/share/pixmaps/ # Install the software. cp -r "${srcdir}"/"${pkgname}"-"${pkgver}"/lib/ "${pkgdir}"/usr/share/java/"${pkgname}"/ declare -ar _binaries=("haveno-apitest" "haveno-cli" "haveno-daemon" "haveno-desktop" "haveno-inventory" "haveno-monitor" "haveno-relay" "haveno-seednode" "haveno-statsnode") for _binary in "${_binaries[@]}"; do install -Dm755 "${srcdir}"/"${pkgname}"-"${pkgver}"/"${_binary}" "${pkgdir}"/usr/share/java/"${pkgname}"/ ln -s /usr/share/java/"${pkgname}"/"${_binary}" "${pkgdir}"/usr/bin/ done install -Dm644 "${srcdir}"/"${pkgname}"-"${pkgver}"/desktop/package/linux/icon.png "${pkgdir}"/usr/share/pixmaps/"${pkgname}".png install -Dm644 "${srcdir}"/"${pkgname}".desktop "${pkgdir}"/usr/share/applications/"${pkgname}".desktop # Install the documentation. cp -r "${srcdir}"/"${pkgname}"-"${pkgver}"/docs/* "${pkgdir}"/usr/share/doc/"${pkgname}"/ find "${pkgdir}"/usr/share/doc/"${pkgname}"/ -type d -exec chmod 755 {} + find "${pkgdir}"/usr/share/doc/"${pkgname}"/ -type f -exec chmod 644 {} + }