]> git.pld-linux.org Git - packages/firewalld.git/blob - firewalld.spec
- fix python shebang, rel 2
[packages/firewalld.git] / firewalld.spec
1 Summary:        A firewall daemon with D-Bus interface providing a dynamic firewall
2 Name:           firewalld
3 Version:        1.2.0
4 Release:        2
5 License:        GPL v2+
6 Source0:        https://github.com/firewalld/firewalld/releases/download/v%{version}/%{name}-%{version}.tar.gz
7 # Source0-md5:  cbb120864ecb83544f7329c09367250f
8 Group:          Networking/Admin
9 URL:            http://www.firewalld.org/
10 BuildRequires:  desktop-file-utils
11 BuildRequires:  docbook-style-xsl
12 BuildRequires:  gettext
13 BuildRequires:  glib2
14 # glib2-devel is needed for gsettings.m4
15 BuildRequires:  glib2-devel
16 BuildRequires:  intltool
17 BuildRequires:  python3
18 BuildRequires:  python3-modules
19 BuildRequires:  rpm-pythonprov
20 BuildRequires:  rpmbuild(macros) >= 1.713
21 BuildRequires:  sed >= 4.0
22 BuildRequires:  systemd-units
23 Requires:       iptables
24 Suggests:       ipset
25 Requires(post): systemd
26 Requires(preun):        systemd
27 Requires(postun):       systemd
28 Requires:       python3-firewall = %{version}-%{release}
29 Obsoletes:      firewalld-config-cloud
30 Obsoletes:      firewalld-config-server
31 Obsoletes:      firewalld-config-standard
32 Obsoletes:      firewalld-config-workstation
33 BuildArch:      noarch
34 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
35
36 %description
37 firewalld is a firewall service daemon that provides a dynamic
38 customizable firewall with a D-Bus interface.
39
40 %package -n python-firewall
41 Summary:        Python2 bindings for firewalld
42 Group:          Libraries/Python
43 Requires:       python-dbus
44 Requires:       python-decorator
45 Requires:       python-slip-dbus
46 Requires:       python3-pygobject3
47 Provides:       python2-firewall
48 Obsoletes:      python2-firewall
49
50 %description -n python-firewall
51 Python2 bindings for firewalld.
52
53 %package -n python3-firewall
54 Summary:        Python3 bindings for firewalld
55 Group:          Libraries/Python
56 Requires:       python3-dbus
57 Requires:       python3-decorator
58 Requires:       python3-pygobject3
59 Requires:       python3-slip-dbus
60
61 %description -n python3-firewall
62 Python3 bindings for firewalld.
63
64 %package -n firewall-applet
65 Summary:        Firewall panel applet
66 Group:          X11/Applications
67 Requires:       %{name} = %{version}-%{release}
68 Requires:       NetworkManager-libs
69 Requires:       firewall-config = %{version}-%{release}
70 Requires:       hicolor-icon-theme
71 Requires:       libnotify
72 Requires:       python3-PyQt5
73 Requires:       python3-pygobject3
74
75 %description -n firewall-applet
76 The firewall panel applet provides a status information of firewalld
77 and also the firewall settings.
78
79 %package -n firewall-config
80 Summary:        Firewall configuration application
81 Group:          Base
82 Requires:       %{name} = %{version}-%{release}
83 Requires:       NetworkManager-libs
84 Requires:       gtk+3
85 Requires:       hicolor-icon-theme
86 Requires:       python3-pygobject3
87
88 %description -n firewall-config
89 The firewall configuration application provides an configuration
90 interface for firewalld.
91
92 %prep
93 %setup -q
94
95 %build
96 %configure \
97         --enable-sysconfig \
98         --enable-rpmmacros \
99         --with-systemd-unitdir=%{systemdunitdir} \
100         --with-iptables=%{_sbindir}/iptables \
101         --with-iptables-restore=%{_sbindir}/iptables-restore \
102         --with-ip6tables=%{_sbindir}/ip6tables \
103         --with-ip6tables-restore=%{_sbindir}/ip6tables-restore \
104         --with-ebtables=%{_sbindir}/ebtables \
105         --with-ebtables-restore=%{_sbindir}/ebtables-restore \
106         --with-ipset=%{_sbindir}/ipset \
107         PYTHON=%{__python3}
108
109 %install
110 rm -rf $RPM_BUILD_ROOT
111
112 # Python 2 library, in case anything still wants this
113 %{__make} -C src \
114         install-nobase_dist_pythonDATA \
115         pythondir=%{py_sitescriptdir} \
116         pyexecdir=%{py_sitescriptdir} \
117         PYTHON=%{__python} \
118         DESTDIR=$RPM_BUILD_ROOT
119
120 %{__make} install \
121         pythondir=%{py3_sitescriptdir} \
122         pyexecdir=%{py3_sitescriptdir} \
123         PYTHON=%{__python3} \
124         DESTDIR=$RPM_BUILD_ROOT
125
126 %find_lang %{name} --all-name
127
128 desktop-file-install --delete-original \
129         --dir $RPM_BUILD_ROOT%{_sysconfdir}/xdg/autostart \
130         $RPM_BUILD_ROOT%{_sysconfdir}/xdg/autostart/firewall-applet.desktop
131
132 desktop-file-install --delete-original \
133         --dir $RPM_BUILD_ROOT%{_desktopdir} \
134         $RPM_BUILD_ROOT%{_desktopdir}/firewall-config.desktop
135
136 install -d $RPM_BUILD_ROOT%{_prefix}/lib/firewalld/zones/
137
138 %{__rm} $RPM_BUILD_ROOT%{_prefix}/lib/firewalld/ipsets/README.md
139
140 %{__sed} -E -i -e '1s,#!\s*/usr/bin/env\s+python(\s|$),#!%{__python3}\1,' \
141         -e '1s,#!\s*/usr/bin/python(\s|$),#!%{__python3}\1,' $RPM_BUILD_ROOT{%{_sbindir},%{_bindir}}/*
142
143 %py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}/firewall
144 %py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}/firewall
145
146 for module in ""  "/config" "/core" "/core/io" "/server"  ; do
147     %{__python3} -m compileall -l -d %{py3_sitescriptdir}/firewall$module $RPM_BUILD_ROOT%{py3_sitescriptdir}/firewall$module
148     %{__python3} -O -m compileall -l -d %{py3_sitescriptdir}/firewall$module $RPM_BUILD_ROOT%{py3_sitescriptdir}/firewall$module
149 done
150 %{__python3} -m compileall -l -d %{_datadir}/firewalld $RPM_BUILD_ROOT%{_datadir}/firewalld
151 %{__python3} -O -m compileall -l -d %{_datadir}/firewalld $RPM_BUILD_ROOT%{_datadir}/firewalld
152
153 %clean
154 rm -rf $RPM_BUILD_ROOT
155
156 %post
157 %systemd_post firewalld.service
158
159 %preun
160 %systemd_preun firewalld.service
161
162 %postun
163 %systemd_reload firewalld.service
164
165 %post -n firewall-applet
166 %update_icon_cache hicolor
167
168 %postun -n firewall-applet
169 %update_icon_cache hicolor
170 %glib_compile_schemas
171
172 %posttrans -n firewall-applet
173 %update_icon_cache hicolor
174 %glib_compile_schemas
175
176 %post -n firewall-config
177 %update_icon_cache hicolor
178
179 %postun -n firewall-config
180 %update_icon_cache hicolor
181 %glib_compile_schemas
182
183 %posttrans -n firewall-config
184 %update_icon_cache hicolor
185 %glib_compile_schemas
186
187 %files -f %{name}.lang
188 %defattr(644,root,root,755)
189 %attr(755,root,root) %{_sbindir}/firewalld
190 %attr(755,root,root) %{_bindir}/firewall-cmd
191 %attr(755,root,root) %{_bindir}/firewall-offline-cmd
192 %{bash_compdir}/firewall-cmd
193 %dir %{_prefix}/lib/firewalld
194 %dir %{_prefix}/lib/firewalld/helpers
195 %{_prefix}/lib/firewalld/helpers/*.xml
196 %dir %{_prefix}/lib/firewalld/icmptypes
197 %{_prefix}/lib/firewalld/icmptypes/*.xml
198 %dir %{_prefix}/lib/firewalld/policies
199 %{_prefix}/lib/firewalld/policies/*.xml
200 %dir %{_prefix}/lib/firewalld/services
201 %{_prefix}/lib/firewalld/services/*.xml
202 %dir %{_prefix}/lib/firewalld/zones
203 %{_prefix}/lib/firewalld/zones/*.xml
204 %dir %attr(750,root,root) %dir %{_sysconfdir}/firewalld
205 %config(noreplace) %{_sysconfdir}/firewalld/firewalld.conf
206 %attr(750,root,root) %dir %{_sysconfdir}/firewalld/icmptypes
207 %attr(750,root,root) %dir %{_sysconfdir}/firewalld/services
208 %attr(750,root,root) %dir %{_sysconfdir}/firewalld/zones
209 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/firewalld/lockdown-whitelist.xml
210 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/firewalld
211 %config(noreplace) %{_sysconfdir}/logrotate.d/firewalld
212 %config(noreplace) %{_sysconfdir}/modprobe.d/firewalld-sysctls.conf
213 %{systemdunitdir}/firewalld.service
214 %{_datadir}/dbus-1/system.d/FirewallD.conf
215 %{_datadir}/polkit-1/actions/org.fedoraproject.FirewallD1.desktop.policy.choice
216 %{_datadir}/polkit-1/actions/org.fedoraproject.FirewallD1.server.policy.choice
217 %{_datadir}/polkit-1/actions/org.fedoraproject.FirewallD1.policy
218 %dir %{_datadir}/firewalld
219 %{_datadir}/%{name}/testsuite
220 %{_mandir}/man1/firewall*cmd*.1*
221 %{_mandir}/man1/firewalld*.1*
222 %{_mandir}/man5/firewall*.5*
223
224 %files -n python-firewall
225 %defattr(644,root,root,755)
226 %dir %{py_sitescriptdir}/firewall
227 %dir %{py_sitescriptdir}/firewall/config
228 %dir %{py_sitescriptdir}/firewall/core
229 %dir %{py_sitescriptdir}/firewall/core/io
230 %dir %{py_sitescriptdir}/firewall/server
231 %{py_sitescriptdir}/firewall/*.py*
232 %{py_sitescriptdir}/firewall/config/*.py*
233 %{py_sitescriptdir}/firewall/core/*.py*
234 %{py_sitescriptdir}/firewall/core/io/*.py*
235 %{py_sitescriptdir}/firewall/server/*.py*
236
237 %files -n python3-firewall
238 %defattr(644,root,root,755)
239 %{py3_sitescriptdir}/firewall
240
241 %files -n firewall-applet
242 %defattr(644,root,root,755)
243 %attr(755,root,root) %{_bindir}/firewall-applet
244 %defattr(0644,root,root)
245 %{_sysconfdir}/xdg/autostart/firewall-applet.desktop
246 %{_iconsdir}/hicolor/*/apps/firewall-applet*.*
247 %{_mandir}/man1/firewall-applet*.1*
248 %dir %{_sysconfdir}/firewall
249 %config(noreplace) %{_sysconfdir}/firewall/applet.conf
250
251 %files -n firewall-config
252 %defattr(644,root,root,755)
253 %attr(755,root,root) %{_bindir}/firewall-config
254 %defattr(0644,root,root)
255 %{_datadir}/firewalld/__pycache__
256 %{_datadir}/firewalld/firewall-config.glade
257 %{_datadir}/firewalld/gtk3_*
258 %{_desktopdir}/firewall-config.desktop
259 %{_datadir}/metainfo/firewall-config.appdata.xml
260 %{_iconsdir}/hicolor/*/apps/firewall-config*.*
261 %{_datadir}/glib-2.0/schemas/org.fedoraproject.FirewallConfig.gschema.xml
262 %{_mandir}/man1/firewall-config*.1*
This page took 0.121742 seconds and 4 git commands to generate.