%define name mydns %define version 0.10.1 %define release 1mdk %define webadminroot /var/www/html/admin Summary: A MySQL-based Internet DNS server. Name: %{name} Version: %{version} Release: %{release} License: GPL Group: System/Servers URL: http://mydns.bboy.net/ Source0: %{name}-%{version}.tar.bz2 Source1: %{name}.init.bz2 Patch0: mydns-0.9.12-conf.patch.bz2 PreReq: rpm-helper Prereq: /sbin/install-info Requires: mysqlserver BuildRequires: libmysql12-devel BuildRequires: zlib-devel BuildRequires: docbook-utils-pdf BuildRequires: texinfo BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot Conflicts: tmdns %description MyDNS is a free DNS server for UNIX implemented from scratch and designed to utilize the MySQL database for data storage. Its primary objectives are stability, security, interoperability, and speed, though not necessarily in that order. MyDNS does not include recursive name service, nor a resolver library. It is primarily designed for organizations with many zones and/or resource records who desire the ability to perform real-time dynamic updates on their DNS data via MySQL. MyDNS starts and is ready to answer questions immediately, no matter how much DNS data you have in the database. It is extremely fast and memory-efficient. It includes complete documentation, including a manual and a FAQ. It supports a few frills, including round robin DNS, dynamic load balancing, and outgoing AXFR for non-MyDNS nameservers. %package admin Summary: Web admin GUI written in php for %{name} Group: System/Servers Requires: webserver mysqlserver mod_php php-common php-mysql Requires: %{name} = %{version} Prefix: %{webadminroot} %description admin This package contains a web admin GUI written in php for %{name} %package devel Summary: Development libraries and headers for %{name} Group: Development/C %description devel This package contains the development libraries and headers for %{name} %prep %setup -q %patch0 -p0 %build %configure2_5x \ --with-mysql \ --without-pgsql \ --enable-alias # use "--without-pgsql" until people complain about it ;) # use this patch or not? #pushd contrib # patch -p0 < alias.patch #popd %make # build the pdf pushd doc make pdf popd %install [ -n "%{buildroot}" -a "%{buildroot}" != / ] && rm -rf %{buildroot} # don't fiddle with the initscript! export DONT_GPRINTIFY=1 %makeinstall install -d %{buildroot}%{_initrddir} install -d %{buildroot}%{webadminroot}/%{name} install -d %{buildroot}/var/run/mydns install -m644 contrib/admin.php %{buildroot}%{webadminroot}/%{name}/index.php # generate and fix the config on the fly %{buildroot}%{_sbindir}/mydns --dump-config > %{buildroot}%{_sysconfdir}/%{name}.conf perl -pi -e "s|^user = nobody|user = %{name}|g" %{buildroot}%{_sysconfdir}/%{name}.conf perl -pi -e "s|^group = nogroup|group = %{name}|g" %{buildroot}%{_sysconfdir}/%{name}.conf chmod 600 %{buildroot}%{_sysconfdir}/%{name}.conf bzcat %{SOURCE1} > %{buildroot}%{_initrddir}/%{name} chmod 755 %{buildroot}%{_initrddir}/%{name} # devel stuff install -d %{buildroot}%{_includedir} install -d %{buildroot}%{_libdir} install src/lib/mydns.h %{buildroot}%{_includedir}/ install src/lib/libmydns.a %{buildroot}%{_libdir}/ # as we don't have any of the djb goodies in mandrake, don't ship # a huge binary that only makes the daemontools run scripts (silly). # make the run scripts on the fly and tuck it away in doc dir. me=`whoami` %{buildroot}%{_bindir}/mydns-conf $me `pwd`/daemontools perl -p -i -e "s|$me|nobody|g" ./daemontools/run ./daemontools/log/run find %{buildroot} -name "mydns-conf*" | xargs rm -f %{find_lang} %{name} %pre %_pre_useradd %{name} /var/lib/%{name} /bin/false %post %_post_service %{name} %_install_info %{name}.info %preun %_preun_service %{name} %_remove_install_info %{name}.info %postun %_postun_userdel %{name} %clean [ -n "%{buildroot}" -a "%{buildroot}" != / ] && rm -rf %{buildroot} %files -f %{name}.lang %defattr(-, root, root) %doc AUTHORS BUGS ChangeLog NEWS QUICKSTART* README* TODO doc/*.pdf %doc contrib/README.alias daemontools %config(noreplace) %attr(0600,root,root) %{_sysconfdir}/%{name}.conf %config(noreplace) %attr(0755,root,root) %{_initrddir}/%{name} %{_bindir}/mydnscheck %{_bindir}/mydnsexport %{_bindir}/mydnsimport %{_bindir}/mydnsptrconvert %{_sbindir}/mydns %{_mandir}/man?/* %{_infodir}/* %dir %attr(0755,root,root) /var/run/mydns %files admin %defattr(-, root, root) %doc contrib/README %config(noreplace) %attr(0644,root,root) %{webadminroot}/%{name}/index.php %files devel %defattr(-, root, root) %{_libdir}/*.a %{_includedir}/*.h %changelog * Tue Dec 16 2003 Lenny Cartier <lenny@mandrakesoft.com> 0.10.1-1mdk - 0.10.1 * Sun Aug 17 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.10.0-1mdk - 0.10.0 * Thu Jul 31 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.13-1mdk - 0.9.13 * Fri Jul 25 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.12-1mdk - 0.9.12 - use the %%configure2_5x macro - added P0 - fixed S1 - misc spec file fixes * Thu Jul 10 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.10-2mdk - rebuild * Sun May 04 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.10-1mdk - 0.9.10 * Fri Apr 25 2003 Marcel Pol <mpol@gmx.net> 0.9.9-3mdk - buildrequires * Sun Apr 13 2003 Marcel Pol <mpol@gmx.net> 0.9.9-2mdk - buildrequires * Tue Apr 08 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.9-1mdk - 0.9.9 * Sat Mar 29 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.8-1mdk - 0.9.8 - html docs is gone, bring in pdf - misc spec file fixes * Tue Mar 11 2003 Marcel Pol <mpol@gmx.net> 0.9.7-2mdk - conflicts: tmdns - include locales * Sat Mar 08 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.7-1mdk - 0.9.7 * Wed Mar 05 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.6-1mdk - 0.9.6 - rebuilt against latest mysql - misc spec file fixes * Thu Jan 16 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.5-2mdk - build release * Mon Dec 16 2002 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.5-1mdk - new version - new S1 - misc spec file fixes - new sub package "devel" - run as mydns:mydns * Sat Sep 28 2002 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.3-1mdk - new version - misc spec file fixes * Thu Sep 19 2002 Oden Eriksson <oden.eriksson@kvikkjokk.net> 0.9.2-1mdk - initial cooker contrib - install web admin stuff in common %%{webadminroot}/ directory - added a simple init script