# Maintainer (arch): Felix Yan <felixonmars@archlinux.org>
# Maintainer (arch): Antonio Rojas <arojas@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org>
# Contributor: André Silva <emulatorman@hyperbola.info>
# Contributor: jc_gargma <jc_gargma@iserlohn-fortress.net>
# Maintainer: Andreas Grapentin <andreas@grapentin.org>
# Contributor: grizzlyuser <grizzlyuser@protonmail.com>
# Contributor: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
# Contributor: bill-auger <bill-auger@programmer.net>


# parabola changes and rationale:
#  - replace non-privacy search engines
#  - pin to strongly-coupled dependency versions


_name=kio
pkgname=${_name}5
pkgver=5.115.0
pkgrel=3
pkgrel+=.parabola1
_pkgver_i686=5.105.0       # n/a i686
_pkgrel_i686=1.0.parabola2 # n/a i686
eval "[[ -v _pkgver_${CARCH} ]] && pkgver=\$_pkgver_${CARCH}" # our different arches do not
eval "[[ -v _pkgrel_${CARCH} ]] && pkgrel=\$_pkgrel_${CARCH}" # always roll at the same speed
pkgdesc='Resource and network access abstraction'
pkgdesc+=', with privacy-respecting search engines only'
arch=(x86_64)
arch+=(armv7h i686)
arch=( ${arch[*]/i686/} ) # n/a i686
url='https://community.kde.org/Frameworks'
license=(LGPL)
depends=(solid5 kjobwidgets5 kbookmarks5 libxslt kwallet5 ktextwidgets5 kded5)
depends=( ${depends[*]/kded5/kded5=$pkgver} ) # pin version to other k-things
makedepends=(extra-cmake-modules kdoctools5 doxygen qt5-tools qt5-doc)
optdepends=('kio5-extras: extra protocols support (sftp, fish and more)'
            'kdoctools5: for the help kioslave'
            'switcheroo-control: hybrid GPU support')
conflicts=("$_name<5.111")
replaces=("$_name<5.111")
groups=(kf5)
source=(https://download.kde.org/stable/frameworks/${pkgver%.*}/$_name-$pkgver.tar.xz{,.sig})
source+=(duckduckgo_html.desktop
         duckduckgo_lite.desktop
         gnupg-keys.desktop
         internet-archive.desktop
         parabola-packages.desktop
         parabola-wiki.desktop
         searx.desktop
         yacy.desktop)
sha256sums=('0f53387b5a883fcef3db10b7c1062485a314d42d9584d9119056e571568ff90b'
            'SKIP')
sha256sums+=('31910ab7393e67609f15e04a57f6406f63e6dae58b01bce0787741bc5958f292'
             '40466a9dad7075f2525e9e024720da7d7b49a22892b6fca8b81cc0e6408d2f7d'
             '57ded4375e1ddfe747bc55e3c52f4f39d1688f583c6af77da3479f544d262b71'
             '5e57f0978b3429dfd2e97f215ab58394dd4c19c5b7e1b6bea9733eae92253e1a'
             '7960cfc6b5a4030898cdd9d4699732fd7c1995983a0762ed1121aa2589beedc3'
             '45af1a8588246c64c2e306237ef605406c5289c2ff53b5f459315c40c8e5099b'
             '0264268855ac59872fe6bde4ce5c7d5f4a9b4d6936f3c2f870fc9a34de323c54'
             '0a494a6bd652533b2ac1ea6a139e8b7295da29f840e5d0d7b2aa7e18886887ef')
#_sha256sum_i686='1f971115d3cc488973f74222c9ae3722ac630fa8c02c00d4ba22eb03ceb8677d' # n/a i686
eval "[[ -v _sha256sum_${CARCH} ]] && sha256sums[0]=\$_sha256sum_${CARCH}" # upstream source-ball
validpgpkeys=(53E6B47B45CEA3E0D5B7457758D0EE648A48B3BB) # David Faure <faure@kde.org>


prepare() {
  cd "${srcdir}"/${_name}-${pkgver}/

  # replace default search engines
  local searchengines_dir=src/urifilters/ikws/searchproviders
  find ${searchengines_dir}/         \
       -name *.desktop               \
       -not -name duckduckgo.desktop \
       -not -name fsd.desktop        \
       -not -name wikipedia.desktop  \
       -not -name wiktionary.desktop \
       -exec rm -f {} \;
  cp -v "${srcdir}"/*.desktop ${searchengines_dir}/
}

build() {
  cmake -B build -S $_name-$pkgver \
    -DCMAKE_INSTALL_LIBEXECDIR=lib \
    -DKF6_COMPAT_BUILD=ON \
    -DBUILD_TESTING=OFF \
    -DBUILD_QCH=ON
  cmake --build build
}

package() {
  DESTDIR="$pkgdir" cmake --install build
}
