# Maintainer:

_pkgname="ruffle"
pkgname="$_pkgname-git"
pkgver=2024.07.02.r4.g0c40803
pkgrel=1
pkgdesc="A Flash Player emulator written in Rust"
url="https://github.com/ruffle-rs/ruffle"
license=('Apache-2.0' 'MIT')
arch=('x86_64')

depends=(
  alsa-lib
  gtk3
)
makedepends=(
  at-spi2-core
  cargo
  clang
  git
  jdk-openjdk
  python
)

provides=("$_pkgname")
conflicts=("$_pkgname")

options=('!lto')

_pkgsrc="$_pkgname"
source=("$_pkgsrc"::"git+$url.git")
sha256sums=('SKIP')

pkgver() {
  cd "$_pkgsrc"
  git describe --long --tags --abbrev=7 \
    | sed -E 's/^[^0-9]*//;s/([^-]*-g)/r\1/;s/-/./g'
}

prepare() {
  cd "$_pkgsrc/desktop"
  cargo fetch --locked --target "$CARCH-unknown-linux-gnu"
}

build() {
  cd "$_pkgsrc/desktop"
  cargo build --frozen --release
}

package() {
  cd "$_pkgsrc"
  install -Dm755 "target/release/ruffle_desktop" "$pkgdir/usr/bin/$_pkgname"
  install -Dm 644 LICENSE.md -t "$pkgdir/usr/share/licenses/$pkgname/"

  for s in 16x16 32x32 128x128 256x256 512x512; do
    install -Dm644 "desktop/assets/Assets.xcassets/RuffleMacIcon.iconset/icon_$s.png" "$pkgdir/usr/share/icons/hicolor/$s/apps/$_pkgname.png"
  done

  install -Dm644 /dev/stdin "$pkgdir/usr/share/applications/$_pkgname.desktop" << END
[Desktop Entry]
Type=Application
Name=${_pkgname^}
Comment=$pkgdesc
Exec=$_pkgname
Icon=$_pkgname
Terminal=false
StartupNotify=false
Categories=Audio;AudioVideo;Graphics;GTK;Player;Video;Viewer;
MimeType=application/x-shockwave-flash;
END
}
