]> git.pld-linux.org Git - packages/firehol.git/blame - firehol.spec
update BR
[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/
a4ae40c6 17BuildRequires: graphviz
8d21b09a 18BuildRequires: hostname
a4ae40c6 19BuildRequires: iprange >= 1.0.2
8d21b09a
ER
20BuildRequires: iproute2
21BuildRequires: iptables
22BuildRequires: procps
a4ae40c6 23BuildRequires: screen
8d21b09a
ER
24BuildRequires: systemd-devel
25BuildRequires: tar >= 1:1.22
a4ae40c6
ER
26BuildRequires: unzip
27BuildRequires: wget
28BuildRequires: whois
8d21b09a
ER
29BuildRequires: xz
30Requires(post,preun): /sbin/chkconfig
31Requires: coreutils
3d3e66ca
ER
32Requires: gawk >= 3.0
33Requires: grep >= 2.4.2
8d21b09a
ER
34Requires: gzip
35Requires: hostname
3d3e66ca 36Requires: iproute2 >= 2.2.4
a4ae40c6 37Requires: ipset
3d3e66ca 38Requires: iptables >= 1.2.4
8d21b09a 39Requires: kmod
3d3e66ca 40Requires: less
8d21b09a 41Requires: procps
3d3e66ca 42Requires: rc-scripts
8d21b09a
ER
43Requires: sed
44Requires: uname(release) >= 2.4
45Requires: util-linux >= 2.11
3d3e66ca
ER
46BuildArch: noarch
47BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48
49%description
50FireHOL is a generic firewall generator, meaning that you can design
51any kind of local or routing stateful packet filtering firewalls with
52ease. Install FireHOL if you want an easy way to configure stateful
53packet filtering firewalls on Linux hosts and routers.
54
55FireHOL uses an extremely simple but powerful way to define firewall
56rules which it turns into complete stateful iptables firewalls.
57
58You can run FireHOL with the 'helpme' argument, to get a configuration
59file for the system run, which you can modify according to your needs.
60The default configuration file will allow only client traffic on all
61interfaces.
62
63%prep
64%setup -q
8d21b09a
ER
65
66%build
42c97d14 67# grep AX_NEED_PROG configure.ac |sort -u|sed -rne 's/.+\(\[([^]]+)\], \[([^]]+)\].+/echo \1=`which \2` \\\\/p'|sh
3aaa3ef5 68%configure \
42c97d14
ER
69 BASH_SHELL_PATH=/bin/bash \
70 BRIDGE=/sbin/bridge \
71 CAT=/bin/cat \
72 CHMOD=/bin/chmod \
73 CHOWN=/bin/chown \
74 CP=/bin/cp \
75 CURL=/usr/bin/curl \
76 CUT=/usr/bin/cut \
77 DATE=/bin/date \
78 DIFF=/usr/bin/diff \
79 DIRNAME=/usr/bin/dirname \
80 ENV=/usr/bin/env \
81 EXPR=/usr/bin/expr \
82 FIND=/usr/bin/find \
83 FLOCK=/usr/bin/flock \
84 FOLD=/usr/bin/fold \
85 GAWK=/bin/awk \
86 HEAD=/usr/bin/head \
87 IP=/sbin/ip \
a4ae40c6 88 IPRANGE=/usr/bin/iprange \
42c97d14
ER
89 IPSET=/usr/sbin/ipset \
90 LN=/bin/ln \
91 LOGGER=/usr/bin/logger \
92 LS=/bin/ls \
93 LSMOD=/sbin/lsmod \
94 MKDIR=/bin/mkdir \
95 MKTEMP=/bin/mktemp \
96 MODPROBE=/sbin/insmod \
97 MORE=/bin/cat \
98 MV=/bin/mv \
99 PING6=/usr/bin/ping6 \
100 PING=/usr/bin/ping \
101 RM=/bin/rm \
102 RMMOD=/sbin/rmmod \
103 SEQ=/usr/bin/seq \
104 SH=/bin/ksh \
105 SLEEP=/bin/sleep \
106 SORT=/bin/sort \
107 SYSCTL=/sbin/sysctl \
108 TAIL=/usr/bin/tail \
109 TAR=/bin/tar \
110 TC=/sbin/tc \
111 TOUCH=/bin/touch \
112 TR=/usr/bin/tr \
113 TRACEROUTE=/usr/bin/traceroute \
114 UNAME=/bin/uname \
115 UNIQ=/usr/bin/uniq \
116 WC=/usr/bin/wc \
117 ZCAT=/usr/bin/gzip \
118 %{nil}
119
8d21b09a 120%{__make}
3d3e66ca
ER
121
122%install
123rm -rf $RPM_BUILD_ROOT
8d21b09a
ER
124%{__make} install \
125 DESTDIR=$RPM_BUILD_ROOT
3d3e66ca 126
8d21b09a
ER
127# Hack for documentation without crufts.
128rm -frv $RPM_BUILD_ROOT%{_docdir}
129find examples/ -name "Makefile*" -delete -print
3d3e66ca 130
8d21b09a
ER
131# Install systemd units.
132install -d $RPM_BUILD_ROOT%{systemdunitdir}
133cp -p %{SOURCE1} %{SOURCE2} $RPM_BUILD_ROOT%{systemdunitdir}
3d3e66ca 134
8d21b09a
ER
135# Install runtime directories.
136install -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/services
3d3e66ca
ER
137install -d $RPM_BUILD_ROOT%{_localstatedir}/spool/firehol
138
8d21b09a
ER
139# Ghost configurations.
140touch $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/firehol.conf \
141 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/fireqos.conf
142
143%clean
144rm -rf $RPM_BUILD_ROOT
145
3d3e66ca
ER
146%post
147/sbin/chkconfig --add firehol
148%service firehol restart
8d21b09a
ER
149%systemd_post firehol.service
150%systemd_post fireqos.service
3d3e66ca
ER
151
152%preun
153if [ "$1" = 0 ]; then
154 %service firehol stop
155 /sbin/chkconfig --del firehol
156fi
8d21b09a
ER
157%systemd_preun firehol.service
158%systemd_preun fireqos.service
3d3e66ca 159
8d21b09a
ER
160%postun
161%systemd_reload
3d3e66ca
ER
162
163%files
164%defattr(644,root,root,755)
a4ae40c6 165%doc README THANKS examples
8d21b09a
ER
166%doc doc/firehol/firehol-manual.{pdf,html}
167%doc doc/fireqos/fireqos-manual.{pdf,html}
3d3e66ca 168%dir %{_sysconfdir}/firehol
8d21b09a
ER
169%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/firehol.conf
170%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/fireqos.conf
171%{_sysconfdir}/%{name}/*.example
172%dir %{_sysconfdir}/%{name}/services
173%{_sysconfdir}/%{name}/services/*.example
174%attr(755,root,root) %{_sbindir}/firehol
175%attr(755,root,root) %{_sbindir}/fireqos
3d3e66ca
ER
176%{_mandir}/man1/*.1*
177%{_mandir}/man5/*.5*
8d21b09a
ER
178%{systemdunitdir}/firehol.service
179%{systemdunitdir}/fireqos.service
180%{_localstatedir}/spool/%{name}
This page took 0.096508 seconds and 4 git commands to generate.