Blob Blame History Raw
%define pound_user	pound
%define pound_group	%{pound_user}
%define pound_home	%{_localstatedir}/lib/pound

Name:		Pound          
Version:	2.2.1
Release:	1%{?dist}
Summary:	Reverse proxy and load balancer        

Group:		System Environment/Daemons
License:	GPL        
URL:		http://apsis.ch/pound

BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires:	openssl-devel, pcre-devel

Requires(pre):		%{_sbindir}/useradd
Requires(post):		/sbin/chkconfig
Requires(preun):	/sbin/chkconfig, /sbin/service
Requires(postun):	/sbin/service

Source0:	http://apsis.ch/pound/%{name}-%{version}.tgz       
Source1:	pound.init
Source2:	pound.cfg
Patch0:		pound-remove-owner.patch

%description
The Pound program is a reverse proxy, load balancer and
HTTPS front-end for Web server(s). Pound was developed
to enable distributing the load among several Web-servers
and to allow for a convenient SSL wrapper for those Web
servers that do not offer it natively. Pound is distributed
under the GPL - no warranty, it's free to use, copy and
give away

%prep
%setup -q
%patch0 -p1 -b .remove-owner

%build
%configure
make %{?_smp_mflags}

%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}

%{__install} -d %{buildroot}%{pound_home}
%{__install} -p -D -m 755 %{SOURCE1} %{buildroot}%{_initrddir}/pound
%{__install} -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pound.cfg 

mkdir -p %{buildroot}%{_sysconfdir}/pki/tls/certs
touch %{buildroot}%{_sysconfdir}/pki/tls/certs/pound.pem

%clean
rm -rf %{buildroot}

%pre
%{_sbindir}/useradd -c "Pound user" -s /bin/false -r -d %{pound_home} \
	%{pound_user} 2>/dev/null || :

%post
/sbin/chkconfig --add pound

# generate dummy certificate
exec > /dev/null 2> /dev/null
if [ ! -f %{_sysconfdir}/pki/tls/certs/pound.pem ] ; then
pushd %{_sysconfdir}/pki/tls/certs
umask 077
cat << EOF | make pound.pem
--
SomeState
SomeCity
Pound Example Certificate
SomeOrganizationalUnit
localhost.localdomain
root@localhost.localdomain
EOF
chown root:pound pound.pem
chmod 640 pound.pem
popd
fi
exit 0

%preun
if [ $1 = 0 ]; then
	/sbin/service pound stop >/dev/null 2>&1
	/sbin/chkconfig --del pound
fi

%postun
if [ $1 -ge 1 ] ; then
	/sbin/service pound condrestart > /dev/null 2>&1 || :
fi

%files
%defattr(-,root,root,-)
%doc CHANGELOG FAQ GPL.html README
%{_mandir}/man8/pound.8*
%{_mandir}/man8/poundctl.8*
%{_sbindir}/pound
%{_sbindir}/poundctl
%{_initrddir}/pound
%config(noreplace) %{_sysconfdir}/pound.cfg
%ghost %config(noreplace) %{_sysconfdir}/pki/tls/certs/pound.pem
%attr(-,%{pound_user},%{pound_group}) %dir %{pound_home}

%changelog
* Wed Jan 03 2007 <ruben@rubenkerkhof.com> 2.2.1-1
- Sync with new beta release from upstream
* Sun Dec 17 2006 <ruben@rubenkerkhof.com> 2.2-2
- Fixed empty debuginfo rpm (bz 219942)
* Sat Dec 16 2006 <ruben@rubenkerkhof.com> 2.2-1
- Sync with upstream
* Sat Dec 09 2006 <ruben@rubenkerkhof.com> 2.1.8-1
- Sync with upstream
* Thu Dec 07 2006 <ruben@rubenkerkhof.com> 2.1.7-1
- Sync with upstream
* Wed Nov 08 2006 <ruben@rubenkerkhof.com> 2.1.6-2
- Changed hardcoded paths into rpmmacros
* Mon Nov 06 2006 <ruben@rubenkerkhof.com> 2.1.6-1
- Synced with upstream version
- Changed Summary
- Added an init script
- Added pound.cfg with an example configuration
- Added pound user and group
- A self-signed ssl certificate is created in %%post

* Fri Nov 03 2006 <ruben@rubenkerkhof.com> 2.1.5-1
- initial version