# Maintainer: artoo <artoo@manjaro.org>
# Contributor: Tom Gundersen <teg@jklm.no>
# Contributor: Dave Reisner <dreisner@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>

pkgbase=util-linux
pkgname=('util-linux-nosystemd' 'libutil-linux-nosystemd')
_pkgmajor=2.29
pkgver=${_pkgmajor}.2
pkgrel=2
pkgdesc="Miscellaneous system utilities for Linux"
url="https://www.kernel.org/pub/linux/utils/util-linux/"
arch=('i686' 'x86_64')
makedepends=('python' 'libeudev')
license=('GPL2')
options=('strip')
# validpgpkeys=('B0C64D14301CC6EFAEDF60E4E4B71D5EEC39C284')  # Karel Zak
source=("https://www.kernel.org/pub/linux/utils/util-linux/v$_pkgmajor/${pkgbase}-${pkgver}.tar.xz" #{xz,sign}
        pam-{login,common,su}
        '0001-sfdisk-support-empty-label-use-case.patch')
sha256sums=('accea4d678209f97f634f40a93b7e9fcad5915d1f4749f6c47bee6bf110fe8e3'
            '993a3096c2b113e6800f2abbd5d4233ebf1a97eef423990d3187d665d3490b92'
            'fc6807842f92e9d3f792d6b64a0d5aad87995a279153ab228b1b2a64d9f32f20'
            '51eac9c2a2f51ad3982bba35de9aac5510f1eeff432d2d63c6362e45d620afc0'
            '1df011e9fb5763b8c2dcb28ba19baad1ce302f73692ef7f16fce9cd9148b9687')

prepare() {
    cd "${pkgbase}-${pkgver}"
    patch -Np1 <../0001-sfdisk-support-empty-label-use-case.patch
}

build() {
    cd "${pkgbase}-${pkgver}"

    ./configure \
        --prefix=/usr \
        --libdir=/usr/lib \
        --bindir=/usr/bin \
        --localstatedir=/run \
        --enable-fs-paths-extra=/usr/bin \
        --enable-raw \
        --enable-vipw \
        --enable-newgrp \
        --enable-chfn-chsh \
        --enable-write \
        --enable-mesg \
        --with-python=3 \
        --with-systemdsystemunitdir=no \
        --with-systemd=no
        
    make
}

package_util-linux-nosystemd() {
    pkgdesc="Miscellaneous system utilities for Linux"
    depends=('pam' 'shadow' 'coreutils' 'libutil-linux-nosystemd' 'libeudev')
    groups=('base-nosystemd' 'base-devel-nosystemd')
    optdepends=('python: python bindings to libmount')
    provides=("util-linux=${pkgver}" "util-linux-ng=${pkgver}" 'eject' 'zramctl')
    conflicts=('util-linux' 'util-linux-ng' 'eject' 'zramctl')
    replaces=('zramctl')
    install=util-linux.install
    #   groups=('base' 'base-devel')
    backup=('etc/pam.d/chfn'
            'etc/pam.d/chsh'
            'etc/pam.d/login'
            'etc/pam.d/su'
            'etc/pam.d/su-l')

    cd "${pkgbase}-${pkgver}"

    make DESTDIR="$pkgdir" install

    # setuid chfn and chsh
    chmod 4755 "$pkgdir"/usr/bin/{newgrp,ch{sh,fn}}

    # install PAM files for login-utils
    install -Dm644 "$srcdir/pam-common" "$pkgdir/etc/pam.d/chfn"
    install -m644 "$srcdir/pam-common" "$pkgdir/etc/pam.d/chsh"
    install -m644 "$srcdir/pam-login" "$pkgdir/etc/pam.d/login"
    install -m644 "$srcdir/pam-su" "$pkgdir/etc/pam.d/su"
    install -m644 "$srcdir/pam-su" "$pkgdir/etc/pam.d/su-l"


    cd "$pkgdir"
    mv {,usr/}sbin/* usr/bin
    rmdir sbin usr/sbin

    ### runtime libs are shipped as part of libutil-linux
    rm "$pkgdir"/usr/lib/lib*.{a,so}*
}

package_libutil-linux-nosystemd() {
    pkgdesc="util-linux runtime libraries"
    provides=("libutil-linux=$pkgver" 'libblkid.so' 'libfdisk.so' 'libmount.so' 'libsmartcols.so' 'libuuid.so')
    depends=('glibc')
    conflicts=('libutil-linux')
    
    make -C "$pkgbase-$pkgver" DESTDIR="$pkgdir" install-usrlib_execLTLIBRARIES
}
