# Maintainer: Filipe Laíns (FFY00) <lains@archlinuc.org>
# Contributor: Johannes Pohl <johannes.pohl90@gmail.com>

pkgname=urh
pkgver=2.7.5
pkgrel=1
pkgdesc='Universal Radio Hacker: investigate wireless protocols like a boss'
arch=('x86_64')
url='https://github.com/jopohl/urh'
license=('GPL3')
depends=('python' 'python-pyqt5' 'python-numpy' 'python-psutil' 'python-pyzmq' 'cython')
makedepends=('gcc' 'python-setuptools'
             'airspy' 'hackrf' 'libuhd' 'limesuite' 'rtl-sdr') # Optional
checkdepends=('python-pytest-runner' 'python-pytest-xdist' 'xorg-server-xvfb')
optdepends=('airspy: Airspy backend'
            'cython: compiling native modules inside URH'
            'hackrf: HackRF backend'
            'libuhd: USRP backend'
            'limesuite: LimeSDR backend'
            'rtl-sdr: RTL-SDR backend'
            'gnuradio: GNURadio backend'
            'gnuradio-osmosdr: OsmoSDR backend, via GNURadio'
            'python-pyaudio: Soundcard backend')
source=("$pkgname-$pkgver.tar.gz::https://github.com/jopohl/urh/archive/v$pkgver.tar.gz")
sha512sums=('81f32d8be83c5ea764de728c66c201d522a25a14baed30a7e6c7f0a4089d98d71520f8cb9cc594f41a6570e61fd48b9dc06ce8b87701f94b4ff58aed356f6481')

prepare() {
  cd $pkgname-$pkgver

  # Issues with PyQt, see https://github.com/jopohl/urh/issues/623
  rm tests/{test_filter.py,test_plugins.py}
}

build() {
  cd $pkgname-$pkgver

  python setup.py build build_ext
  python src/urh/cythonext/build.py
}

check() {
  cd $pkgname-$pkgver

  xvfb-run pytest --boxed
}

package() {
  cd $pkgname-$pkgver

  python setup.py install --root="$pkgdir" -O1 --skip-build

  install -Dm644 ./data/urh.desktop "$pkgdir"/usr/share/applications/urh.desktop
  install -Dm 644 data/icons/appicon.png "$pkgdir"/usr/share/pixmaps/urh.png
  install -Dm 644 README.md "$pkgdir"/usr/share/doc/$pkgname/README
}

