# Maintainer: aur.chaotic.cx

: ${_build_gui:=qt6}

_pkgname="youplay"
pkgname="$_pkgname"
pkgver=0.46
pkgrel=2
pkgdesc="Search, download and play music from YouTube"
url="https://codeberg.org/ralfhersel/youplay"
license=('GPL-3.0-only')
arch=('any')

makedepends=('git')

conflicts=(
  'youplay-base'
  'youplay-gtk3'
  'youplay-gtk4'
  'youplay-pyqt6'
  'youplay-qt6'
)

_pkgsrc="$_pkgname"
_pkgext="tar.gz"
source=("$_pkgname-$pkgver.$_pkgext"::"$url/archive/v$pkgver.$_pkgext")
sha256sums=('290a14888c5f0ff056c841097a721d29bebaae225c5d560052717ed876396bcb')

package() {
  depends+=(
    'ffmpeg'
    'mpv'
    'python'
    'python-mpv'
    'yt-dlp'
  )

  case "$_build_gui" in
    gtk3)
      depends+=('gtk3' 'python-gobject')
      ;;
    gtk4)
      depends+=('gtk4' 'libadwaita')
      ;;
    pyqt6)
      depends+=('python-pyqt6')
      ;;
    *)
      depends+=('pyside6')
      _build_gui=qt6
      ;;
  esac

  cd "$_pkgsrc"

  # main files
  install -Dm755 youplay.py -t "$pkgdir/usr/share/$_pkgname/"
  install -Dm644 youplay_gtk3.py -t "$pkgdir/usr/share/$_pkgname/"
  install -Dm644 youplay_gtk4.py -t "$pkgdir/usr/share/$_pkgname/"
  install -Dm644 youplay_pyqt6.py -t "$pkgdir/usr/share/$_pkgname/"
  install -Dm644 youplay_qt6.py -t "$pkgdir/usr/share/$_pkgname/"

  # script
  install -Dm755 /dev/stdin "$pkgdir/usr/bin/$pkgname" << END
#!/bin/bash
[ -n "\$@" ] && _gui=grep -Po '(?<=--gui=)\S+' <<< "\$@"
: \${_gui=$_build_gui}

exec python /usr/share/$_pkgname/youplay.py --gui=\$_gui
END

  # icon
  install -Dm644 youplay.svg -t "$pkgdir/usr/share/$_pkgname/"
  install -dm755 "$pkgdir/usr/share/pixmaps"
  ln -sf "/usr/share/$_pkgname/youplay.svg" "$pkgdir/usr/share/pixmaps/youplay.svg"

  # desktop file
  install -Dm644 /dev/stdin "$pkgdir/usr/share/applications/youplay.desktop" << END
[Desktop Entry]
Type=Application
Name=YouPlay
GenericName=Play music from Youtube
Comment=$pkgdesc
Exec=$_pkgname
Icon=$_pkgname
Terminal=false
StartupNotify=false
Categories=Utility;Music
Keywords=Multimedia;Music;Youtube
END
}
