]> git.pld-linux.org Git - packages/unbound.git/blobdiff - unbound.spec
Fix crash on compile/runtime kernel version mismatch
[packages/unbound.git] / unbound.spec
index 561dd7822b2358a9bf38998b1424ecce5a4e494d..54115ba7525e6aa5d9b66fa20466bd8e8ea18973 100644 (file)
@@ -5,16 +5,22 @@
 Summary:       Recursive, validating DNS resolver
 Summary(pl.UTF-8):     Rekurencyjny, weryfikujący resolver DNS
 Name:          unbound
-Version:       1.4.19
-Release:       1
+Version:       1.5.1
+Release:       2
 License:       BSD
 Group:         Applications/Network
 Source0:       http://www.unbound.net/downloads/%{name}-%{version}.tar.gz
-# Source0-md5: 39f121e1921c7b5ad2f05a4d756a0487
+# Source0-md5: ed4c46476dcfb8a507cc08b1ba12a8f1
 Source1:       %{name}.init
+Source2:       %{name}.service
+Source3:       https://data.iana.org/root-anchors/icannbundle.pem
+# Source3-md5: 59774aba58dbde1049bdf4722fb4f02c
+Source4:       ftp://ftp.internic.net/domain/named.cache
+# Source4-md5: 89241448b08af70dd5715e7ef12d71f6
+Patch0:                %{name}-default_trust_anchor.patch
+Patch1:                %{name}-IP_PMTUDISC_OMIT.patch
 URL:           http://unbound.net/
 BuildRequires: expat-devel
-BuildRequires: ldns-devel >= 1.6.9
 BuildRequires: libevent-devel
 BuildRequires: openssl-devel
 BuildRequires: rpmbuild(macros) >= 1.228
@@ -23,6 +29,12 @@ BuildRequires:       python-devel >= 1:2.4.0
 BuildRequires: swig-python
 %endif
 Requires(post,preun):  /sbin/chkconfig
+BuildRequires: rpmbuild(macros) >= 1.671
+Provides:      user(unbound)
+Requires(postun):      /usr/sbin/userdel
+Requires(pre): /bin/id
+Requires(pre): /usr/sbin/useradd
+Requires:      systemd-units >= 38
 Requires:      %{name}-libs = %{version}-%{release}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -68,7 +80,6 @@ Summary:      Header files for unbound library
 Summary(pl.UTF-8):     Pliki nagłówkowe biblioteki unbound
 Group:         Development/Libraries
 Requires:      %{name}-libs = %{version}-%{release}
-Requires:      ldns-devel
 Requires:      openssl-devel
 
 %description devel
@@ -103,22 +114,36 @@ Pythonowy interfejs do biblioteki unbound.
 
 %prep
 %setup -q
+%patch0 -p1
+%patch1 -p1
 
 %build
 %configure \
-       %{?with_python:--with-pyunbound}
+       %{?with_python:--with-pyunbound} \
+       --with-pidfile=/run/%{name}.pid \
+       --with-chroot-dir="" \
+       --with-conf-file=%{_sysconfdir}/%{name}/%{name}.conf \
+       --with-rootkey-file=/var/lib/%{name}/root.key \
+       --with-rootcert-file=%{_sysconfdir}/%{name}/icannbundle.pem
+
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
+install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{systemdunitdir},/var/lib/%{name}}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
+install %{SOURCE2} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service
+install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/icannbundle.pem
+install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/named.cache
+
+touch $RPM_BUILD_ROOT/var/lib/%{name}/root.key
+
 %if %{with python}
-%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/_unbound.{la,a}
+%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/_unbound.la
 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
 %py_postclean
@@ -129,13 +154,27 @@ rm -rf $RPM_BUILD_ROOT
 
 %post
 /sbin/chkconfig --add %{name}
+%systemd_post %{name}.service
 %service %{name} restart
 
+%pre
+%useradd -u 196 -g 99 -d /tmp -s /bin/false -c "unbound user" unbound
+
 %preun
 if [ "$1" = "0" ]; then
        %service -q %{name} stop
        /sbin/chkconfig --del %{name}
 fi
+%systemd_preun %{name}.service
+
+%postun
+if [ "$1" = "0" ]; then
+       %userremove unbound
+fi
+%systemd_reload
+
+%triggerpostun -- %{name} < 1.4.22-1
+%systemd_trigger %{name}.service
 
 %post  libs -p /sbin/ldconfig
 %postun        libs -p /sbin/ldconfig
@@ -144,8 +183,11 @@ fi
 %defattr(644,root,root,755)
 %doc doc/{CREDITS,Changelog,FEATURES,LICENSE,README,TODO,control_proto_spec.txt,example.conf,ietf67-design-02.pdf,requirements.txt}
 %attr(754,root,root) /etc/rc.d/init.d/unbound
+%{systemdunitdir}/%{name}.service
 %dir %{_sysconfdir}/%{name}
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/unbound.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/named.cache
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/icannbundle.pem
 %attr(755,root,root) %{_sbindir}/unbound
 %attr(755,root,root) %{_sbindir}/unbound-anchor
 %attr(755,root,root) %{_sbindir}/unbound-checkconf
@@ -156,7 +198,9 @@ fi
 %{_mandir}/man8/unbound-checkconf.8*
 %{_mandir}/man8/unbound.8*
 %{_mandir}/man8/unbound-anchor.8*
-%{_mandir}/man8/unbound-control.8*
+%{_mandir}/man8/unbound-control*.8*
+%dir %attr(755,unbound,nobody) /var/lib/%{name}
+%ghost /var/lib/%{name}/root.key
 
 %files libs
 %defattr(644,root,root,755)
This page took 0.057002 seconds and 4 git commands to generate.