# Maintainer: Holo Team

pkgbase='steamos-reset'
pkgname=('steamos-reset' 'steamos-reset-ui')
_srctag=jupiter-20260414.1
pkgver=${_srctag#jupiter-}
pkgrel=1
arch=('x86_64')
license=('GPL')
makedepends=('git' 'qt5-base' 'qt5-quickcontrols2')
url='https://gitlab.steamos.cloud/holo/steamos-reset'
source=("${pkgbase}::git+ssh://git@gitlab.steamos.cloud/holo/steamos-reset#tag=${_srctag}")
sha256sums=('10e1dbb04dd00a54a07d4613e9e7a62d725ac9bd3cc8416deca8e9c0539ec2e4')

_uifiles=(
    usr/share/holo-reset/lighttpd/holo-reset.conf
    usr/lib/holo-reset/bin/holo-reset-qml
    usr/bin/holo-reset-service
    usr/share/applications/holo-factory-reset.qml.desktop
    usr/share/holo-reset/holo-reset.svg
    usr/lib/systemd/system/holo-reset.service
)

build() {
    cd "$pkgbase"
    autoreconf -ivf
    ./configure --prefix=/usr --libexecdir=/usr/lib --sbindir=/usr/bin \
                --with-ui=qml
    make
}

package_steamos-reset() {
    depends=('curl' 'bash' 'steamos-efi' 'steamos-atomupd-client' 'jq')
    optdepends=(
        'steamos-customizations-jupiter: for holo-alias compatibility symlinks'
    )
    pkgdesc='Backend and CLI to reset SteamOS to a freshly installed state'

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

    for f in "${_uifiles[@]}"; do
        rm -f "${pkgdir}/${f}"
    done

    find "$pkgdir" -type d -empty -delete
}

package_steamos-reset-ui() {
    depends=('steamos-reset' 'lighttpd' 'gcc-libs' 'qt5-base' 'qt5-declarative')
    pkgdesc='GUI tool to reset SteamOS to a freshly installed state'

    cd "${pkgbase}"
    make DESTDIR="${srcdir}/${pkgbase}-ui" install

    for f in "${_uifiles[@]}"; do
        install -d "${pkgdir}/${f%/*}"
        cp -a "${srcdir}/${pkgbase}-ui/${f}" "${pkgdir}/${f}"
    done
}
