diff --git a/extra/python-pwntools/PKGBUILD b/extra/python-pwntools/PKGBUILD index 5a925ff90..414af6c6a 100644 --- a/extra/python-pwntools/PKGBUILD +++ b/extra/python-pwntools/PKGBUILD @@ -8,56 +8,67 @@ pkgname=python-pwntools _pyname=pwntools -pkgver=4.10.0 +pkgver=4.11.0 pkgrel=1 pkgdesc='CTF framework and exploit development library' url='https://github.com/Gallopsled/pwntools' arch=('any') license=('MIT' 'GPL2' 'BSD') -depends=('python' - 'python-mako' - 'python-pyelftools' - 'python-capstone' - 'ropgadget' - 'python-pyserial' - 'python-requests' - 'python-pip' - 'python-pygments' - 'python-pysocks' - 'python-dateutil' - 'python-packaging' - 'python-psutil' - 'python-intervaltree' - 'python-sortedcontainers' - 'python-unicorn' - 'python-paramiko' - 'python-colored-traceback' - 'python-rpyc' - 'ropgadget') -makedepends=('python-setuptools') +depends=( + 'python' + 'python-capstone' + 'python-colored-traceback' + 'python-dateutil' + 'python-intervaltree' + 'python-mako' + 'python-packaging' + 'python-paramiko' + 'python-pip' + 'python-psutil' + 'python-pyelftools' + 'python-pygments' + 'python-pyserial' + 'python-pysocks' + 'python-requests' + 'python-rpyc' + 'python-six' + 'python-sortedcontainers' + 'python-unicorn' + 'ropgadget' +) +makedepends=( + 'python-build' + 'python-installer' +) +backup=('etc/pwn.conf') source=(https://github.com/Gallopsled/pwntools/archive/${pkgver}/${pkgname}-${pkgver}.tar.gz pwn.conf) -sha256sums=('d4027c087c7c3c4953db18d5899d11ca3ff0ee61016f2926e47f2e635917dd7e' +sha256sums=('6242c30eea4813198b4f1c86876546606f412d1ab94bf45f60c9723cc8c8937c' '50916e4e45d026422cd6bfe8de50e7246c61b0b1e0007571e7c04a994282fe89') -b2sums=('a452d1efb23430a27630b402ad49967088bf8f9bcfa1e9fda1a87c58384c750531724ad24efa89caaa205097617529f9e0b8489251b7d5f098540efd8e4459c3' +b2sums=('11b1b6a923c44ee1b5027b4a71f9f3b6b9bcd36a2a38915ee46ffc855b0749528a204581dcb5071d50031701924b3cc08edf95b363d1d1b6e76d029a91011293' 'cac0a12eea8abd3d2ee21632e7f2281e7e35c2d7839cfbcba83ae5d0e8f427e9cc2462a6d17d187252b99d9dbbb14393b9d5a63996c42043f553e9b66bfe9e07') build() { cd ${_pyname}-${pkgver} - python setup.py build + python -m build --wheel --no-isolation } check() { - cd "${_pyname}-${pkgver}" - PYTHONPATH=. PWNLIB_NOTERM=true python -c 'import pwn' + local _site_packages=$(python -c "import site; print(site.getsitepackages()[0])") + + cd ${_pyname}-${pkgver} + python -m installer --destdir=test_dir dist/*.whl + + PYTHONPATH="test_dir/$_site_packages:$PYTHONPATH" PWNLIB_NOTERM=true python -c 'import pwn' } package() { cd ${_pyname}-${pkgver} - python setup.py install -O1 --root="${pkgdir}" --skip-build --only-use-pwn-command + python -m installer --destdir="${pkgdir}" dist/*.whl + find "${pkgdir}/usr/bin" -type f ! -name pwn -delete + install -Dm 644 "${srcdir}/pwn.conf" -t "${pkgdir}/etc" install -Dm 644 LICENSE-pwntools.txt -t "${pkgdir}/usr/share/licenses/${pkgname}" - rm -f "${pkgdir}"/usr/lib/python*/site-packages/*.{txt,md} # https://github.com/Gallopsled/pwntools/issues/2150 install -d "${pkgdir}/usr/share/doc/"