# Maintainer: Static_Rocket

pkgbase=asusctl-git
pkgname=(asusctl-git rog-control-center-git)
epoch=2
pkgver=6.3.8.r1.g321b111
pkgrel=1
pkgdesc="A control daemon, tools, and a collection of crates for interacting with ASUS ROG laptops"
arch=('x86_64')
url="https://gitlab.com/asus-linux/asusctl"
license=('MPL2')
makedepends=('cmake' 'git' 'rust' 'gtk3' 'clang'
             'hicolor-icon-theme' 'libusb' 'fontconfig' 'systemd' 'power-profiles-daemon' 'seatd' 'libinput')
replaces=('asus-nb-ctrl-git')
source=('git+https://gitlab.com/asus-linux/asusctl.git')
md5sums=('SKIP')
_gitdir=${pkgname%"-git"}

pkgver() {
	cd "$_gitdir"
	git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
}

build() {
	cd "$_gitdir"
	make build
}

_pick() {
  local p="$1" f d; shift
  for f; do
    d="$srcdir/$p/${f#$pkgdir/}"
    mkdir -p "$(dirname "$d")"
    mv "$f" "$d"
    rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
  done
}

package_asusctl-git() {
  pkgdesc="${pkgdesc/tools/CLI tools}"
  depends=('libusb' 'systemd' 'power-profiles-daemon' 'hicolor-icon-theme')
  optdepends=('acpi_call: fan control'
            'supergfxctl: hybrid GPU control'
            'asusctltray: tray profile switcher'
            'rog-control-center: app to control asusctl')
  provides=('asusctl')
  conflicts=('asusctl')

  cd "$_gitdir"
  make DESTDIR="${pkgdir}" install

  _pick rogcc "${pkgdir}/usr/bin/rog-control-center" \
     "${pkgdir}/usr/share/applications/rog-control-center.desktop" \
     "${pkgdir}/usr/share/icons/hicolor/512x512/apps/rog-control-center.png" \
     "${pkgdir}/usr/share/rog-gui"
}

package_rog-control-center-git() {
  depends=('asusctl' 'fontconfig' 'libappindicator-gtk3' 'supergfxctl'
  'libxkbcommon' 'systemd-libs' 'seatd' 'libinput' 'mesa' 'hicolor-icon-theme')
  provides=('rog-control-center')
  conflicts=('rog-control-center')
  pkgdesc="App to control asusctl"

  mv rogcc/* "$pkgdir"
}

