mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-06-06 01:44:36 +02:00
127 lines
3.8 KiB
Text
127 lines
3.8 KiB
Text
# Contributor: Dhruvin Gandhi <contact@dhru.vin>
|
|
# Maintainer: Dhruvin Gandhi <contact@dhru.vin>
|
|
pkgname=hledger
|
|
pkgver=1.43.1
|
|
pkgrel=0
|
|
pkgdesc="Command-line interface for the hledger accounting system"
|
|
_uipkgdesc="Curses-style terminal interface for the hledger accounting system"
|
|
_webpkgdesc="Web interface for the hledger accounting system"
|
|
url="https://hledger.org/hledger.html"
|
|
_uiurl="https://hledger.org/hledger-ui.html"
|
|
_weburl="https://hledger.org/hledger-web.html"
|
|
arch="aarch64 x86_64" # limited by ghc
|
|
license="GPL-3.0-only"
|
|
makedepends="
|
|
ghc
|
|
cabal
|
|
libffi-dev
|
|
ncurses-dev
|
|
zlib-dev
|
|
"
|
|
_llvmver=15
|
|
subpackages="
|
|
$pkgname-doc
|
|
$pkgname-bash-completion
|
|
$pkgname-ui
|
|
$pkgname-ui-doc:uidoc
|
|
$pkgname-web
|
|
$pkgname-web-doc:webdoc
|
|
$pkgname-web-openrc:webopenrc
|
|
"
|
|
source="https://github.com/simonmichael/hledger/archive/refs/tags/$pkgver/hledger-$pkgver.tar.gz
|
|
cabal.project.freeze
|
|
hledger-web.initd"
|
|
options="net"
|
|
|
|
export CABAL_DIR="$srcdir"/cabal
|
|
export PATH="/usr/lib/llvm$_llvmver/bin:$PATH"
|
|
|
|
cabal_update() {
|
|
cd $builddir
|
|
cabal v2-update
|
|
(
|
|
cd "$builddir"
|
|
cabal v2-freeze --shadow-installed-packages
|
|
mv cabal.project.freeze "$startdir/"
|
|
)
|
|
}
|
|
|
|
prepare() {
|
|
default_prepare
|
|
cp "$srcdir"/cabal.project.freeze .
|
|
}
|
|
|
|
build() {
|
|
cabal update
|
|
cabal build --prefix=/usr --enable-relocatable all
|
|
}
|
|
|
|
check() {
|
|
cabal test all
|
|
}
|
|
|
|
package() {
|
|
# hledger
|
|
install -Dm755 "$(cabal list-bin hledger)" "$pkgdir"/usr/bin/hledger
|
|
install -Dm644 hledger/hledger.1 "$pkgdir"/usr/share/man/man1/hledger.1
|
|
install -Dm644 hledger/hledger.info "$pkgdir"/usr/share/info/hledger.info
|
|
install -Dm644 hledger/shell-completion/hledger-completion.bash \
|
|
"$pkgdir"/usr/share/bash-completion/completions/hledger
|
|
# hledger-ui
|
|
install -Dm755 "$(cabal list-bin hledger-ui)" "$pkgdir"/usr/bin/hledger-ui
|
|
install -Dm644 hledger-ui/hledger-ui.1 "$pkgdir"/usr/share/man/man1/hledger-ui.1
|
|
install -Dm644 hledger-ui/hledger-ui.info "$pkgdir"/usr/share/info/hledger-ui.info
|
|
# hledger-web
|
|
install -Dm755 "$(cabal list-bin hledger-web)" "$pkgdir"/usr/bin/hledger-web
|
|
install -Dm644 hledger-web/hledger-web.1 "$pkgdir"/usr/share/man/man1/hledger-web.1
|
|
install -Dm644 hledger-web/hledger-web.info "$pkgdir"/usr/share/info/hledger-web.info
|
|
install -Dm755 "$srcdir"/hledger-web.initd "$pkgdir"/etc/init.d/hledger-web
|
|
}
|
|
|
|
doc() {
|
|
pkgdesc="$pkgdesc (documentation)"
|
|
install_if="docs $pkgname=$pkgver-r$pkgrel"
|
|
amove /usr/share/man/man1/hledger.1 /usr/share/info/hledger.info
|
|
$(command -v pigz || echo gzip) -n -9 "$subpkgdir"/usr/share/man/man1/hledger.1
|
|
}
|
|
|
|
ui() {
|
|
pkgdesc="$_uipkgdesc"
|
|
url="$_uiurl"
|
|
amove /usr/bin/hledger-ui
|
|
}
|
|
|
|
uidoc() {
|
|
pkgdesc="$_uipkgdesc (documentation)"
|
|
url="$_uiurl"
|
|
install_if="docs $pkgname-ui=$pkgver-r$pkgrel"
|
|
amove /usr/share/man/man1/hledger-ui.1 /usr/share/info/hledger-ui.info
|
|
$(command -v pigz || echo gzip) -n -9 "$subpkgdir"/usr/share/man/man1/hledger-ui.1
|
|
}
|
|
|
|
web() {
|
|
pkgdesc="$_webpkgdesc"
|
|
url="$_weburl"
|
|
install="$pkgname-web.pre-install"
|
|
amove /usr/bin/hledger-web
|
|
}
|
|
|
|
webdoc() {
|
|
pkgdesc="$_webpkgdesc (documentation)"
|
|
url="$_weburl"
|
|
install_if="docs $pkgname-web=$pkgver-r$pkgrel"
|
|
amove /usr/share/man/man1/hledger-web.1 /usr/share/info/hledger-web.info
|
|
$(command -v pigz || echo gzip) -n -9 "$subpkgdir"/usr/share/man/man1/hledger-web.1
|
|
}
|
|
|
|
webopenrc() {
|
|
pkgdesc="$_webpkgdesc (OpenRC init scripts)"
|
|
url="$_weburl"
|
|
install_if="openrc $pkgname-web=$pkgver-r$pkgrel"
|
|
amove /etc/init.d/hledger-web
|
|
}
|
|
sha512sums="
|
|
3b31e3a1de15bd63b30ccbe73758b7d4db887566672b78682cea4cd6e113ce0e1d6091dc5be294dc8ce472a3e381a8803d711883aa0b66abdc36d1a08e68b590 hledger-1.43.1.tar.gz
|
|
4d49da9d49f1f36dff5dce1369dbc1bb24cd99228b020907cdb1cc31d41076d3053b1578743c4a0d7400fa8dcdb5510824b27960c015f79f35241a84f14188c1 cabal.project.freeze
|
|
4fd0898b29736c1d7f5b41b1ccca8734f38999e5ba88656e092724a7ce4ed346b4f86d627c99be77934eaa7cd86e33ce20a33a60650f1ad8a527c57387179365 hledger-web.initd
|
|
"
|