Skip to content

Instantly share code, notes, and snippets.

@artixnous
Created February 15, 2020 00:37
Show Gist options
  • Save artixnous/4372f70f5b64239a86f57c4df14d042b to your computer and use it in GitHub Desktop.
Save artixnous/4372f70f5b64239a86f57c4df14d042b to your computer and use it in GitHub Desktop.
fail2ban Artix PKGBUILD
# Maintainer: Felix Yan <[email protected]>
# Contributor: Bartłomiej Piotrowski <[email protected]>
# Contributor: Geoffroy Carrier <[email protected]>
# Contributor: michalzxc
# Contributor: nbags <[email protected]>
pkgname=fail2ban
pkgver=0.11.1
pkgrel=1
pkgdesc='Bans IPs after too many failed authentication attempts'
url='https://www.fail2ban.org/'
license=('GPL')
arch=('any')
depends=('iptables' 'python-pyinotify' 'whois' 'sqlite')
makedepends=('python-setuptools')
checkdepends=('python-coverage')
backup=(etc/fail2ban/fail2ban.conf
etc/fail2ban/jail.conf
etc/logrotate.d/fail2ban)
source=("$pkgname-$pkgver.tar.gz::https://github.com/fail2ban/$pkgname/archive/$pkgver.tar.gz"
fail2ban-fix-nginx-rule.patch::https://github.com/fail2ban/fail2ban/commit/ec37b1942c4da76f7a0f71efe81bea6835466648.patch)
sha512sums=('019b088aa6375f98742ed101ef6f65adabca3324444d71d5b8597a8d1d22fa76b9f503660f0498643fe24a3b8e4368de916072a1ab77b8e2ea3eda41c3e0c8c6'
'2d57fe7a7e3d1889dfa00ac33f5071069ed62f5fc0edb1e1827aedc47fae3a36d19c568b1721ba3a8e117f4ba6b3756d11942f2320b42864d45203f45761c7b6')
prepare() {
cd $pkgname-$pkgver
patch -p1 -i ../fail2ban-fix-nginx-rule.patch
sed -i 's|self.install_dir|"/usr/bin"|' setup.py
sed -i 's/^before = paths-debian.conf/before = paths-artix.conf/' config/jail.conf
sed -i 's/systemd/auto/g;/journal/d;' config/paths-arch.conf
mv config/paths-arch.conf config/paths-artix.conf
}
build() {
cd $pkgname-$pkgver
./fail2ban-2to3
python setup.py build
}
package() {
cd $pkgname-$pkgver
python setup.py install --root "$pkgdir" --optimize=1
install -Dm644 files/gentoo-initd \
"$pkgdir"/etc/init.d/$pkgname
install -Dm644 files/gentoo-confd \
"$pkgdir"/etc/conf.d/$pkgname
install -Dm644 files/fail2ban-tmpfiles.conf \
"$pkgdir"/usr/lib/tmpfiles.d/$pkgname.conf
install -Dm644 files/fail2ban-logrotate \
"$pkgdir"/etc/logrotate.d/fail2ban
install -Dm644 files/bash-completion \
"$pkgdir"/usr/share/bash-completion/completions/fail2ban
# fix sendmail location
sed -i 's/sbin/bin/g' "$pkgdir"/etc/fail2ban/action.d/sendmail*.conf
install -Dm644 man/fail2ban.1 "$pkgdir"/usr/share/man/man1/fail2ban.1
install -Dm644 man/fail2ban-client.1 \
"$pkgdir"/usr/share/man/man1/fail2ban-client.1
install -Dm644 man/fail2ban-regex.1 \
"$pkgdir"/usr/share/man/man1/fail2ban-regex.1
install -Dm644 man/fail2ban-server.1 \
"$pkgdir"/usr/share/man/man1/fail2ban-server.1
install -Dm644 man/jail.conf.5 "$pkgdir"/usr/share/man/man5/jail.conf.5
rm -r "$pkgdir/run"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment