diff -ruNa a/fix_paths.patch b/fix_paths.patch --- a/fix_paths.patch +++ b/fix_paths.patch @@ -0,0 +1,39 @@ +--- a/setup.py ++++ b/setup.py +@@ -55,7 +55,7 @@ + return + + real_confdir = os.path.join('/etc') +- real_statedir = os.path.join('/lib', 'ufw') ++ real_statedir = os.path.join('/usr', 'lib', 'ufw') + real_prefix = self.prefix + if self.home != None: + real_confdir = self.home + real_confdir +@@ -114,7 +114,7 @@ + if self.root != None: + prefix = self.root + real_prefix + +- script = os.path.join(prefix, 'sbin', 'ufw') ++ script = os.path.join(prefix, 'bin', 'ufw') + manpage = os.path.join(prefix, 'share', 'man', 'man8', 'ufw.8') + manpage_f = os.path.join(prefix, 'share', 'man', 'man8', \ + 'ufw-framework.8') +@@ -126,7 +126,7 @@ + print("Updating staging/ufw to use %s" % (sys.executable)) + subprocess.call(["sed", + "-i", +- "1s%^#.*python.*%#! /usr/bin/env " + sys.executable + "%g", ++ "1s%^#.*python.*%#!/usr/bin/python3%g", + 'staging/ufw']) + self.copy_file('staging/ufw', script) + self.copy_file('doc/ufw.8', manpage) +@@ -250,8 +250,7 @@ + iptables_dir = '' + + for e in ['iptables']: +- for dir in ['/sbin', '/bin', '/usr/sbin', '/usr/bin', '/usr/local/sbin', \ +- '/usr/local/bin']: ++ for dir in ['/usr/bin']: + if e == "iptables": + if os.path.exists(os.path.join(dir, e)): + iptables_dir = dir diff -ruNa a/PKGBUILD b/PKGBUILD --- a/PKGBUILD +++ b/PKGBUILD @@ -7,12 +7,12 @@ pkgname=ufw pkgver=0.35 -pkgrel=3 +pkgrel=4 pkgdesc="Uncomplicated and easy to use CLI tool for managing a netfilter firewall" arch=('any') url="https://launchpad.net/ufw" license=('GPL3') -depends=('iptables' 'python2') +depends=('iptables' 'python') install=ufw.install backup=('etc/ufw/before.rules' 'etc/ufw/before6.rules' @@ -22,34 +22,28 @@ 'etc/ufw/user.rules' 'etc/ufw/sysctl.conf' 'etc/default/ufw' - 'usr/lib/ufw/user.rules' - 'usr/lib/ufw/user6.rules' 'etc/ufw/user.rules' 'etc/ufw/user6.rules') -source=(http://launchpad.net/$pkgname/$pkgver/$pkgver/+download/$pkgname-$pkgver.tar.gz - service) +source=("http://launchpad.net/$pkgname/$pkgver/$pkgver/+download/$pkgname-$pkgver.tar.gz" + 'fix_paths.patch' + 'service') sha256sums=('662f865bc83bf8aa1a40a6fe578bc2ce796ff60a1be2c1103def7db1b91f8509' + 'c5431077712f755ce806246112ab1cfab7b063389c7bf2a85c8b48eee78ae467' 'fdface6f4690e4748fbbd5661c02e1967a8750fdb23581d35516174017a3fe39') -# this /usr/lib/ufw/ rules were moved to /etc/ufw -# remove /usr/lib from backup in O.36? - prepare() { cd "$pkgname-$pkgver" - # FS#28769 - move from /lib to /usr/lib - sed -i -e 's|/lib|/usr/lib|' \ - -e 's|sbin|bin|g' setup.py - - # FS#35458, FS#54110 - correct iptables location - sed -i -e 's|sbin|bin|g' setup.py - sed -i -e 's|sbin|bin|g' src/util.py + + patch -Np1 < "$srcdir/fix_paths.patch" } package() { cd "$pkgname-$pkgver" - - python2 setup.py install --root="$pkgdir" + + python3 setup.py install --root="$pkgdir" install -Dm644 "$srcdir/service" "$pkgdir/usr/lib/systemd/system/ufw.service" - chmod 644 "$pkgdir/etc/ufw/"*.rules + chmod 644 \ + "$pkgdir/etc/ufw/"*.{init,rules} \ + "$pkgdir/usr/share/ufw/iptables/"*.rules }