summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: e832e07c3890ad71f8d126a589763003448323cd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Maintainer: Mattia Borda <mattiagiovanni.borda@icloud.com>

pkgname=denaro-git
_pkgname=nickvisionmoney
_pkgid=org.nickvision.money
pkgver=2023.1.0.rc1.r44.ga14387d
pkgrel=1
pkgdesc="A personal finance manager"
arch=('aarch64' 'armv7h' 'x86_64' 'i686')
url=https://github.com/nlogozzo/$_pkgname
license=('GPL3')
depends=('dotnet-runtime>=7' 'libadwaita')
makedepends=('dotnet-sdk>=7' 'cmake' 'git')
provides=("${pkgname%-git}" 'nickvision-money' 'nickvision-money-git')
conflicts=("${pkgname%-git}" 'nickvision-money')
replaces=(nickvision-money-git)
source=(git+$url)
b2sums=(SKIP)

case "$CARCH" in
	x86_64) _arch=x64 ;;
	i686) _arch=x86 ;;
	aarch64) _arch=arm64 ;;
	armv7h) _arch=arm ;;
esac

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

prepare() {
	cd $_pkgname/NickvisionMoney.GNOME
	desktop-file-edit --set-key='Exec' --set-value="/usr/bin/$_pkgid" $_pkgid.desktop
}

build() {
	cd $_pkgname
	dotnet build NickvisionMoney.GNOME -a $_arch
	glib-compile-resources NickvisionMoney.GNOME/Resources/$_pkgid.gresource.xml
}

package() {
	cd $_pkgname/NickvisionMoney.Shared/Resources
	find . \( -name "$_pkgid*" ! -name "*symbolic*" \) -exec install -Dm644 "{}" "$pkgdir/usr/share/icons/hicolor/scalable/apps/{}" \;
	find . -name "*-symbolic.svg" -exec install -Dm644 "{}" "$pkgdir/usr/share/icons/hicolor/symbolic/apps/{}" \;
	cd ../../NickvisionMoney.GNOME
	install -Dm644 Resources/$_pkgid.gresource -t "$pkgdir"/usr/share/$_pkgid
	install -Dm775 $_pkgid.desktop -t "$pkgdir"/usr/share/applications
	install -Dm644 $_pkgid.metainfo.xml -t "$pkgdir"/usr/share/metainfo
	dotnet publish --no-build -o "$pkgdir"/usr/share/$_pkgid -a $_arch
	mkdir "$pkgdir"/usr/bin
	ln -s /usr/share/$_pkgid/NickvisionMoney.GNOME "$pkgdir"/usr/bin/$_pkgid
}