# Maintainer: Kevin McConnell <kevin@37signals.com>

pkgname=gliff
pkgver=0.2.0
pkgrel=1
pkgdesc='Hyprland remote desktop over SSH (GPU H.264, 4:4:4)'
arch=('x86_64')
url='https://github.com/omacom/gliff'
license=('MIT' 'BSD-2-Clause')
install='gliff.install'
options=('!debug' '!lto')
depends=(
  'dbus'
  'gcc-libs'
  'glibc'
  'gtk4>=4.14'
  'hicolor-icon-theme'
  'libadwaita>=1.5'
  'libdrm'
  'libva>=2.20'
  'libxkbcommon'
  'mesa'
  'openssh'
  'vulkan-icd-loader'
  'wayland'
)
makedepends=('cargo' 'pkgconf' 'nasm')
optdepends=('vulkan-radeon: Vulkan compute on AMD'
            'vulkan-intel: Vulkan compute on Intel'
            'intel-media-driver: VA-API H.264 codec on Intel'
            'vulkan-tools: vulkaninfo for debugging'
            'libva-utils: vainfo for debugging'
            'vulkan-validation-layers: driver call validation for development')
source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz")
sha256sums=('e2c2e6754badff93e4ea4878d0137919870ce8c303ab6da6f962b7ce6f3f80a6')

prepare() {
  cd "$pkgname-$pkgver"

  cargo fetch --locked --target "$CARCH-unknown-linux-gnu"
}

build() {
  cd "$pkgname-$pkgver"

  export CARGO_TARGET_DIR=target
  cargo build --frozen --release
}

check() {
  cd "$pkgname-$pkgver"

  export CARGO_TARGET_DIR=target
  cargo test --frozen --release --workspace
}

package() {
  cd "$pkgname-$pkgver"

  install -Dm755 target/release/gliff "$pkgdir/usr/bin/gliff"
  install -Dm755 target/release/gliff-server "$pkgdir/usr/bin/gliff-server"
  install -Dm755 target/release/gliff-probe "$pkgdir/usr/bin/gliff-probe"
  install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
  install -Dm644 NOTICE "$pkgdir/usr/share/licenses/$pkgname/NOTICE"
  install -Dm644 pkgbuild/gliff.svg "$pkgdir/usr/share/icons/hicolor/scalable/apps/gliff.svg"
  install -Dm644 pkgbuild/gliff.desktop "$pkgdir/usr/share/applications/gliff.desktop"
  install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
  install -Dm644 docs/hardware-quirks.md "$pkgdir/usr/share/doc/$pkgname/hardware-quirks.md"
}
