]> git.pld-linux.org Git - packages/firehol.git/blame - firehol.spec
use make to install examples and contrib
[packages/firehol.git] / firehol.spec
CommitLineData
3d3e66ca
ER
1# TODO
2# - pldize initscript
3# - unbash initscript
4# - recheck deps
3aaa3ef5 5# - update configure not to require tools at build time
8d21b09a 6Summary: Simple and powerful firewall and traffic shaping languages
3d3e66ca 7Name: firehol
3f94e594 8Version: 3.0.1
3d3e66ca
ER
9Release: 0.1
10License: GPL v2+
11Group: Applications/Networking
3f94e594
ER
12Source0: https://firehol.org/download/firehol/releases/v%{version}/%{name}-%{version}.tar.xz
13# Source0-md5: afee409b698ad0707340112ff0e811b2
8d21b09a
ER
14Source1: %{name}.service
15Source2: fireqos.service
3f94e594 16URL: https://firehol.org/
8d21b09a 17BuildRequires: hostname
a4ae40c6 18BuildRequires: iprange >= 1.0.2
8d21b09a 19BuildRequires: tar >= 1:1.22
a4ae40c6 20BuildRequires: wget
8d21b09a
ER
21BuildRequires: xz
22Requires(post,preun): /sbin/chkconfig
23Requires: coreutils
3d3e66ca
ER
24Requires: gawk >= 3.0
25Requires: grep >= 2.4.2
8d21b09a
ER
26Requires: gzip
27Requires: hostname
3d3e66ca 28Requires: iproute2 >= 2.2.4
a4ae40c6 29Requires: ipset
3d3e66ca 30Requires: iptables >= 1.2.4
8d21b09a 31Requires: kmod
3d3e66ca 32Requires: less
8d21b09a 33Requires: procps
3d3e66ca 34Requires: rc-scripts
8d21b09a
ER
35Requires: sed
36Requires: uname(release) >= 2.4
37Requires: util-linux >= 2.11
3d3e66ca
ER
38BuildArch: noarch
39BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40
9512a60d
ER
41%define _libdir %{_prefix}/lib
42
3d3e66ca
ER
43%description
44FireHOL is a generic firewall generator, meaning that you can design
45any kind of local or routing stateful packet filtering firewalls with
46ease. Install FireHOL if you want an easy way to configure stateful
47packet filtering firewalls on Linux hosts and routers.
48
49FireHOL uses an extremely simple but powerful way to define firewall
50rules which it turns into complete stateful iptables firewalls.
51
52You can run FireHOL with the 'helpme' argument, to get a configuration
53file for the system run, which you can modify according to your needs.
54The default configuration file will allow only client traffic on all
55interfaces.
56
57%prep
58%setup -q
8d21b09a
ER
59
60%build
462eeadc 61# grep -E 'AX_NEED_PROG|AX_CHECK_PROG' configure.ac |sort -u|sed -rne 's/.+\(\[([^]]+)\], \[([^]]+)\].+/echo \1=`PATH=$PATH:\/usr\/sbin which \2` \\\\/p'|sh
3aaa3ef5 62%configure \
2bece9b7
ER
63 FIREHOL_AUTOSAVE=/etc/sysconfig/iptables \
64 FIREHOL_AUTOSAVE6=/etc/sysconfig/ip6tables \
65 \
42c97d14
ER
66 BASH_SHELL_PATH=/bin/bash \
67 BRIDGE=/sbin/bridge \
68 CAT=/bin/cat \
69 CHMOD=/bin/chmod \
70 CHOWN=/bin/chown \
71 CP=/bin/cp \
72 CURL=/usr/bin/curl \
73 CUT=/usr/bin/cut \
74 DATE=/bin/date \
75 DIFF=/usr/bin/diff \
76 DIRNAME=/usr/bin/dirname \
77 ENV=/usr/bin/env \
78 EXPR=/usr/bin/expr \
79 FIND=/usr/bin/find \
80 FLOCK=/usr/bin/flock \
81 FOLD=/usr/bin/fold \
462eeadc
ER
82 FUNZIP=/usr/bin/funzip \
83 GAWK=/usr/bin/gawk \
84 GIT=/usr/bin/git \
42c97d14 85 HEAD=/usr/bin/head \
462eeadc
ER
86 HOSTNAMECMD=/bin/hostname \
87 IP6TABLES=/usr/sbin/ip6tables \
88 IP6TABLES_RESTORE=/usr/sbin/ip6tables-restore \
89 IP6TABLES_SAVE=/usr/sbin/ip6tables-save \
42c97d14 90 IP=/sbin/ip \
a4ae40c6 91 IPRANGE=/usr/bin/iprange \
42c97d14 92 IPSET=/usr/sbin/ipset \
462eeadc
ER
93 IPTABLES=/usr/sbin/iptables \
94 IPTABLES_RESTORE=/usr/sbin/iptables-restore \
95 IPTABLES_SAVE=/usr/sbin/iptables-save \
42c97d14
ER
96 LN=/bin/ln \
97 LOGGER=/usr/bin/logger \
98 LS=/bin/ls \
99 LSMOD=/sbin/lsmod \
100 MKDIR=/bin/mkdir \
101 MKTEMP=/bin/mktemp \
102 MODPROBE=/sbin/insmod \
462eeadc
ER
103 MODPROBE=/sbin/modprobe \
104 MORE=/bin/more \
42c97d14 105 MV=/bin/mv \
462eeadc 106 NEATO=/usr/bin/neato \
42c97d14
ER
107 PING6=/usr/bin/ping6 \
108 PING=/usr/bin/ping \
462eeadc 109 RENICE=/usr/bin/renice \
42c97d14
ER
110 RM=/bin/rm \
111 RMMOD=/sbin/rmmod \
462eeadc 112 SCREEN=/usr/bin/screen \
42c97d14 113 SEQ=/usr/bin/seq \
462eeadc 114 SH=/bin/sh \
42c97d14
ER
115 SLEEP=/bin/sleep \
116 SORT=/bin/sort \
462eeadc
ER
117 SS=/sbin/ss \
118 STTY=/bin/stty \
42c97d14
ER
119 SYSCTL=/sbin/sysctl \
120 TAIL=/usr/bin/tail \
121 TAR=/bin/tar \
122 TC=/sbin/tc \
462eeadc 123 TCPDUMP=/usr/sbin/tcpdump \
42c97d14 124 TOUCH=/bin/touch \
462eeadc 125 TPUT=/usr/bin/tput \
42c97d14
ER
126 TR=/usr/bin/tr \
127 TRACEROUTE=/usr/bin/traceroute \
128 UNAME=/bin/uname \
129 UNIQ=/usr/bin/uniq \
462eeadc 130 UNZIP=/usr/bin/unzip \
42c97d14 131 WC=/usr/bin/wc \
462eeadc
ER
132 WGET=/usr/bin/wget \
133 WHOIS=/usr/bin/whois \
134 ZCAT=/bin/zcat \
42c97d14
ER
135 %{nil}
136
8d21b09a 137%{__make}
3d3e66ca
ER
138
139%install
140rm -rf $RPM_BUILD_ROOT
8d21b09a 141%{__make} install \
9222a7d9
ER
142 contribdir=%{_examplesdir}/%{name}-%{version}/contrib \
143 examplesdir=%{_examplesdir}/%{name}-%{version} \
8d21b09a 144 DESTDIR=$RPM_BUILD_ROOT
3d3e66ca 145
8d21b09a
ER
146# Install systemd units.
147install -d $RPM_BUILD_ROOT%{systemdunitdir}
148cp -p %{SOURCE1} %{SOURCE2} $RPM_BUILD_ROOT%{systemdunitdir}
3d3e66ca 149
8d21b09a
ER
150# Install runtime directories.
151install -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/services
3d3e66ca
ER
152install -d $RPM_BUILD_ROOT%{_localstatedir}/spool/firehol
153
8d21b09a
ER
154# Ghost configurations.
155touch $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/firehol.conf \
156 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/fireqos.conf
157
158%clean
159rm -rf $RPM_BUILD_ROOT
160
3d3e66ca
ER
161%post
162/sbin/chkconfig --add firehol
163%service firehol restart
8d21b09a
ER
164%systemd_post firehol.service
165%systemd_post fireqos.service
3d3e66ca
ER
166
167%preun
168if [ "$1" = 0 ]; then
169 %service firehol stop
170 /sbin/chkconfig --del firehol
171fi
8d21b09a
ER
172%systemd_preun firehol.service
173%systemd_preun fireqos.service
3d3e66ca 174
8d21b09a
ER
175%postun
176%systemd_reload
3d3e66ca
ER
177
178%files
179%defattr(644,root,root,755)
6338fe61 180%doc README THANKS
8d21b09a
ER
181%doc doc/firehol/firehol-manual.{pdf,html}
182%doc doc/fireqos/fireqos-manual.{pdf,html}
3d3e66ca 183%dir %{_sysconfdir}/firehol
8d21b09a
ER
184%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/firehol.conf
185%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/fireqos.conf
186%{_sysconfdir}/%{name}/*.example
187%dir %{_sysconfdir}/%{name}/services
188%{_sysconfdir}/%{name}/services/*.example
189%attr(755,root,root) %{_sbindir}/firehol
190%attr(755,root,root) %{_sbindir}/fireqos
2bece9b7
ER
191%attr(755,root,root) %{_sbindir}/link-balancer
192%attr(755,root,root) %{_sbindir}/update-ipsets
193%attr(755,root,root) %{_sbindir}/vnetbuild
194%dir %{_libdir}/firehol
195%{_libdir}/firehol/functions.common.sh
196%{_datadir}/update-ipsets
9222a7d9
ER
197%{_mandir}/man1/firehol.1*
198%{_mandir}/man1/fireqos.1*
6338fe61
ER
199%{_mandir}/man1/vnetbuild.1*
200%{_mandir}/man5/firehol*.5*
201%{_mandir}/man5/fireqos*.5*
202%{_mandir}/man5/vnetbuild*.5*
203%{_examplesdir}/%{name}-%{version}
8d21b09a
ER
204%{systemdunitdir}/firehol.service
205%{systemdunitdir}/fireqos.service
206%{_localstatedir}/spool/%{name}
This page took 0.101021 seconds and 4 git commands to generate.