summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO30
-rw-r--r--PKGBUILD90
-rw-r--r--babeld.service16
-rw-r--r--bgpd.service16
-rw-r--r--isisd.service16
-rw-r--r--ospf6d.service16
-rw-r--r--ospfd-instance@.service16
-rw-r--r--ospfd.service16
-rw-r--r--pimd.service15
-rw-r--r--quagga-CumulusNetworks-2.5.9_systemd.patch229
-rw-r--r--ripd.service16
-rw-r--r--ripngd.service16
-rw-r--r--zebra.service16
13 files changed, 267 insertions, 241 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 991804f65c8..1501985d96c 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,9 +1,9 @@
# Generated by mksrcinfo v8
-# Sat Feb 4 13:23:00 UTC 2017
+# Sat Feb 4 15:19:46 UTC 2017
pkgbase = quagga_cumulus
pkgdesc = Routing daemon suite with CumulusNetworks patches. Support Multi-Instance OSPF.
pkgver = 0.99.23.1
- pkgrel = 6
+ pkgrel = 7
url = https://github.com/CumulusNetworks/quagga
arch = i686
arch = x86_64
@@ -11,6 +11,7 @@ pkgbase = quagga_cumulus
makedepends = patch
makedepends = gcc
makedepends = grep
+ makedepends = json-c
depends = libcap
depends = libnl
depends = readline
@@ -19,40 +20,23 @@ pkgbase = quagga_cumulus
depends = json-c
provides = quagga
conflicts = quagga
- source = http://download.savannah.gnu.org/releases/quagga/quagga-0.99.23.1.tar.gz
+ conflicts = frr
+ source = https://download.savannah.gnu.org/releases/quagga/quagga-0.99.23.1.tar.gz
source = http://http.debian.net/debian/pool/main/q/quagga/quagga_0.99.22.4-1+wheezy2.debian.tar.gz
source = http://oss.cumulusnetworks.com/CumulusLinux-2.5.9.tar.gz
source = quagga.sysusers
source = quagga.tmpfiles
- source = babeld.service
- source = bgpd.service
- source = isisd.service
- source = ospf6d.service
- source = ospfd-instance@.service
- source = ospfd.service
- source = pimd.service
- source = ripd.service
- source = ripngd.service
- source = zebra.service
source = quagga-CumulusNetworks-2.5.6_json-c.patch
source = quagga-CumulusNetworks-2.5.9_configure_shell.patch
+ source = quagga-CumulusNetworks-2.5.9_systemd.patch
sha256sums = 3abf2046bc27539ce2d17c238e06c8fd0d479a8e402580c6aa455808bd48e004
sha256sums = 091e57dfe070c70264079e436999dd629cbe18f03a4eaff29cd87718669e05de
sha256sums = aadf4b9cf54397645b4ed4fdcf1cb2ed180aa83c714546faabf4bd62d122b984
sha256sums = b531818654f9656c6a07127707785e55f7b3bd14568849e2f63c8f8e761223d0
sha256sums = 4debff53306539b79d8e3e08844081a388f1897cee20bf2bc84e0efaff40fd9b
- sha256sums = 105b8eac3c7d7dc2f1fffa382a2d9d6bf86182c9462708465a5d7216e2be41bd
- sha256sums = bbb2dd1568f9711686e06aaff900eeda213e25cfb0e8fef7a8490cfdb3e88ee9
- sha256sums = 94fb9b041cf38c3a48d208cf07d72a35f2fc0816fb6ca1c07df917d79f94445b
- sha256sums = c860839456435531b552c4f34265a74cbadd0a4ce38002f2ef95eb30bd42e498
- sha256sums = 75a8575fea45a275b9193d5dc4c2d6542e456591ae261d96b687740ff5990c3f
- sha256sums = 5beb572614bdbf7df727f145c24b93e378d20ca85a7849e6e40a291849cec44f
- sha256sums = 000e1d76067bebe0743bda670d2cbcd5b561e29985c8829366c77e0a5fe86d54
- sha256sums = 802df30eb809cda5f491e90442d06e7f939c54131f22969011b93937feb4b523
- sha256sums = 4ffca2fbde6a6beacd3860adc582bc0d63da6761eb8906ec4f7c15ce5096a78e
- sha256sums = 95cee83175150f4c5e96a3561478428bae55ad4adc599352993de219e2084066
sha256sums = 8a41060483d3b3b8645ffb18519efc3799c7819d1cfedc12c33eeb72483bd312
sha256sums = f5804e4d0cc310fe5a8dce93574710a8183211a9c4d76befb91002e318aeaed2
+ sha256sums = 04cfa8f8cc075e9554449f9ba8fc08abd0ecba8c51c86204c22a70e2619385aa
pkgname = quagga_cumulus
diff --git a/PKGBUILD b/PKGBUILD
index 5639eb8dacb..959513ab799 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,49 +6,31 @@ _quagga='quagga'
_cumulus='CumulusNetworks'
pkgname="${_quagga}_cumulus"
pkgver='0.99.23.1'
-pkgrel='6'
+pkgrel='7'
pkgdesc="Routing daemon suite with ${_cumulus} patches. Support Multi-Instance OSPF."
arch=('i686' 'x86_64')
url="https://github.com/${_cumulus}/${_quagga}"
license=('GPL2')
depends=('libcap' 'libnl' 'readline' 'ncurses' 'perl' 'json-c')
-makedepends=('patch' 'gcc' 'grep')
-conflicts=("${_quagga}")
+makedepends=('patch' 'gcc' 'grep' 'json-c')
+conflicts=("${_quagga}" "frr")
provides=("${_quagga}")
-source=("http://download.savannah.gnu.org/releases/${_quagga}/${_quagga}-${pkgver}.tar.gz"
+source=("https://download.savannah.gnu.org/releases/${_quagga}/${_quagga}-${pkgver}.tar.gz"
"http://http.debian.net/debian/pool/main/q/${_quagga}/${_quagga}_0.99.22.4-1+wheezy2.debian.tar.gz"
"http://oss.cumulusnetworks.com/CumulusLinux-${_ver}.tar.gz"
"${_quagga}.sysusers"
"${_quagga}.tmpfiles"
- "babeld.service"
- "bgpd.service"
- "isisd.service"
- "ospf6d.service"
- "ospfd-instance@.service"
- "ospfd.service"
- "pimd.service"
- "ripd.service"
- "ripngd.service"
- "zebra.service"
"${_quagga}-${_cumulus}-2.5.6_json-c.patch"
- "${_quagga}-${_cumulus}-2.5.9_configure_shell.patch")
+ "${_quagga}-${_cumulus}-2.5.9_configure_shell.patch"
+ "${_quagga}-${_cumulus}-2.5.9_systemd.patch")
sha256sums=('3abf2046bc27539ce2d17c238e06c8fd0d479a8e402580c6aa455808bd48e004'
'091e57dfe070c70264079e436999dd629cbe18f03a4eaff29cd87718669e05de'
'aadf4b9cf54397645b4ed4fdcf1cb2ed180aa83c714546faabf4bd62d122b984'
'b531818654f9656c6a07127707785e55f7b3bd14568849e2f63c8f8e761223d0'
'4debff53306539b79d8e3e08844081a388f1897cee20bf2bc84e0efaff40fd9b'
- '105b8eac3c7d7dc2f1fffa382a2d9d6bf86182c9462708465a5d7216e2be41bd'
- 'bbb2dd1568f9711686e06aaff900eeda213e25cfb0e8fef7a8490cfdb3e88ee9'
- '94fb9b041cf38c3a48d208cf07d72a35f2fc0816fb6ca1c07df917d79f94445b'
- 'c860839456435531b552c4f34265a74cbadd0a4ce38002f2ef95eb30bd42e498'
- '75a8575fea45a275b9193d5dc4c2d6542e456591ae261d96b687740ff5990c3f'
- '5beb572614bdbf7df727f145c24b93e378d20ca85a7849e6e40a291849cec44f'
- '000e1d76067bebe0743bda670d2cbcd5b561e29985c8829366c77e0a5fe86d54'
- '802df30eb809cda5f491e90442d06e7f939c54131f22969011b93937feb4b523'
- '4ffca2fbde6a6beacd3860adc582bc0d63da6761eb8906ec4f7c15ce5096a78e'
- '95cee83175150f4c5e96a3561478428bae55ad4adc599352993de219e2084066'
'8a41060483d3b3b8645ffb18519efc3799c7819d1cfedc12c33eeb72483bd312'
- 'f5804e4d0cc310fe5a8dce93574710a8183211a9c4d76befb91002e318aeaed2')
+ 'f5804e4d0cc310fe5a8dce93574710a8183211a9c4d76befb91002e318aeaed2'
+ '04cfa8f8cc075e9554449f9ba8fc08abd0ecba8c51c86204c22a70e2619385aa')
prepare() {
# Cumulus patch set loads to Debian dpkg sources
@@ -62,46 +44,37 @@ prepare() {
echo -e "---------------------------------------------\\n"
done
+ echo -e "Arch Linux patches:\\n"
+ # Make Arch Systemd services from RedHat services
+ patch -p1 -i "${srcdir}/${_quagga}-${_cumulus}-2.5.9_systemd.patch"
# json in Debian = json-c in Arch
patch -p1 -i "${srcdir}/${_quagga}-${_cumulus}-2.5.6_json-c.patch"
# https://github.com/CumulusNetworks/quagga/commit/5fd1f74742debed7f5bfe5d9416f363906917ec5#diff-67e997bcfdac55191033d57a16d1408a
patch -p1 -i "${srcdir}/${_quagga}-${_cumulus}-2.5.9_configure_shell.patch"
autoreconf -fvi
-
./configure \
- --prefix=/usr \
- --sbindir=/usr/bin \
- --sysconfdir=/etc/quagga \
- --localstatedir=/run/quagga \
- --enable-exampledir=/usr/share/doc/quagga/examples \
- --enable-ipv6 \
- --enable-doc \
+ --prefix="/usr" \
+ --sbindir="/usr/bin" \
+ --sysconfdir="/etc/${_quagga}" \
+ --localstatedir="/run/${_quagga}" \
+ --enable-exampledir="/usr/share/doc/${_quagga}/examples" \
--enable-zebra \
- --enable-bgpd \
- --enable-ripd \
- --enable-ripngd \
- --enable-ospfd \
- --enable-ospf-te \
- --enable-opaque-lsa \
- --enable-ospf6d \
- --enable-babeld \
--enable-vtysh \
--enable-isisd \
--enable-isis-topology \
--enable-netlink \
- --enable-tcp-zebra \
--enable-irdp \
--enable-pcreposix \
--enable-multipath=64 \
- --enable-user=quagga \
- --enable-group=quagga \
- --enable-vty-group=quagga \
- --enable-configfile-mask=0640 \
- --enable-logfile-mask=0640 \
- --enable-systemd=yes \
- --enable-poll=yes \
- --enable-tcp-zebra
+ --enable-user="${_quagga}" \
+ --enable-group="${_quagga}" \
+ --enable-vty-group="${_quagga}vty" \
+ --enable-configfile-mask="0640" \
+ --enable-logfile-mask="0640" \
+ --enable-systemd \
+ --enable-poll \
+ --disable-watchquagga
}
build() {
@@ -110,18 +83,17 @@ build() {
}
package() {
- pushd "${srcdir}/${_quagga}-${pkgver}"
+ cd "${srcdir}/${_quagga}-${pkgver}"
make DESTDIR="${pkgdir}" install
- install -Dm0644 "redhat/${_quagga}.logrotate" "$pkgdir/etc/logrotate.d/${_quagga}"
- sed -ri 's|/var/run/quagga|/run/quagga|g' "$pkgdir/etc/logrotate.d/${_quagga}"
+ cd "redhat"
+ sed -ri 's|/var/run/quagga|/run/quagga|g' "${_quagga}.logrotate"
+ install -Dm0644 "${_quagga}.logrotate" "${pkgdir}/etc/logrotate.d/${_quagga}"
- pushd "${srcdir}"
- install -dm0755 "${pkgdir}"/usr/lib/{systemd/system,tmpfiles.d,sysusers.d}
for d in zebra ripd ripngd bgpd ospfd ospfd-instance@ ospf6d isisd babeld pimd; do
install -Dm0644 ${d}.service "${pkgdir}/usr/lib/systemd/system/${d}.service"
done
- install -Dm0644 "${_quagga}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${_quagga}.conf"
- install -Dm0644 "${_quagga}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${_quagga}.conf"
- popd
+
+ install -Dm0644 "${srcdir}/${_quagga}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${_quagga}.conf"
+ install -Dm0644 "${srcdir}/${_quagga}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${_quagga}.conf"
}
diff --git a/babeld.service b/babeld.service
deleted file mode 100644
index 7279f0336a8..00000000000
--- a/babeld.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=Babel routing daemon
-Documentation=man:zebra(8)
-BindTo=zebra.service
-After=network.target zebra.service
-ConditionPathExists=/etc/quagga/babeld.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/babeld.pid
-ExecStart=/usr/bin/babeld -d
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/bgpd.service b/bgpd.service
deleted file mode 100644
index b0bf1db0fef..00000000000
--- a/bgpd.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=BGP routing daemon
-Documentation=man:bgpd(8) man:zebra(8)
-BindTo=zebra.service
-After=network.target zebra.service
-ConditionPathExists=/etc/quagga/bgpd.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/bgpd.pid
-ExecStart=/usr/bin/bgpd -d
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/isisd.service b/isisd.service
deleted file mode 100644
index 5ad16c1a485..00000000000
--- a/isisd.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=IS-IS routing daemon
-Documentation=man:isis(8) man:zebra(8)
-BindTo=zebra.service
-After=network.target zebra.service
-ConditionPathExists=/etc/quagga/isisd.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/isisd.pid
-ExecStart=/usr/bin/isisd -d
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/ospf6d.service b/ospf6d.service
deleted file mode 100644
index dae3dc322fa..00000000000
--- a/ospf6d.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=OSPF routing daemon for IPv6
-Documentation=man:ospfd(8) man:zebra(8)
-BindTo=zebra.service
-After=network.target zebra.service
-ConditionPathExists=/etc/quagga/ospf6d.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/ospf6d.pid
-ExecStart=/usr/bin/ospf6d -d
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/ospfd-instance@.service b/ospfd-instance@.service
deleted file mode 100644
index d015d3a2e9c..00000000000
--- a/ospfd-instance@.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=OSPF routing daemon instance %i
-Documentation=man:ospfd(8) man:zebra(8)
-BindTo=zebra.service
-After=network.target zebra.service
-ConditionPathExists=/etc/quagga/ospfd-%i.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/ospfd-%i.pid
-ExecStart=/usr/bin/ospfd -n %i -d
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/ospfd.service b/ospfd.service
deleted file mode 100644
index e43c474ccd3..00000000000
--- a/ospfd.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=OSPF routing daemon
-Documentation=man:ospfd(8) man:zebra(8)
-BindTo=zebra.service
-After=network.target zebra.service
-ConditionPathExists=/etc/quagga/ospfd.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/ospfd.pid
-ExecStart=/usr/bin/ospfd -d
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/pimd.service b/pimd.service
deleted file mode 100644
index 72769563e0c..00000000000
--- a/pimd.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=PIM multicast routing engine
-Documentation=man:pimd(8) man:zebra(8)
-BindTo=zebra.service
-After=network.target zebra.service
-ConditionPathExists=/etc/quagga/pimd.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/pimd.pid
-ExecStart=/usr/sbin/pimd -d
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/quagga-CumulusNetworks-2.5.9_systemd.patch b/quagga-CumulusNetworks-2.5.9_systemd.patch
new file mode 100644
index 00000000000..c71d13a825d
--- /dev/null
+++ b/quagga-CumulusNetworks-2.5.9_systemd.patch
@@ -0,0 +1,229 @@
+diff -Naupr quagga-0.99.23.1_orig/redhat/babeld.service quagga-0.99.23.1/redhat/babeld.service
+--- quagga-0.99.23.1_orig/redhat/babeld.service 2014-08-25 23:56:53.000000000 +0700
++++ quagga-0.99.23.1/redhat/babeld.service 2017-02-04 20:42:04.000000000 +0700
+@@ -1,14 +1,15 @@
+ [Unit]
+ Description=Babel routing daemon
++Documentation=man:zebra(8)
+ BindTo=zebra.service
+-After=syslog.target network.target zebra.service
+-ConditionPathExists=/etc/quagga/babeld.conf
++After=network.target zebra.service
+
+ [Service]
+ Type=forking
+-EnvironmentFile=/etc/sysconfig/quagga
+-ExecStart=/usr/sbin/babeld -d $BABELD_OPTS -f /etc/quagga/babeld.conf
++PIDFile=/run/quagga/babeld.pid
++ExecStart=/usr/bin/babeld -d
++ExecReload=/bin/kill -HUP $MAINPID
+ Restart=on-abort
+
+ [Install]
+-WantedBy=network.target
++WantedBy=multi-user.target
+diff -Naupr quagga-0.99.23.1_orig/redhat/bgpd.service quagga-0.99.23.1/redhat/bgpd.service
+--- quagga-0.99.23.1_orig/redhat/bgpd.service 2014-08-25 23:56:53.000000000 +0700
++++ quagga-0.99.23.1/redhat/bgpd.service 2017-02-04 20:42:07.000000000 +0700
+@@ -1,14 +1,15 @@
+ [Unit]
+ Description=BGP routing daemon
++Documentation=man:bgpd(8) man:zebra(8)
+ BindTo=zebra.service
+-After=syslog.target network.target zebra.service
+-ConditionPathExists=/etc/quagga/bgpd.conf
++After=network.target zebra.service
+
+ [Service]
+ Type=forking
+-EnvironmentFile=/etc/sysconfig/quagga
+-ExecStart=/usr/sbin/bgpd -d $BGPD_OPTS -f /etc/quagga/bgpd.conf
++PIDFile=/run/quagga/bgpd.pid
++ExecStart=/usr/bin/bgpd -d
++ExecReload=/bin/kill -HUP $MAINPID
+ Restart=on-abort
+
+ [Install]
+-WantedBy=network.target
++WantedBy=multi-user.target
+diff -Naupr quagga-0.99.23.1_orig/redhat/isisd.service quagga-0.99.23.1/redhat/isisd.service
+--- quagga-0.99.23.1_orig/redhat/isisd.service 2014-08-25 23:56:53.000000000 +0700
++++ quagga-0.99.23.1/redhat/isisd.service 2017-02-04 20:42:11.000000000 +0700
+@@ -1,14 +1,15 @@
+ [Unit]
+ Description=IS-IS routing daemon
++Documentation=man:isis(8) man:zebra(8)
+ BindTo=zebra.service
+-After=syslog.target network.target zebra.service
+-ConditionPathExists=/etc/quagga/isisd.conf
++After=network.target zebra.service
+
+ [Service]
+ Type=forking
+-EnvironmentFile=/etc/sysconfig/quagga
+-ExecStart=/usr/sbin/isisd -d $ISISD_OPTS -f /etc/quagga/isisd.conf
++PIDFile=/run/quagga/isisd.pid
++ExecStart=/usr/bin/isisd -d
++ExecReload=/bin/kill -HUP $MAINPID
+ Restart=on-abort
+
+ [Install]
+-WantedBy=network.target
++WantedBy=multi-user.target
+diff -Naupr quagga-0.99.23.1_orig/redhat/ospf6d.service quagga-0.99.23.1/redhat/ospf6d.service
+--- quagga-0.99.23.1_orig/redhat/ospf6d.service 2014-08-25 23:56:53.000000000 +0700
++++ quagga-0.99.23.1/redhat/ospf6d.service 2017-02-04 20:42:13.000000000 +0700
+@@ -1,14 +1,15 @@
+ [Unit]
+ Description=OSPF routing daemon for IPv6
++Documentation=man:ospfd(8) man:zebra(8)
+ BindTo=zebra.service
+-After=syslog.target network.target zebra.service
+-ConditionPathExists=/etc/quagga/ospf6d.conf
++After=network.target zebra.service
+
+ [Service]
+ Type=forking
+-EnvironmentFile=/etc/sysconfig/quagga
+-ExecStart=/usr/sbin/ospf6d -d $OSPF6D_OPTS -f /etc/quagga/ospf6d.conf
++PIDFile=/run/quagga/ospf6d.pid
++ExecStart=/usr/bin/ospf6d -d
++ExecReload=/bin/kill -HUP $MAINPID
+ Restart=on-abort
+
+ [Install]
+-WantedBy=network.target
++WantedBy=multi-user.target
+diff -Naupr quagga-0.99.23.1_orig/redhat/ospfd-instance@.service quagga-0.99.23.1/redhat/ospfd-instance@.service
+--- quagga-0.99.23.1_orig/redhat/ospfd-instance@.service 1970-01-01 07:00:00.000000000 +0700
++++ quagga-0.99.23.1/redhat/ospfd-instance@.service 2017-02-04 20:42:55.000000000 +0700
+@@ -0,0 +1,15 @@
++[Unit]
++Description=OSPF routing daemon instance %i
++Documentation=man:ospfd(8) man:zebra(8)
++BindTo=zebra.service
++After=network.target zebra.service ospfd.service
++
++[Service]
++Type=forking
++PIDFile=/run/quagga/ospfd-%i.pid
++ExecStart=/usr/bin/ospfd -n %i -d
++ExecReload=/bin/kill -HUP $MAINPID
++Restart=on-abort
++
++[Install]
++WantedBy=multi-user.target
+diff -Naupr quagga-0.99.23.1_orig/redhat/ospfd.service quagga-0.99.23.1/redhat/ospfd.service
+--- quagga-0.99.23.1_orig/redhat/ospfd.service 2014-08-25 23:56:53.000000000 +0700
++++ quagga-0.99.23.1/redhat/ospfd.service 2017-02-04 20:42:22.000000000 +0700
+@@ -1,14 +1,15 @@
+ [Unit]
+ Description=OSPF routing daemon
++Documentation=man:ospfd(8) man:zebra(8)
+ BindTo=zebra.service
+-After=syslog.target network.target zebra.service
+-ConditionPathExists=/etc/quagga/ospfd.conf
++After=network.target zebra.service
+
+ [Service]
+ Type=forking
+-EnvironmentFile=/etc/sysconfig/quagga
+-ExecStart=/usr/sbin/ospfd -d $OSPFD_OPTS -f /etc/quagga/ospfd.conf
++PIDFile=/run/quagga/ospfd.pid
++ExecStart=/usr/bin/ospfd -d
++ExecReload=/bin/kill -HUP $MAINPID
+ Restart=on-abort
+
+ [Install]
+-WantedBy=network.target
++WantedBy=multi-user.target
+diff -Naupr quagga-0.99.23.1_orig/redhat/pimd.service quagga-0.99.23.1/redhat/pimd.service
+--- quagga-0.99.23.1_orig/redhat/pimd.service 1970-01-01 07:00:00.000000000 +0700
++++ quagga-0.99.23.1/redhat/pimd.service 2017-02-04 20:42:26.000000000 +0700
+@@ -0,0 +1,14 @@
++[Unit]
++Description=PIM multicast routing engine
++Documentation=man:pimd(8) man:zebra(8)
++BindTo=zebra.service
++After=network.target zebra.service
++
++[Service]
++Type=forking
++PIDFile=/run/quagga/pimd.pid
++ExecStart=/usr/sbin/pimd -d
++Restart=on-abort
++
++[Install]
++WantedBy=multi-user.target
+diff -Naupr quagga-0.99.23.1_orig/redhat/ripd.service quagga-0.99.23.1/redhat/ripd.service
+--- quagga-0.99.23.1_orig/redhat/ripd.service 2014-08-25 23:56:53.000000000 +0700
++++ quagga-0.99.23.1/redhat/ripd.service 2017-02-04 20:43:10.000000000 +0700
+@@ -1,14 +1,15 @@
+ [Unit]
+ Description=RIP routing daemon
++Documentation=man:ripd(8) man:zebra(8)
+ BindTo=zebra.service
+-After=syslog.target network.target zebra.service
+-ConditionPathExists=/etc/quagga/ripd.conf
++After=network.target zebra.service
+
+ [Service]
+ Type=forking
+-EnvironmentFile=/etc/sysconfig/quagga
+-ExecStart=/usr/sbin/ripd -d $RIPD_OPTS -f /etc/quagga/ripd.conf
++PIDFile=/run/quagga/ripd.pid
++ExecStart=/usr/bin/ripd -d
++ExecReload=/bin/kill -HUP $MAINPID
+ Restart=on-abort
+
+ [Install]
+-WantedBy=network.target
++WantedBy=multi-user.target
+diff -Naupr quagga-0.99.23.1_orig/redhat/ripngd.service quagga-0.99.23.1/redhat/ripngd.service
+--- quagga-0.99.23.1_orig/redhat/ripngd.service 2014-08-25 23:56:53.000000000 +0700
++++ quagga-0.99.23.1/redhat/ripngd.service 2017-02-04 20:43:04.000000000 +0700
+@@ -1,14 +1,15 @@
+ [Unit]
+ Description=RIP routing daemon for IPv6
++Documentation=man:ripngd(8) man:zebra(8)
+ BindTo=zebra.service
+-After=syslog.target network.target zebra.service
+-ConditionPathExists=/etc/quagga/ripngd.conf
++After=network.target zebra.service
+
+ [Service]
+ Type=forking
+-EnvironmentFile=/etc/sysconfig/quagga
+-ExecStart=/usr/sbin/ripngd -d $RIPNGD_OPTS -f /etc/quagga/ripngd.conf
++PIDFile=/run/quagga/ripngd.pid
++ExecStart=/usr/bin/ripngd -d
++ExecReload=/bin/kill -HUP $MAINPID
+ Restart=on-abort
+
+ [Install]
+-WantedBy=network.target
++WantedBy=multi-user.target
+diff -Naupr quagga-0.99.23.1_orig/redhat/zebra.service quagga-0.99.23.1/redhat/zebra.service
+--- quagga-0.99.23.1_orig/redhat/zebra.service 2014-08-25 23:56:53.000000000 +0700
++++ quagga-0.99.23.1/redhat/zebra.service 2017-02-04 20:43:00.000000000 +0700
+@@ -1,14 +1,15 @@
+ [Unit]
+ Description=GNU Zebra routing manager
+-After=syslog.target network.target
+-ConditionPathExists=/etc/quagga/zebra.conf
++Documentation=man:zebra(8)
++After=network.target
+
+ [Service]
+ Type=forking
+-EnvironmentFile=-/etc/sysconfig/quagga
++PIDFile=/run/quagga/zebra.pid
+ ExecStartPre=/sbin/ip route flush proto zebra
+-ExecStart=/usr/sbin/zebra -d $ZEBRA_OPTS -f /etc/quagga/zebra.conf
++ExecStart=/usr/bin/zebra -d
++ExecReload=/bin/kill -HUP $MAINPID
+ Restart=on-abort
+
+ [Install]
+-WantedBy=network.target
++WantedBy=multi-user.target
diff --git a/ripd.service b/ripd.service
deleted file mode 100644
index a55498100e9..00000000000
--- a/ripd.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=RIP routing daemon
-Documentation=man:ripd(8) man:zebra(8)
-BindTo=zebra.service
-After=network.target zebra.service
-ConditionPathExists=/etc/quagga/ripd.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/ripd.pid
-ExecStart=/usr/bin/ripd -d
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/ripngd.service b/ripngd.service
deleted file mode 100644
index 4990669d2d2..00000000000
--- a/ripngd.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=RIP routing daemon for IPv6
-Documentation=man:ripngd(8) man:zebra(8)
-BindTo=zebra.service
-After=network.target zebra.service
-ConditionPathExists=/etc/quagga/ripngd.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/ripngd.pid
-ExecStart=/usr/bin/ripngd -d
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/zebra.service b/zebra.service
deleted file mode 100644
index 02813c37c3d..00000000000
--- a/zebra.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=GNU Zebra routing manager
-Documentation=man:zebra(8)
-After=network.target
-ConditionPathExists=/etc/quagga/zebra.conf
-
-[Service]
-Type=forking
-PIDFile=/run/quagga/zebra.pid
-ExecStartPre=/sbin/ip route flush proto zebra
-ExecStart=/usr/bin/zebra -d
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target