# Maintainer: Levente Polyak # Maintainer: kpcyrd # Contributor: alexiobash < me (at) alexiobash (dot) com > pkgname=wpscan pkgver=3.8.22 pkgrel=3 epoch=1 pkgdesc='Black box WordPress vulnerability scanner' url='https://wpscan.org' arch=('x86_64') license=('custom:WPScan') depends=('ruby-bundler' 'libxslt' 'libyaml' 'curl' 'libxml2') optdepends=('metasploit') options=('!strip' '!emptydirs') install=wpscan.install source=(https://github.com/wpscanteam/wpscan/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz) sha512sums=('fbd7eee9d108a6abe010e16f4e5aaaca7aa91a50e38682c30e263fd37c153797de52752723f2addfeb4431af3b63f36438903c6532f8603a0bcd23cca20c0d6e') b2sums=('3585610396b724d75beac8436ee1e7819850cf5635ccbad2679ae590415fdbbbf7955d7d2a7c7d85f61ce993d01c553c539d1e56bc59856c6c7e752e45785e54') prepare() { cd ${pkgname}-${pkgver} sed -i '/bundler/ s|~>|>=|g' $pkgname.gemspec bundle config build.nokogiri --use-system-libraries bundle config set --local path vendor/bundle bundle config set --local without development test } build() { cd ${pkgname}-${pkgver} CFLAGS+=" -I/usr/include/libxml2" bundle install -j"$(nproc)" # reproducible builds: don't leak jobs count sed '/BUNDLE_JOBS/d' -i .bundle/config } package() { cd ${pkgname}-${pkgver} install -d "${pkgdir}/opt/${pkgname}" cp -ra --no-preserve=owner . "${pkgdir}/opt/${pkgname}" install -d "${pkgdir}/usr/bin" cat > "${pkgdir}/usr/bin/${pkgname}" << EOF #!/bin/sh BUNDLE_GEMFILE=/opt/${pkgname}/Gemfile bundle exec ruby /opt/wpscan/bin/wpscan "\$@" EOF chmod 755 "${pkgdir}/usr/bin/${pkgname}" install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" install -Dm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}" cd "${pkgdir}"/opt/wpscan/vendor/bundle/ruby/* rm -rf cache gems/*/{ext,lib/*/*.so} \ extensions/*/*/*/{mkmf.log,gem_make.out} } # vim: ts=2 sw=2 et: