# Maintainer: <your name> <you@example.com>
pkgname=sjnmusic-gui-git
pkgver=r29.6931d3a  # placeholder; pkgver() computes the real value
pkgrel=1
pkgdesc="SJNmusic GUI (Rust/egui remote control for sjnmusicd)"
arch=('x86_64')
url="https://github.com/serverjonas/SJNmusic"
license=('MIT')

# ureq is built without its default TLS feature, so nothing links OpenSSL.
# tray-icon dlopens libappindicator3 at runtime; the package runs fine
# without it (the GUI logs a warning and skips the tray).
depends=('glibc' 'libglvnd' 'libxkbcommon'
         'libx11' 'libxcb' 'libxcursor' 'libxi' 'libxrandr'
         'wayland' 'fontconfig' 'freetype2')
optdepends=('sjnmusicd-git: the music daemon this GUI controls'
            'libappindicator-gtk3: system tray icon support')
makedepends=('git' 'rust' 'cargo' 'pkg-config' 'wayland' 'libx11')

source=("git+https://github.com/serverjonas/SJNmusic.git")
sha256sums=('SKIP')

pkgver() {
    cd "$srcdir/SJNmusic"
    printf "r%s.%s" \
        "$(git rev-list --count HEAD)" \
        "$(git rev-parse --short HEAD)"
}

build() {
    cd "$srcdir/SJNmusic/gui-rs"
    cargo build --release --frozen
}

check() {
    cd "$srcdir/SJNmusic/gui-rs"
    cargo test --release --frozen
}

package() {
    cd "$srcdir/SJNmusic/gui-rs"

    install -Dm755 target/release/sjnmusic-gui \
        "$pkgdir/usr/bin/sjnmusic-gui"

    install -Dm644 "$srcdir/SJNmusic/LICENSE" \
        "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
