convert to systemd

This commit is contained in:
Tom "spot" Callaway 2011-09-09 14:52:24 -04:00
parent 066a5d2fef
commit 56e929d1f4
2 changed files with 51 additions and 16 deletions

13
firewalld.service Normal file
View File

@ -0,0 +1,13 @@
[Unit]
Description=Firewall dynamic change handling daemon
After=syslog.target
[Service]
Type=forking
EnvironmentFile=-/etc/sysconfig/firewalld
ExecStart=/usr/sbin/firewalld $FIREWALLD_ARGS
ExecReload=/usr/bin/firewall-cmd --reload
[Install]
WantedBy=multi-user.target
Alias=dbus-org.fedoraproject.FirewallD.service

View File

@ -1,24 +1,26 @@
Summary: A firewall daemon with D-BUS interface providing a dynamic firewall
Name: firewalld
Version: 0.1.3
Release: 2%{?dist}
Release: 3%{?dist}
URL: http://fedorahosted.org/firewalld
License: GPLv2+
ExclusiveOS: Linux
Group: System Environment/Base
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildArch: noarch
Source0: https://fedorahosted.org/released/firewalld/%{name}-%{version}.tar.bz2
Source1: firewalld.service
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: intltool
BuildRequires: systemd-units
Requires(post): systemd-sysv
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
Requires: system-config-firewall-base >= 1.2.28
Requires: dbus-python
Requires: python-slip-dbus >= 0.2.7
Requires: iptables, ebtables
Requires(post): chkconfig
Requires(preun): chkconfig
%description
firewalld is a firewall service daemon that provides a dynamic customizable
@ -58,10 +60,13 @@ the firewall settings.
%configure
%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
# systemd
rm -rf %{buildroot}%{_initddir}
mkdir -p %{buildroot}%{_unitdir}
install -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/
desktop-file-install --delete-original \
--dir %{buildroot}%{_datadir}/applications \
%{buildroot}%{_datadir}/applications/firewall-applet.desktop
@ -71,11 +76,11 @@ desktop-file-install --delete-original \
%find_lang %{name} --all-name
%clean
rm -rf %{buildroot}
%post
/sbin/chkconfig --add firewalld
if [ $1 -eq 1 ] ; then
# Initial installation
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
fi
touch --no-create %{_datadir}/icons/hicolor
if [ -x /usr/bin/gtk-update-icon-cache ]; then
gtk-update-icon-cache -q %{_datadir}/icons/hicolor
@ -83,20 +88,34 @@ fi
%preun
if [ $1 = 0 ]; then
%{_initrddir}/firewalld stop >/dev/null 2>&1
/sbin/chkconfig --del firewalld
# Package removal, not upgrade
/bin/systemctl --no-reload disable firewalld.service > /dev/null 2>&1 || :
/bin/systemctl stop firewalld.service > /dev/null 2>&1 || :
fi
exit 0
%postun
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
if [ $1 -ge 1 ] ; then
# Package upgrade, not uninstall
/bin/systemctl try-restart firewalld.service >/dev/null 2>&1 || :
fi
touch --no-create %{_datadir}/icons/hicolor
if [ -x /usr/bin/gtk-update-icon-cache ]; then
gtk-update-icon-cache -q %{_datadir}/icons/hicolor
fi
%triggerun -- httpd < 1.0-2
# Save the current service runlevel info
# User must manually run systemd-sysv-convert --apply firewalld
# to migrate them to systemd targets
/usr/bin/systemd-sysv-convert --save firewalld >/dev/null 2>&1 ||:
# Run these because the SysV package being removed won't do them
/sbin/chkconfig --del firewalld >/dev/null 2>&1 || :
/bin/systemctl try-restart firewalld.service >/dev/null 2>&1 || :
%files -f %{name}.lang
%defattr(-,root,root)
%doc COPYING
%{_sbindir}/firewalld
%{_bindir}/firewall-cmd
@ -104,7 +123,7 @@ fi
%attr(0755,root,root) %dir %{_sysconfdir}/firewalld
%config(noreplace) %{_sysconfdir}/firewalld/firewalld.conf
%config(noreplace) %{_sysconfdir}/sysconfig/firewalld
%attr(0755,root,root) %{_initrddir}/firewalld
%{_unitdir}/firewalld.service
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/FirewallD.conf
%{_datadir}/polkit-1/actions/org.fedoraproject.FirewallD.policy
%attr(0755,root,root) %dir %{_datadir}/firewalld/
@ -127,6 +146,9 @@ fi
#%{_datadir}/icons/hicolor/*/apps/firewall-config*.*
%changelog
* Fri Sep 9 2011 Tom Callaway <spot@fedoraproject.org> 0.1.3-3
- convert to systemd
* Mon Feb 14 2011 Thomas Woerner <twoerner@redhat.com> 0.1.3-1
- new version 0.1.3
- restore all firewall features for reload: panic and virt rules and chains