summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-zope/zope/zope-3.2.2.ebuild')
-rw-r--r--net-zope/zope/zope-3.2.2.ebuild124
1 files changed, 124 insertions, 0 deletions
diff --git a/net-zope/zope/zope-3.2.2.ebuild b/net-zope/zope/zope-3.2.2.ebuild
new file mode 100644
index 000000000000..0acb4b2d4943
--- /dev/null
+++ b/net-zope/zope/zope-3.2.2.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-zope/zope/zope-3.2.2.ebuild,v 1.1 2006/10/02 16:27:21 radek Exp $
+
+inherit eutils multilib
+
+DESCRIPTION="Zope is a web application platform used for building high-performance, dynamic web sites"
+HOMEPAGE="http://www.zope.org"
+SRC_URI="http://www.zope.org/Products/Zope3/${PV}/Zope-${PV}.tgz"
+
+LICENSE="ZPL"
+SLOT="${PV}"
+KEYWORDS="~sparc ~x86"
+IUSE=""
+
+RDEPEND="=dev-lang/python-2.4*"
+DEPEND="${RDEPEND}
+ >=app-shells/bash-2.0
+ >=sys-apps/sed-4.0.5"
+
+S=${WORKDIR}/Zope-${PV}
+
+ZUNAME=zope
+ZGNAME=zope
+
+ZS_DIR=${ROOT%/}/usr/$(get_libdir)
+ZSERVDIR=${ZS_DIR}/${P}
+ZSKELDIR=${ZSERVDIR}/zopeskel
+ZINSTDIR=/var/lib/zope/${P}
+
+src_compile() {
+
+ cd ${S}
+
+ ./configure --prefix=${D}${ZSERVDIR} --with-python=/usr/bin/python2.4 || die "Failed to configure."
+ emake || die "Failed to compile."
+}
+
+src_install() {
+
+ cd ${S}
+
+ dodoc README.txt
+ dodoc Zope/doc/*.txt
+ for DIR in schema security skins style zcml zsync
+ do
+ docinto ${DIR}
+ dodoc Zope/doc/${DIR}/*
+ done
+
+ make install prefix=${D}${ZSERVDIR}
+
+ dosym ../../share/doc/${PF} ${ZSERVDIR}/doc
+
+ # copy the init script skeleton to zopeskel directory of our installation
+ cp ${FILESDIR}/zope.initd ${D}${ZSKELDIR}/zope.initd
+}
+
+pkg_postinst() {
+ # create the zope user and group for backward compatibility
+ enewgroup ${ZGNAME} 261
+ usermod -g ${ZGNAME} -c "Zope Admin User" -d /var/lib/zope -s /bin/bash ${ZUNAME} 2>&1 >/dev/null || \
+ enewuser ${ZUNAME} 261 /bin/bash /var/lib/zope ${ZGNAME} -c "Zope Admin User"
+
+ einfo "This release can create a default instance using the command: "
+ einfo " emerge --config =${PF}"
+ einfo "Instance (${P}) will be created in ${ZINSTDIR} as its home."
+ einfo "System uid/gid for instance will be: ${ZUNAME}:${ZGNAME}"
+}
+
+pkg_prerm() {
+
+ find ${ZSERVDIR}/lib/python -name \*.py[co] -exec rm -f {} \;
+}
+
+pkg_postrm() {
+
+ rmdir /usr/$(get_libdir)/${ZSERVDIR} 2>/dev/null
+ ewarn "Instances created for this package are NOT automaticaly deleted!"
+ ewarn "Inspect these locations and manually remove them (if needed):"
+ ewarn " /etc/init.d/${P}"
+ ewarn " ${ZINSTDIR}"
+}
+
+pkg_config() {
+
+ if [ -f /etc/init.d/${P} -o -d ${ZINSTDIR} ]
+ then
+ ewarn "Default instance already exists, aborting.."
+ ewarn "Please delete first /etc/init.d/${P} and ${ZINSTDIR}"
+ die "Failed to create default instance."
+ fi
+
+ mkdir -p ${ZINSTDIR}
+ einfo "Instance ${P} creation, calling mkzopeinstance.."
+ ${ZSERVDIR}/bin/mkzopeinstance --non-interactive -d ${ZINSTDIR} -u admin:admin
+
+ # bug in zope
+ einfo "Patching ${ZINSTDIR}/etc/zdaemon.conf"
+ sed -i -e 's|daemon on|daemon on\n\n # socket has to be defined inside of instance\n socket-name $INSTANCE/var/zdsock|' ${ZINSTDIR}/etc/zdaemon.conf
+
+ # remove unnecessary zope.initd
+ rm -f ${ZINSTDIR}/zope.initd
+
+ # log symlink
+ rm -rf ${ZINSTDIR}/log
+ mkdir -p /var/log/zope/${PN}
+ ln -s /var/log/zope/${PN} ${ZINSTDIR}/log
+
+ # permissions changes
+ chmod go-rwx -R ${ZINSTDIR}
+ chown ${ZUNAME}:${ZGNAME} -R ${ZINSTDIR} /var/log/zope/${PN}
+
+ cp ${ZSKELDIR}/zope.initd /etc/init.d/${P}
+ chmod 755 /etc/init.d/${P}
+ sed -i -e "s|INSTANCE_HOME|${ZINSTDIR}|" /etc/init.d/${P}
+ sed -i -e "s|zopectl|zopectl -u ${ZUNAME}|" /etc/init.d/${P}
+
+ einfo "Default instance created at ${ZINSTDIR}"
+ einfo "Created default zope user 'admin' with password 'admin'."
+ einfo "System uid/gid for instance is: ${ZUNAME}:${ZGNAME}."
+ einfo "To start instance (default ports 8080,8021) use: /etc/init.d/${P} start"
+ einfo "To start instance on every restart use: rc-update -a ${P} default"
+}