# Maintainer: Jelle van der Waa <jelle@archlinux.org>
# Contributor: Grey Christoforo <my first name [at] my last name [dot] net>

pkgname=cura
pkgver=4.2.1
pkgrel=1
pkgdesc="A software solution for 3D printing aimed at RepRaps and the Ultimaker."
depends=('python-pyqt5' 'qt5-svg' 'python-scipy' 'python-pyserial' 'python-numpy' 'uranium' 'python-requests'
         'curaengine' 'cura-binary-data' 'cura-resources-materials' 'libsavitar' 'qt5-graphicaleffects')
makedepends=('qt5-tools' 'cmake')
optdepends=('python-zeroconf: network printing support')
provides=('cura')
url="https://ultimaker.com/en/products/cura-software"
license=('LGPL')
arch=('any')
source=($pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/Cura/archive/${pkgver}.tar.gz)
sha512sums=('4f47f3f5597d1a56d88207eacacece49edb766c75ae18ddc9fb8689b76c16fd4decc9c8af7cab485aac3c9cffe13095aaad34e1c60634249ae2923ead771ac52')

# Build order
# arcus -> uranium -> curaengine -> libsavitar ->

prepare(){
  cd Cura-${pkgver}
  sed -i 's,/dist-packages,.${PYTHON_VERSION_MINOR}/site-packages,g' CMakeLists.txt
}

build(){
  cd Cura-${pkgver}
  mkdir -p build
  cd build
  cmake .. \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_BUILD_TYPE=Release \
    -DURANIUM_SCRIPTS_DIR=/usr/share/uranium/scripts \
    -DCURA_VERSION=$pkgver \
    -DCURA_SDK_VERSION=6.0.0 -DCURA_CLOUD_API_VERSION=1

  make
}

package(){
  cd Cura-${pkgver}/build
  make DESTDIR="${pkgdir}" install
  
  # make sure cura can find uranium plugins:
  ln -s /usr/lib/uranium/plugins/* "${pkgdir}/usr/lib/cura/plugins/."

  # don't ever send any user or print info through the internet to Ultimaker
  rm -rf "${pkgdir}/usr/lib/cura/plugins/SliceInfoPlugin"
}
