]> git.ipfire.org Git - ipfire-3.x.git/blob - quagga/quagga.nm
network: Depend on bird instead of frr
[ipfire-3.x.git] / quagga / quagga.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = quagga
7 version = 1.2.0
8 release = 1
9
10 groups = Networking/Routing
11 url = http://www.quagga.net/
12 license = GPLv2+
13 summary = Quagga is a rounting daemon.
14
15 description
16 Quagga is a free software that manages TCP/IP based routing
17 protocol. It takes multi-server and multi-thread approach to resolve
18 the current complexity of the Internet.
19
20 Quagga supports BGP4, BGP4+, OSPFv2 and OSPFv3.
21 end
22
23 source_dl = http://download.savannah.gnu.org/releases/quagga/
24
25 build
26 requires
27 c-ares-devel
28 ncurses-devel
29 net-snmp-devel
30 readline-devel
31 systemd-units
32 texinfo
33 end
34
35 prepare_cmds
36 %{create_user}
37 end
38
39 configure_options += \
40 --sysconfdir=/etc/quagga \
41 --localstatedir=%{localstatedir}/run/quagga \
42 --disable-static \
43 --disable-watchquagga \
44 --enable-multipath=64 \
45 --disable-isisd \
46 --disable-pimd \
47 --disable-ripd \
48 --disable-ripngd
49
50 install_cmds
51 mkdir -pv %{localstatedir}/run/quagga
52 chown -v quagga.quagga %{localstatedir}/run/quagga
53 end
54 end
55
56 create_user
57 getent group quagga >/dev/null || /usr/sbin/groupadd -r quagga
58 getent passwd quagga >/dev/null || /usr/sbin/useradd -r -g quagga \
59 -d %{sysconfdir}/%{name} -s /sbin/nologin quagga
60 end
61
62 packages
63 package %{name}
64 services = bgpd ospf6d ospfd zebra
65
66 script prein
67 %{create_user}
68 end
69
70 script postin
71 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
72 end
73
74 script preun
75 for i in %{services}; do
76 systemctl --no-reload disable ${i}.service >/dev/null 2>&1 || :
77 systemctl stop ${i}.service >/dev/null 2>&1 || :
78 done
79 end
80
81 script postun
82 systemctl daemon-reload >/dev/null 2>&1 || :
83 end
84
85 script postup
86 systemctl daemon-reload >/dev/null 2>&1 || :
87
88 for i in %{services}; do
89 systemctl try-restart ${i}.service >/dev/null 2>&1 || :
90 done
91 end
92 end
93
94 package %{name}-libs
95 template LIBS
96 end
97
98 package %{name}-devel
99 template DEVEL
100 end
101
102 package %{name}-debuginfo
103 template DEBUGINFO
104 end
105 end