mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-05-04 20:06:43 +02:00
main/ferm: add check, documentation, openrc
- ferm has a test suite, which passes - ferm has multiple (generated) pieces of documentation - it makes sense to use ferm in-place of iptables-save This patch adds tests, packages docs, and adds an openrc init script that I've been using for about a month now. For well-behaved packages (`need firewall`, rather than `need iptables) it can be an in-place replacement (as it `provide firewall`).
This commit is contained in:
parent
18dcd89c60
commit
81f05ada5a
@ -2,26 +2,49 @@
|
||||
# Maintainer: Michael Mason <ms13sp@gmail.com>
|
||||
pkgname=ferm
|
||||
pkgver=2.4.1
|
||||
pkgrel=0
|
||||
pkgrel=2
|
||||
pkgdesc="firewall configuration tool"
|
||||
url="http://ferm.foo-projects.org/"
|
||||
arch="noarch"
|
||||
license="GPL"
|
||||
depends="perl iptables"
|
||||
options="!check"
|
||||
source="http://ferm.foo-projects.org/download/${pkgver%.*}/$pkgname-$pkgver.tar.xz"
|
||||
source="
|
||||
http://ferm.foo-projects.org/download/${pkgver%.*}/$pkgname-$pkgver.tar.xz
|
||||
ferm.confd
|
||||
ferm.initd
|
||||
"
|
||||
subpackages="$pkgname-doc $pkgname-openrc"
|
||||
builddir="$srcdir"/$pkgname-$pkgver
|
||||
|
||||
build() {
|
||||
return 0
|
||||
cd "$builddir"
|
||||
make
|
||||
}
|
||||
|
||||
check() {
|
||||
cd "$builddir"
|
||||
make check
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "$builddir"
|
||||
install -m755 -D "$srcdir"/"$pkgname-$pkgver"/src/ferm \
|
||||
"$pkgdir"/usr/sbin/"$pkgname"
|
||||
install -m755 -D "$srcdir"/"$pkgname-$pkgver"/src/import-ferm \
|
||||
"$pkgdir"/usr/sbin/import-ferm
|
||||
install -m755 -D src/ferm "$pkgdir/usr/sbin/$pkgname"
|
||||
install -m755 -D src/import-ferm "$pkgdir/usr/sbin/import-$pkgname"
|
||||
|
||||
install -m644 -D doc/ferm.1 "$pkgdir/usr/share/man/man1/ferm.1"
|
||||
install -m644 -D doc/import-ferm.1 \
|
||||
"$pkgdir/usr/share/man/man1/import-ferm.1"
|
||||
install -m644 -D doc/ferm.txt "$pkgdir/usr/share/doc/ferm.txt"
|
||||
install -m644 -D doc/ferm.html "$pkgdir/usr/share/html/ferm.html"
|
||||
|
||||
install -m644 -D "$srcdir/ferm.confd" "$pkgdir/etc/conf.d/$pkgname"
|
||||
install -m755 -D "$srcdir/ferm.initd" "$pkgdir/etc/init.d/$pkgname"
|
||||
}
|
||||
|
||||
sha512sums="beea4b8dd04e00662ef380442f8249c2d2dadf6d35b90e415038df807c8d08295d2575efbf3265f48f5e92afa174135a9c662f74d52545dd3e1c55a1436aa5bb ferm-2.4.1.tar.xz"
|
||||
openrc() {
|
||||
mkdir -p "$subpkgdir"
|
||||
mv "$pkgdir/etc" "$subpkgdir/"
|
||||
}
|
||||
sha512sums="beea4b8dd04e00662ef380442f8249c2d2dadf6d35b90e415038df807c8d08295d2575efbf3265f48f5e92afa174135a9c662f74d52545dd3e1c55a1436aa5bb ferm-2.4.1.tar.xz
|
||||
26e4673f7c8d0f77eb1d8fdc2051f1a3729e482b075346c65e39305e29014391c390c682cd597cf3dc67fa0f9fe69818e928c41cb362814a69fc67e8bbdf7ad5 ferm.confd
|
||||
c36a275d7abeac7dcb17240311b47007aafa8e07e4fd50ce45af3d79e713627624d26eea1bffe7854824f2c174a18524669cedab510ca9cea1565dda4606d394 ferm.initd"
|
||||
|
||||
1
main/ferm/ferm.confd
Normal file
1
main/ferm/ferm.confd
Normal file
@ -0,0 +1 @@
|
||||
inputfile=/etc/ferm/ferm.conf
|
||||
40
main/ferm/ferm.initd
Executable file
40
main/ferm/ferm.initd
Executable file
@ -0,0 +1,40 @@
|
||||
#!/sbin/openrc-run
|
||||
|
||||
name="ferm"
|
||||
description="For Easy Rule Making is a perl-based iptables frontend"
|
||||
description_checkconfig="Checks script validity"
|
||||
|
||||
extra_commands="checkconfig"
|
||||
|
||||
depend() {
|
||||
after net sysctl
|
||||
provide firewall
|
||||
}
|
||||
|
||||
checkconfig() {
|
||||
ferm -n "$inputfile"
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
if [ "${RC_CMD}" != "restart" ] ; then
|
||||
checkconfig || return $?
|
||||
fi
|
||||
}
|
||||
|
||||
stop_pre() {
|
||||
if [ "${RC_CMD}" = "restart" ] ; then
|
||||
checkconfig || return $?
|
||||
fi
|
||||
}
|
||||
|
||||
start() {
|
||||
ebegin "Loading $inputfile rules"
|
||||
ferm "$inputfile"
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
ebegin "Unloading $inputfile rules"
|
||||
ferm -F "$inputfile"
|
||||
eend $?
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user