# Maintainer: Caleb Maclennan <caleb@alerque.com>

pkgbase=dms-shell
_pkg1=DankMaterialShell
pkgname=$pkgbase
pkgver=1.5.3
pkgrel=1
pkgdesc='A Quickshell-based desktop shell with Material 3 design principles'
arch=(x86_64)
url="https://github.com/AvengeMedia/$_pkg1"
license=(MIT)
depends=(dgop
         accountsservice
         hicolor-icon-theme
         python
         qt6-declarative
         quickshell)
optdepends=('cava: Audio visualizer'
            'cups-pk-helper: Printer Management'
            'i2c-tools: External monitor brightness control'
            'iwd: Required for network managementa via iwd'
            'matugen: Dynamic wallpaper-based theming'
            'networkmanager: Required for network managementa via networkmanager'
            'power-profiles-daemon: Set power profile'
            'qt6-multimedia: Sound effect support'
            'qt6ct: Qt6 application theming'
            'systemd: Required for network managementa via systemd-networkd'
            'wtype: Paste from clipboard history and plugins')
makedepends=(go)
_archive="$_pkg1-$pkgver"
source=("$url/archive/v$pkgver/$_archive.tar.gz")
sha256sums=('2d665870f7019700fb38d59d043202e298e1aad1d3f1cb96360a75acbd3be9ca')

build() {
	cd "$_archive/core"
	export CGO_CPPFLAGS="$CPPFLAGS"
	export CGO_CFLAGS="$CFLAGS"
	export CGO_CXXFLAGS="$CXXFLAGS"
	go build -v \
		-tags distro_binary \
		-trimpath \
		-buildmode=pie \
		-mod=readonly \
		-modcacherw \
		-ldflags="-s -w -linkmode=external -extldflags \"${LDFLAGS}\" -X main.Version=v$pkgver" \
		-o dms ./cmd/dms
}

_completion() {
	cd "$_archive"
	core/dms completion $1
}

package() {
	cd "$_archive"
	install -Dm0755 -t "$pkgdir/usr/bin/" core/dms
	install -dm0755 "$pkgdir/usr/share/quickshell/dms"
	cp -r "quickshell/"* "$pkgdir/usr/share/quickshell/dms/"
	install -Dm0644 -t "$pkgdir/usr/share/doc/$pkgname/" README.md
	cp -r "docs/"* "$pkgdir/usr/share/doc/$pkgname/"
	install -Dm0644 -t "$pkgdir/usr/lib/systemd/user/" assets/systemd/dms.service
	install -Dm0644 -t "$pkgdir/usr/share/applications/" assets/dms-open.desktop
	install -Dm0644 -t "$pkgdir/usr/share/icons/hicolor/scalable/apps/" assets/danklogo.svg
	install -Dm0644 -t "$pkgdir/usr/share/licenses/$pkgname/" LICENSE
	install -Dm0644 <(_completion bash) "$pkgdir/usr/share/bash-completion/completions/dms"
	install -Dm0644 <(_completion zsh) "$pkgdir/usr/share/zsh/site-functions/_dms"
	install -Dm0644 <(_completion fish) "$pkgdir/usr/share/fish/vendor_completions.d/dms.fish"
}
