X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=dnsmasq.spec;h=e54bc17a2a4c973e3d69ebb4bea74a58155b81fb;hb=621e4d1199bec75d4a029c09d81fcdc5c5ca2111;hp=0f3736cc4364184fa29015dc27d1c6e6d5ca9890;hpb=0680bfb06ffd05a761b5b5d2ac5eefaff2015051;p=packages%2Fdnsmasq.git diff --git a/dnsmasq.spec b/dnsmasq.spec index 0f3736c..e54bc17 100644 --- a/dnsmasq.spec +++ b/dnsmasq.spec @@ -1,78 +1,159 @@ -Summary: A lightweight caching nameserver -Summary(pl): Lekki buforuj±cy serwer nazw (DNS) +# TODO: +# - subpackage DNSmasq webmin module (contrib/webmin) +# +# Conditional build: +%bcond_with dbus # DBus interface +%bcond_without idn # IDN via libidn2 +%bcond_without conntrack # conntrack support +%bcond_with lua # Lua support + +Summary: A lightweight caching server (DNS, DHCP) +Summary(pl.UTF-8): Lekki buforujący serwer nazw (DNS) i DHCP Name: dnsmasq -Version: 2.15 +Version: 2.82 Release: 1 -License: GPL +License: GPL v2 Group: Networking/Daemons +# TODO: http://thekelleys.org.uk/dnsmasq/%{name}-%{version}.tar.xz Source0: http://thekelleys.org.uk/dnsmasq/%{name}-%{version}.tar.gz -# Source0-md5: 72f59fa070a1dc7f664603b20134c383 +# Source0-md5: 3c710dee3edba510ed11a6e3d9e0d9cb Source1: %{name}.init -Source2: %{name}.config -URL: http://www.thekelleys.org.uk/dnsmasq/ -PreReq: rc-scripts -Requires(post,postun): /sbin/chkconfig +Source2: %{name}.sysconfig +Source3: %{name}.service +URL: http://www.thekelleys.org.uk/dnsmasq/doc.html +%{?with_dbus:BuildRequires: dbus-devel} +BuildRequires: gettext-tools +BuildRequires: gmp-devel +%{?with_idn:BuildRequires: libidn2-devel} +%{?with_conntrack:BuildRequires: libnetfilter_conntrack-devel} +%{?with_lua:BuildRequires: lua52-devel} +BuildRequires: nettle-devel +BuildRequires: pkgconfig +BuildRequires: rpmbuild(macros) >= 1.671 +Requires(post,preun): /sbin/chkconfig +Requires(post,preun,postun): systemd-units >= 38 +Requires: systemd-units >= 38 +Requires: rc-scripts Provides: caching-nameserver BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%define copts -DHAVE_DNSSEC%{?with_dbus: -DHAVE_DBUS}%{?with_idn: -DHAVE_LIBIDN2}%{?with_conntrack: -DHAVE_CONNTRACK}%{?with_lua: -DHAVE_LUASCRIPT} + %description -Dnsmasq is lightweight, easy to configure DNS forwarder designed to -provide DNS (domain name) services to a small network where using BIND -would be overkill. It can be have its DNS servers automatically -configured by PPP or DHCP, and it can serve the names of local -machines which are not in the global DNS. It is ideal for networks -behind NAT routers and connected via modem, ISDN, ADSL, or cable-modem -connections. - -%description -l pl -Dnsmasq jest lekkim, ³atwym do konfiguracji forwarderem DNS -zaprojektowanym do serwowania us³ugi DNS dla ma³ych sieci, gdzie -u¿ywanie BIND by³oby przesad±. Zewnêtrzne serwery DNS mog± byæ -automatycznie konfigurowane przez PPP lub DHCP. Mo¿e on serwowaæ tak¿e -nazwy dla lokalnych maszyn nie znajduj±cych siê w globalnym DNS. Jest -idealny dla sieci za NAT i po³±czonych przez modem, ISDL, ADSL lub -po³±czenia kablowe. +Dnsmasq is a lightweight, easy to configure DNS forwarder and DHCP +server. It is designed to provide DNS and, optionally, DHCP, to a +small network. It can serve the names of local machines which are not +in the global DNS. The DHCP server integrates with the DNS server and +allows machines with DHCP-allocated addresses to appear in the DNS +with names configured either in each host or in a central +configuration file. Dnsmasq supports static and dynamic DHCP leases +and BOOTP for network booting of diskless machines. + +Dnsmasq is targeted at home networks using NAT and connected to the +Internet via a modem, cable-modem or ADSL connection but would be a +good choice for any small network where low resource use and ease of +configuration are important. + +%description -l pl.UTF-8 +dnsmasq jest lekkim, łatwym w konfiguracji forwarderem DNS i serwerem +DHCP zaprojektowanym do serwowania usługi DNS i opcjonalnie DHCP dla +małych sieci. Może on serwować także nazwy dla lokalnych maszyn nie +znajdujących się w globalnym DNS-ie. Serwer DHCP integruje się z +serwerem DNS, umożliwiając maszynom o adresach przydzielonych przez +DHCP pojawienie się w DNS-ie z nazwami konfigurowanymi dla każdego +hosta lub w centralnym pliku konfiguracyjnym. dnsmasq obsługuje +statyczne i dynamiczne dzierżawy DHCP oraz BOOTP do uruchamiania z +sieci maszyn bezdyskowych. + +dnsmasq jest przeznaczony głównie dla sieci domowych używających NAT-u +i podłączonych do Internetu przez modem, modem kablowy lub łącze ADSL, +ale jest dobrym wyborem dla dowolnej małej sieci, gdzie ważne jest +małe wykorzystanie zasobów i łatwa konfiguracja. %prep %setup -q %build -%{__make} \ - CC=%{__cc} \ - CFLAGS="%{rpmcflags}" +%{__make} all-i18n \ + CC="%{__cc}" \ + CFLAGS="%{rpmcppflags} %{rpmcflags} -DHAVE_ISC_READER" \ + LDFLAGS="%{rpmldflags}" \ + COPTS="%{copts}" \ + PREFIX=%{_prefix} %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_sbindir},/etc/sysconfig,/etc/rc.d/init.d,%{_mandir}/man8} +install -d $RPM_BUILD_ROOT{%{_sbindir},/etc/sysconfig,/etc/rc.d/init.d} \ + $RPM_BUILD_ROOT{%{systemdunitdir},%{_mandir}/man8,%{_datadir}/dnsmasq} install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/dnsmasq install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/dnsmasq -install src/dnsmasq $RPM_BUILD_ROOT%{_sbindir} -install dnsmasq.8 $RPM_BUILD_ROOT%{_mandir}/man8 +install dnsmasq.conf.example $RPM_BUILD_ROOT%{_sysconfdir}/dnsmasq.conf + +install contrib/port-forward/dnsmasq-portforward $RPM_BUILD_ROOT%{_sbindir} +install contrib/port-forward/portforward $RPM_BUILD_ROOT%{_sysconfdir} + +install %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/dnsmasq.service + +install -p trust-anchors.conf $RPM_BUILD_ROOT%{_datadir}/dnsmasq + +%{__make} install-i18n \ + COPTS="%{copts}" \ + DESTDIR=$RPM_BUILD_ROOT \ + PREFIX=%{_prefix} + +%{__mv} $RPM_BUILD_ROOT%{_datadir}/locale/{no,nb} + +%find_lang %{name} %clean rm -rf $RPM_BUILD_ROOT %post /sbin/chkconfig --add dnsmasq -if [ -f %{_localstatedir}/lock/subsys/dnsmasq ]; then - /etc/rc.d/init.d/dnsmasq restart >&2 -else - echo "Run \"/etc/rc.d/init.d/dnsmasq start\" to start dnsmasq." >&2 -fi +%service dnsmasq restart +%systemd_post dnsmasq.service %preun if [ "$1" = "0" ]; then - if [ -f %{_localstatedir}/lock/subsys/dnsmasq ]; then - /etc/rc.d/init.d/dnsmasq stop - fi + %service dnsmasq stop /sbin/chkconfig --del dnsmasq fi +%systemd_preun dnsmasq.service + +%postun +%systemd_reload + +%triggerpostun -- dnsmasq < 2.68-1.1 +if [ -f /etc/sysconfig/dnsmasq ]; then + __OPT= + . /etc/sysconfig/dnsmasq + [ -n "$MAILHOSTNAME" ] && __OPT="-m $MAILHOSTNAME" + [ -n "$RESOLV_CONF" ] && __OPT="$__OPT -r $RESOLV_CONF" + [ -n "$DHCP_LEASE" ] && __OPT="$__OPT -l $DHCP_LEASE" + [ -n "$DOMAIN_SUFFIX" ] && __OPT="$__OPT -s $DOMAIN_SUFFIX" + [ -n "$INTERFACE" ] && __OPT="$__OPT -i $INTERFACE" + if [ -n "$__OPT" ]; then + %{__cp} -f /etc/sysconfig/dnsmasq{,.rpmsave} + echo >>/etc/sysconfig/dnsmasq + echo "# Added by rpm trigger" >>/etc/sysconfig/dnsmasq + echo "OPTIONS=\"$OPTIONS $__OPT\"" >>/etc/sysconfig/dnsmasq + fi +fi +%systemd_trigger dnsmasq.service -%files +%files -f %{name}.lang %defattr(644,root,root,755) -%doc CHANGELOG FAQ *.html +%doc CHANGELOG FAQ *.html contrib/{dnslist,dynamic-dnsmasq} %attr(754,root,root) /etc/rc.d/init.d/dnsmasq +%{systemdunitdir}/dnsmasq.service %attr(755,root,root) %{_sbindir}/dnsmasq -%config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/dnsmasq -%{_mandir}/man8/* +%attr(755,root,root) %{_sbindir}/dnsmasq-portforward +%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/dnsmasq +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dnsmasq.conf +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/portforward +%{_mandir}/man8/dnsmasq.8* +%lang(es) %{_mandir}/es/man8/dnsmasq.8* +%lang(fr) %{_mandir}/fr/man8/dnsmasq.8* +%dir %{_datadir}/dnsmasq +%{_datadir}/dnsmasq/trust-anchors.conf