Documentation
import os
import toml

def build_pkgbuild(manifest):
    output = """
# Maintainer: %s
pkgname=%s
pkgver=%s
pkgrel=1
epoch=
pkgdesc="%s"
arch=('x86_64')
url=""
license=('GPL')
groups=()
depends=('python>=3.8.0')
makedepends=()
checkdepends=()
optdepends=()
provides=()
conflicts=()
replaces=()
backup=()
options=()
install=
changelog=
source=("$pkgname-$pkgver.tar.gz")
noextract=()
validpgpkeys=()

prepare() {
    cd "$pkgname-$pkgver"
}

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

check() {
    cd "$pkgname-$pkgver"
}

package() {
    cd "$pkgname-$pkgver"
    mv ./usr/ "$pkgdir/"
}
""" % (
    ",".join(manifest['package']['authors']),
    manifest['package']['name'],
    manifest['package']['version'],
    manifest['package']['description']
)

    return output


manifest = toml.load("Cargo.toml")
name = manifest['package']['name']
version = manifest['package']['version']
description = manifest['package']['description']
os.mkdir(name)
os.chdir(name);

folder = "%s-%s" % (name, version)
os.system('cargo build --release')

os.system('rm target/release/build -rf')
os.system("mkdir %s/usr/lib/%s -p" % (folder, name))

os.system("mkdir %s/usr/lib/python3.8/apres/ -p" % folder)
os.system("cp ../src/python_bindings/* %s/usr/lib/python3.8/apres -r" % folder)
os.system("cp ../target/release/lib%s.so %s/usr/lib/ -p" % (name, folder))

os.system("tar --create --file \"%s.tar.gz\" %s" % (folder, folder))
os.system("rm \"%s\" -rf" % folder)

with open("PKGBUILD", "w") as fp:
    fp.write(build_pkgbuild(manifest))
os.system("makepkg -g -f -p PKGBUILD >> PKGBUILD")

os.system("rm src -rf")

os.chdir("../")
os.system("tar --create --file \"%s-dist.tar.gz\" %s/*" % (folder, name))
os.system("rm %s -rf" % name)