# Maintainer: Bruno Pagani <archange@archlinux.org>
# Contributor: Eli Schwartz <eschwartz@archlinux.org>
# Contributor: Alexandre Filgueira <alexfilgueira@antergos.com>

pkgbase=nemo-extensions
pkgname=(nemo-audio-tab
         nemo-emblems
         nemo-fileroller
         nemo-image-converter
         nemo-pastebin
         nemo-preview
         nemo-python
         nemo-seahorse
         nemo-share
         nemo-terminal)
        #nemo-compare
        #nemo-dropbox dropbox in AUR
        #nemo-media-columns pypdf2 in AUR but mostly unmaintained
        #nemo-repairer
pkgver=6.6.0
pkgrel=1
pkgdesc="Various extensions for Nemo"
arch=(x86_64)
license=(GPL2)
url="https://github.com/linuxmint/nemo-extensions"
depends=(nemo)
_preview_deps=(cjs clutter-gtk clutter-gst libmusicbrainz5 gtksourceview4 xreader webkit2gtk-4.1)
_python_deps=(python-gobject python-setuptools)
_seahorse_deps=(libcryptui)
makedepends=(git intltool gobject-introspection meson glib2-devel)
makedepends+=("${_preview_deps[@]}" "${_python_deps[@]}" "${_seahorse_deps[@]}")
options=(!emptydirs)
source=(git+${url}#tag=$pkgver)
sha256sums=('9477bf5a298c03a5e83ff382665c1c7edcaf051757ca3b56449cf636a4494249')
b2sums=('e3803f0d9254a663576c532e0dbdc08e29eac625ee18274725acdf37f73a1757f557b1bb6452a1f2578ac4c48017e919123ae9c36c117e5e917a81538b4f2d84')

build() {
  cd ${pkgbase}

  for _dir in "${pkgname[@]}"; do
    if [[ -f ${_dir}/meson.build ]]; then
      pushd ${_dir}
      arch-meson --libexecdir=lib/${_dir} . build
      meson compile -C build
      popd
    fi
  done

  cd nemo-audio-tab
  python setup.py build
  cd ..

  cd nemo-emblems
  python setup.py build
  cd ..

  cd nemo-pastebin
  python setup.py build
  cd ..
}

package_nemo-audio-tab(){
  pkgdesc="View audio tag information in Nemo properties tab"
  depends+=(nemo-python python-mutagen)
  optdepends=('cinnamon-translations: i18n')

  cd ${pkgbase}/${pkgname}
  python setup.py install --prefix=/usr --root="${pkgdir}" --skip-build --optimize=1
}

package_nemo-emblems(){
  pkgdesc="Change a folder or file emblem in Nemo"
  depends+=(nemo-python)
  optdepends=('cinnamon-translations: i18n')

  cd ${pkgbase}/${pkgname}
  python setup.py install --prefix=/usr --root="${pkgdir}" --skip-build --optimize=1
}

package_nemo-fileroller(){
  pkgdesc="File archiver extension for Nemo"
  depends+=(file-roller)
  optdepends=('cinnamon-translations: i18n')

  cd ${pkgbase}/${pkgname}
  meson install -C build --destdir="$pkgdir"
}

package_nemo-image-converter(){
  pkgdesc="Nemo extension to rotate/resize image files"
  depends+=(imagemagick)
  optdepends=('cinnamon-translations: i18n')

  cd ${pkgbase}/${pkgname}
  meson install -C build --destdir="$pkgdir"
}

package_nemo-preview(){
  pkgdesc="Quick file previewer for Nemo"
  depends+=("${_preview_deps[@]}")
  optdepends=('cinnamon-translations: i18n')

  cd ${pkgbase}/${pkgname}
  meson install -C build --destdir="$pkgdir"
}

package_nemo-pastebin(){
  pkgdesc="Nemo extension to send files to a pastebin"
  depends+=(nemo-python pastebinit)
  optdepends=('cinnamon-translations: i18n')

  cd ${pkgbase}/${pkgname}
  python setup.py install --prefix=/usr --root="${pkgdir}" --skip-build --optimize=1
}

package_nemo-python() {
  pkgdesc="Python3 binding for Nemo components"
  depends+=("${_python_deps[@]}")

  cd ${pkgbase}/${pkgname}
  meson install -C build --destdir="$pkgdir"
}

package_nemo-seahorse(){
  pkgdesc="PGP encryption and signing extension for Nemo"
  depends+=("${_seahorse_deps[@]}")
  optdepends=('cinnamon-translations: i18n')

  cd ${pkgbase}/${pkgname}
  meson install -C build --destdir="$pkgdir"
}

package_nemo-share(){
  pkgdesc="Samba extension for Nemo"
  depends+=(samba)
  optdepends=('cinnamon-translations: i18n')

  cd ${pkgbase}/${pkgname}
  meson install -C build --destdir="$pkgdir"
}

package_nemo-terminal(){
  pkgdesc="Embedded terminal window for Nemo"
  depends=(nemo-python vte3)

  cd ${pkgbase}/${pkgname}
  install -Dm644 src/nemo_terminal.py -t "${pkgdir}"/usr/share/nemo-python/extensions/
  install -Dm755 src/nemo-terminal-prefs.py "${pkgdir}"/usr/bin/nemo-terminal-prefs
  install -Dm644 src/org.nemo.extensions.nemo-terminal.gschema.xml -t "${pkgdir}"/usr/share/glib-2.0/schemas/
  install -Dm644 pixmap/logo_120x120.png -t "${pkgdir}"/usr/share/nemo-terminal/
}

## missing kaa-base in the repos
#package_nemo-media-columns(){
#    pkgdesc=("A Nemo extension to display music/EXIF and PDF metadata info in the Nemo List View")
#    depends=('nemo-python' 'mutagen' 'python2-exiv2' 'python2-kaa-base' 'python2-pillow' 'python2-pypdf')
#
#    cd "${srcdir}"/${pkgbase}/${pkgname}
#    install -Dm644 nemo-media-columns.py \
#        "${pkgdir}"/usr/share/nemo-python/extensions/nemo-media-columns.py
#}

## no clue what any of this does
# package_nemo-compare() {
#   cd ${pkgbase}/nemo-compare

#   pkgdesc="Context menu comparison extension for Nemo file manager"
#   depends=(python2 python2-xdg meld nemo-python)

#   install -d ${pkgdir}/usr/share/applications/
#   install -d ${pkgdir}/usr/share/nemo-compare/

#   install -Dm755 ${srcdir}/data/nemo-compare-preferences.desktop \
#                   /usr/share/applications/nemo-compare-preferences.desktop
#   install -Dm755 ${srcdir}/data/nemo-compare-notification \
#                   /usr/share/nemo-compare/nemo-compare-notification
#   install -Dm755 ${srcdir}/src/nemo-compare.py \
#                   /usr/share/nemo-compare/nemo-compare.py
#   install -Dm755 ${srcdir}/src/utils.py \
#                   /usr/share/nemo-compare/utils.py
#   install -Dm755 ${srcdir}/src/nemo-compare-preferences.py \
#                   /usr/share/nemo-compare/nemo-compare-preferences.py

# }
