summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'www-proxy/wwwoffle/wwwoffle-2.8b.ebuild')
-rw-r--r--www-proxy/wwwoffle/wwwoffle-2.8b.ebuild139
1 files changed, 139 insertions, 0 deletions
diff --git a/www-proxy/wwwoffle/wwwoffle-2.8b.ebuild b/www-proxy/wwwoffle/wwwoffle-2.8b.ebuild
new file mode 100644
index 000000000000..ee02ed386a99
--- /dev/null
+++ b/www-proxy/wwwoffle/wwwoffle-2.8b.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-proxy/wwwoffle/wwwoffle-2.8b.ebuild,v 1.1 2004/08/15 19:11:58 stuart Exp $
+
+inherit eutils
+
+DESCRIPTION="wwwoffle = WWW Offline Explorer, an adv. caching proxy especially suitable for nonpermanent (e.g. dialup) Internet connections"
+
+SRC_URI="ftp://ftp.demon.co.uk/pub/unix/httpd/${P}.tgz
+ ftp://ftp.ibiblio.org/pub/Linux/apps/www/servers/${P}.tgz"
+
+HOMEPAGE="http://www.gedanken.demon.co.uk/wwwoffle"
+KEYWORDS="x86 sparc ~ppc ~ppc64"
+SLOT="0"
+LICENSE="GPL-2"
+IUSE="ipv6"
+
+DEPEND=">=sys-apps/sed-4
+ sys-apps/gawk
+ sys-apps/grep
+ dev-lang/perl
+ sys-devel/flex
+ sys-libs/zlib
+ sys-devel/gcc
+ virtual/libc
+ app-arch/tar"
+
+RDEPEND="sys-libs/zlib
+ virtual/libc"
+
+src_unpack(){
+ unpack ${A}
+ cd ${S}
+ sed -i -e 's#$(TAR) xpf #$(TAR) --no-same-owner -xpf #' cache/Makefile.in
+ sed -i -e "s#^docdir=.*#docdir=\$(DESTDIR)\${prefix}/share/doc/${P}#" doc/Makefile.in
+
+
+ ### adjust path for htdig - /usr/share/webapps/${PF}/cgi-bin/
+ ## (as per http://www.gentoo.org/proj/en/glep/glep-0011.html)
+ ## Not impliemented yet.
+
+ echo '/usr/share/webapps/*/cgi-bin/htsearch -c /var/spool/wwwoffle/search/htdig/conf/htsearch.conf' \
+ > cache/search/htdig/scripts/wwwoffle-htsearch
+ chmod a+x cache/search/htdig/scripts/wwwoffle-htsearch
+}
+
+src_compile() {
+
+ local myconf
+ myconf="`use_with ipv6`"
+ econf --with-confdir=/etc ${myconf} || die
+ emake || die
+
+ local conffile=conf/wwwoffle.conf.template
+ if [ -f ${ROOT}/etc/wwwoffle.conf ]
+ then
+ einfo "Upgrading current configuration file"
+ cp ${ROOT}/etc/wwwoffle.conf conf/wwwoffle.conf
+ conf/upgrade-config.pl conf/wwwoffle.conf
+ # Hack to stop regeneration of config file
+ touch conf/conf-file
+ conffile=conf/wwwoffle.conf
+ fi
+ # change to user wwwoffle
+ einfo "Changing the default user (and group) to wwwoffle"
+ sed -i -e 's/\(run-[gu]id\)[ \t]*=[ \t]*[a-zA-Z0-9]*[ \t]*$/\1 = wwwoffle/g' \
+ ${conffile}
+}
+
+pkg_preinst() {
+
+ # Add a wwwoffle user - required here for binary packages
+ enewgroup wwwoffle
+ enewuser wwwoffle -1 /bin/false /var/spool/wwwoffle wwwoffle
+
+ # TODO maybe rootjail ${ROOT}
+ source /etc/init.d/functions.sh
+ if [ -L ${svcdir}/started/wwwoffled ]; then
+ einfo "The wwwoffled init script is running. I'll stop it, merge the new files and
+ restart the script."
+ /etc/init.d/wwwoffled stop
+ # Just to be sure...
+ start-stop-daemon --stop --quiet --name wwwoffled
+ touch ${T}/stopped
+ fi
+}
+
+
+src_install() {
+ emake DESTDIR=${D} install || die
+
+ # install the wwwoffled init script
+ exeinto /etc/init.d
+ doexe ${FILESDIR}/wwwoffled
+ newexe ${FILESDIR}/wwwoffled-online-${PV} wwwoffled-online
+
+ # keep spool
+ keepdir /var/spool/wwwoffle/{http,outgoing,monitor,lasttime,prevtime[1-9],prevout[1-9],lastout,local}
+
+ fowners root:wwwoffle /var/spool/wwwoffle
+ # empty dirs are removed during update
+ keepdir \
+ /var/spool/wwwoffle/search/{mnogosearch/db,htdig/tmp,htdig/db-lasttime,htdig/db,namazu/db}
+
+ # del empty doc dirs
+ rmdir ${D}/usr/share/doc/${P}/{it,nl,ru}
+
+ chown -R wwwoffle:wwwoffle \
+ ${D}/var/spool/wwwoffle/{http,outgoing,monitor,lasttime,prevtime[1-9],prevout[1-9],lastout,local} \
+ ${D}/var/spool/wwwoffle/search/{mnogosearch/db,htdig/tmp,htdig/db-lasttime,htdig/db,namazu/db}
+
+ dodir /etc/conf.d
+ local config=${D}/etc/conf.d/wwwoffled-online
+ echo -e "\n\n# Enter the interface that connects you to the outside world" >> ${config}
+ echo '# This will correspond to /etc/init.d/net.${IFACE}' >> ${config}
+ echo -e "\n# IMPORTANT: Be sure to run depscan.sh after modifiying IFACE" >> ${config}
+ echo "IFACE=ppp0" >> ${config}
+
+}
+
+pkg_postinst() {
+ # fix permissions for those upgrading
+ chown -R wwwoffle:wwwoffle \
+ ${ROOT}/var/spool/wwwoffle/{http,outgoing,monitor,lasttime,prevtime[1-9],prevout[1-9],lastout,local} \
+ ${ROOT}/var/spool/wwwoffle/search/{mnogosearch/db,htdig/tmp,htdig/db-lasttime,htdig/db,namazu/db}
+
+ chown root:wwwoffle /var/spool/wwwoffle
+ [ -f ${T}/stopped ] && \
+ ewarn "wwwoffled was stopped. /etc/init.d/wwwoffled start to restart AFTER etc-update"
+
+
+ einfo "wwwoffled should run as an ordinary user now. The run-uid and run-gid should be set"
+ einfo "to \"wwwoffle\" in your /etc/wwwoffle.conf. Please uncomment this if it hasn't been already"
+
+ einfo "This is for your own security. Otherwise wwwoffle is run as root which is relay bad if"
+ einfo "there is an exploit in this program that allows remote/local users to execute arbitary"
+ einfo "commands as the root user."
+
+}