summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Cafarelli <voyageur@gentoo.org>2010-01-12 15:00:03 +0000
committerBernard Cafarelli <voyageur@gentoo.org>2010-01-12 15:00:03 +0000
commitdb5f82845b98deb6670ab7ca695e4c1fa51de5fe (patch)
treef773f5f217ba8bd72bb1c1a9df0262fd7941b3bb /gnustep-apps
parentUpdate sope from bug #295634 (diff)
downloadgnustep-db5f82845b98deb6670ab7ca695e4c1fa51de5fe.tar.gz
gnustep-db5f82845b98deb6670ab7ca695e4c1fa51de5fe.tar.bz2
gnustep-db5f82845b98deb6670ab7ca695e4c1fa51de5fe.zip
Update sogo from bug #295636, fix metadata
svn path=/overlay/; revision=425
Diffstat (limited to 'gnustep-apps')
-rw-r--r--gnustep-apps/sogo/ChangeLog11
-rw-r--r--gnustep-apps/sogo/Manifest6
-rw-r--r--gnustep-apps/sogo/files/sogo.initd23
-rw-r--r--gnustep-apps/sogo/files/sogod.initd74
-rw-r--r--gnustep-apps/sogo/metadata.xml13
-rw-r--r--gnustep-apps/sogo/sogo-1.1.0-r1.ebuild110
-rw-r--r--gnustep-apps/sogo/sogo-1.1.0.ebuild97
7 files changed, 212 insertions, 122 deletions
diff --git a/gnustep-apps/sogo/ChangeLog b/gnustep-apps/sogo/ChangeLog
new file mode 100644
index 0000000..4aa66f1
--- /dev/null
+++ b/gnustep-apps/sogo/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for gnustep-apps/sogo
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*sogo-1.1.0-r1 (12 Jan 2010)
+
+ 12 Jan 2010; <bernard@gentoo.org> -sogo-1.1.0.ebuild,
+ +sogo-1.1.0-r1.ebuild, -files/sogo.initd, +files/sogod.initd,
+ +metadata.xml:
+ Create ChangeLog to keep tracks of things, new ebuild from bug #295636
+
diff --git a/gnustep-apps/sogo/Manifest b/gnustep-apps/sogo/Manifest
index 45407e4..5aaae07 100644
--- a/gnustep-apps/sogo/Manifest
+++ b/gnustep-apps/sogo/Manifest
@@ -1,3 +1,5 @@
-AUX sogo.initd 468 RMD160 64eae15e9f17a267ec024391f5fb59c16c78a4fe SHA1 4b285e65e92bf6eea5b22c30265e67e959841573 SHA256 96f96f331e33904022e825404ac88fe0cdde9c3f05c9573b8140bee7325113b3
+AUX sogod.initd 1763 RMD160 9b68d4650cf5aacab5e9896193e1d8a18613458e SHA1 c852e81ded69911c359ac5a551414afc119b26b2 SHA256 3f1a6764a7c2ae47080e916fadfcb2139e0a237d3ee8cd1257a5e024a090ee59
DIST SOGo-1.1.0.tar.gz 3613661 RMD160 b6fd66c0825f34e3fbc12d23c9b8c144a5b9cd65 SHA1 0e19f79fd764e9deba14a6346636b7ee86832014 SHA256 950e1a954d8905e187e09336893c50b3c7a16de42ada5c50932766974d5e7a13
-EBUILD sogo-1.1.0.ebuild 2585 RMD160 b266e6ca93693ba7ef460554a2f9a33967c10cf3 SHA1 40ddc8e291e6283de0425a649c141570f91520b1 SHA256 62779d6b36bfd1272394d1107ff6f287809a83a428294be95c8d5db7ede30880
+EBUILD sogo-1.1.0-r1.ebuild 4688 RMD160 5445917f64c96349c6a8b07384b45dc8160ebdef SHA1 2e3beafc69634633202481055deb082b8353f117 SHA256 71157c00fafce2d16907f897286dd5a9182e411544de560a9dfdee793a4ed07d
+MISC ChangeLog 359 RMD160 fd68b09bedc7b556db57c0d68b97cef27723e1c2 SHA1 c5a285e2a64f3da03ebc9b6bf412277ad12e555c SHA256 b27418cd71193c7cffa5e73f19231cb2c9f372703c58d2ab880ef68d06139ec8
+MISC metadata.xml 793 RMD160 e5e134c336e1294210a98e7ecdf2182b3548eedb SHA1 e168a20cbcf7834b5f9bdd68b5e85b6202f72c35 SHA256 a48efb3457db158cb5420394060ae92c2d3b232a4f01e804e903b1154f80560b
diff --git a/gnustep-apps/sogo/files/sogo.initd b/gnustep-apps/sogo/files/sogo.initd
deleted file mode 100644
index 766b37f..0000000
--- a/gnustep-apps/sogo/files/sogo.initd
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/sbin/runscript
-# Copyright 1999-2009 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-depend() {
- need net
- after postgresql
-}
-
-start() {
- ebegin "Starting SOGo service"
- start-stop-daemon --start --exec /usr/GNUstep/System/Tools/Admin/sogod \
- --chuid sogo -m -b --pidfile /var/run/sope.pid
- eend $?
-}
-
-stop() {
- ebegin "Stopping SOGo service"
- start-stop-daemon --stop \
- --pidfile /var/run/sope.pid
- eend $?
-}
diff --git a/gnustep-apps/sogo/files/sogod.initd b/gnustep-apps/sogo/files/sogod.initd
new file mode 100644
index 0000000..c370ba4
--- /dev/null
+++ b/gnustep-apps/sogo/files/sogod.initd
@@ -0,0 +1,74 @@
+#!/sbin/runscript
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+sogod_bin=""
+sogod_port=""
+
+depend() {
+ need net
+ after pg_autovacuum postgresql mysql
+ after slapd
+ after mta
+ after memcached
+}
+
+checkconfig() {
+ if [ -f "/etc/GNUstep/GNUstep.conf" ]; then
+ source /etc/GNUstep/GNUstep.conf
+ else
+ eerror "Can't find /etc/GNUstep/GNUstep.conf"
+ return 1
+ fi
+ if [ -x "${HOME}/${GNUSTEP_USER_DIR_ADMIN_TOOLS}/sogod" ]; then
+ sogod_bin="${HOME}/${GNUSTEP_USER_DIR_ADMIN_TOOLS}/sogod"
+ elif [ -x "${GNUSTEP_LOCAL_ADMIN_TOOLS}/sogod" ]; then
+ sogod_bin="${GNUSTEP_LOCAL_ADMIN_TOOLS}/sogod"
+ elif [ -x "${GNUSTEP_SYSTEM_ADMIN_TOOLS}/sogod" ]; then
+ sogod_bin="${GNUSTEP_SYSTEM_ADMIN_TOOLS}/sogod"
+ elif [ -x "${GNUSTEP_NETWORK_ADMIN_TOOLS}/sogod" ]; then
+ sogod_bin="${GNUSTEP_SYSTEM_ADMIN_TOOLS}/sogod"
+ else
+ eerror "Can't find sogod"
+ return 1
+ fi
+ if [ -f "${GNUSTEP_MAKEFILES}/GNUstep.sh" ]; then
+ source "${GNUSTEP_MAKEFILES}/GNUstep.sh"
+ else
+ eerror "Can't find ${GNUSTEP_MAKEFILES}/GNUstep.sh"
+ return 1
+ fi
+ sogod_port="$(defaults -u sogo read sogod WOPort 2>/dev/null)"
+ if [ "${?}" -eq 0 ]; then
+ sogod_port="${sogod_port##* }"
+ if [ "$((${sogod_port}+1-1))" != "${sogod_port}" ]; then
+ sogod_port="20000"
+ fi
+ else
+ sogod_port="20000"
+ fi
+ touch /var/log/sogod.log
+ chown sogo /var/log/sogod.log
+}
+
+start() {
+ checkconfig || return 1
+ ebegin "Starting SOGo service"
+ start-stop-daemon \
+ --start \
+ --exec ${sogod_bin} \
+ --chuid sogo \
+ --make-pidfile \
+ --background \
+ --pidfile /var/run/sogod.pid \
+ -- -WOPort ${sogod_port}
+ eend ${?}
+}
+
+stop() {
+ ebegin "Stopping SOGo service"
+ start-stop-daemon --stop \
+ --pidfile /var/run/sogod.pid
+ eend ${?}
+}
diff --git a/gnustep-apps/sogo/metadata.xml b/gnustep-apps/sogo/metadata.xml
new file mode 100644
index 0000000..d71e2ce
--- /dev/null
+++ b/gnustep-apps/sogo/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gnustep</herd>
+ <longdescription>SOGo is groupware server with a focus on scalability and open standards.
+
+SOGo provides a rich AJAX-based Web interface and supports multiple native clients through the use of standard protocols such as CalDAV, CardDAV and GroupDAV.
+
+SOGo is the missing component of your infrastructure; it sits in the middle of your servers to offer your users an uniform and complete interface to access their information. It has been deployed in production environments where thousands of users are involved.</longdescription>
+ <use>
+ <flag name="logrotate">Use <pkg>app-admin/logrotate</pkg> for rotating logs</flag>
+ </use>
+</pkgmetadata>
diff --git a/gnustep-apps/sogo/sogo-1.1.0-r1.ebuild b/gnustep-apps/sogo/sogo-1.1.0-r1.ebuild
new file mode 100644
index 0000000..7297610
--- /dev/null
+++ b/gnustep-apps/sogo/sogo-1.1.0-r1.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=2
+
+inherit gnustep-base
+
+MY_PN="SOGo"
+MY_PV="${PV/_/}"
+
+DESCRIPTION="Groupware server built around OpenGroupware.org and the SOPE application server"
+HOMEPAGE="http://sogo.opengroupware.org/"
+SRC_URI="http://www.scalableogo.org/files/downloads/${MY_PN}/Sources/${MY_PN}-${MY_PV}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="postgres mysql logrotate"
+DEPEND="gnustep-libs/sope[ldap?,mysql?,postgres?]
+ !mysql? ( !postgres? ( virtual/postgresql-base ) )
+ dev-libs/libmemcached
+ ldap? ( net-nds/openldap )"
+RDEPEND="${DEPEND}
+ logrotate? ( app-admin/logrotate )"
+
+S=${WORKDIR}/${MY_PN}-${MY_PV}
+
+pkg_setup() {
+ gnustep-base_pkg_setup
+ local myLDFLAGS="$(gnustep-config --variable=LDFLAGS 2>/dev/null)"
+ if [ -n "${myLDFLAGS}" ] && (echo "${myLDFLAGS}" | grep -q "\-\-a\(dd\|s\)\-needed" 2>/dev/null); then
+ ewarn
+ ewarn "You seem to have compiled GNUstep with custom LDFLAGS:"
+ for foo in $(gnustep-config --variable=LDFLAGS); do
+ ewarn " "${foo}
+ done
+ ewarn
+ ewarn "SOGo is very sensitive regarding custom LDFLAGS. Especially with:"
+ ewarn " --add-needed"
+ ewarn " --as-needed"
+ ewarn
+ ewarn "If your SOGo install does not work as expected then please re-emerge SOGo,"
+ ewarn "SOPE and your GNUstep (base and make) without any LDFLAGS before filing bugs."
+ ewarn
+ fi
+}
+
+src_configure() {
+ egnustep_env
+ ./configure \
+ $(use_enable debug) \
+ $(use_enable debug strip) \
+ $(use_enable ldap ldap-config) \
+ || die "configure failed"
+}
+
+src_test() {
+ # SOGo tends to break horribly if gnustep-make is build with LDFLAGS such as
+ # -Wl,--add-needed or -Wl,--as-needed. So we check here some vital binaries.
+ # Check if Appointments.SOGo, Contacts.SOGo, Mailer.SOGo is correctly build/linked
+ local myAppointmentsLDD=$(ldd -d "${S}"/SoObjects/Appointments/Appointments.SOGo/Appointments 2>&1 | grep "lib\(OGoContentStore\|NG\(Cards\|ObjWeb\|Mime\|Streams\|Extensions\)\|SOGo\|GDL\(Access\|ContentStore\)\|EOControl\|DOM\|SaxObjC\|XmlRpc\)\.so\." | wc -l)
+ local myContactsLDD=$(ldd -d "${S}"/SoObjects/Contacts/Contacts.SOGo/Contacts 2>&1 | grep "lib\(OGoContentStore\|NG\(Cards\|ObjWeb\|Mime\|Streams\|Extensions\)\|SOGo\|GDL\(Access\|ContentStore\)\|EOControl\|DOM\|SaxObjC\|XmlRpc\)\.so\." | wc -l)
+ local myMailerLDD=$(ldd -d "${S}"/SoObjects/Mailer/Mailer.SOGo/Mailer 2>&1 | grep "lib\(OGoContentStore\|NG\(Cards\|ObjWeb\|Mime\|Streams\|Extensions\)\|SOGo\|GDL\(Access\|ContentStore\)\|EOControl\|DOM\|SaxObjC\|XmlRpc\)\.so\." | wc -l)
+ if [ -z "${myAppointmentsLDD}" -o -z "${myContactsLDD}" -o -z "${myMailerLDD}" -o "${myAppointmentsLDD}" != "13" -o "${myContactsLDD}" != "13" -o "${myMailerLDD}" != "13" ]; then
+ ewarn
+ ewarn "This SOGo installtion is not correctly build. Probably you are using"
+ ewarn "LDFLAGS to build SOGo that are not correctly handled in SOGo or you"
+ ewarn "have emerged gnustep-base/gnustep-make with LDFLAGS which are"
+ ewarn "preventing SOGo to link the needed libraries into it's own binaries."
+ ewarn "Please remerge gnustep-base/gnustep-make and/or SOGo with empty LDFLAGS."
+ ewarn
+ die "SOGo build is not complete (Appointments.SOGo, Contacts.SOGo, Mailer.SOGo)"
+ fi
+ # We could do the same for AdministrationUI.SOGo, CommonUI.SOGo, ContactsUI.SOGo,
+ # MailPartViewers.SOGo, MailerUI.SOGo, MainUI.SOGo, SOGoElements.wox and SchedulerUI.SOGo
+ # but if Appointments.SOGo, Contacts.SOGo and Mailer.SOGo are build correctly then the
+ # chance that the others are build/linked correctly is pretty high. So we don't test again.
+}
+
+src_install() {
+ gnustep-base_src_install
+ newinitd "${FILESDIR}"/sogod.initd sogod \
+ || die "Init script installation failed"
+ if use logrotate; then
+ insopts -m644 -o root -g root
+ insinto /etc/logrotate.d
+ newins Scripts/logrotate SOGo || die "Failed to install logrotate.d file"
+ fi
+ newdoc Apache/SOGo.conf SOGo-Apache.conf
+}
+
+pkg_preinst() {
+ enewuser sogo -1 /bin/bash /var/lib/sogo
+}
+
+pkg_postinst() {
+ gnustep-base_pkg_postinst
+ elog
+ elog "Now follow the steps from the SOGo documentation:"
+ elog "http://www.inverse.ca/contributions/sogo/documentation.html#c803"
+ elog "The sogo user home directory is /var/lib/sogo"
+ elog
+ elog "Then you can start/stop sogo with /etc/init.d/sogod"
+ elog
+ elog "If you plan to use SOGo with Apache then please have a look at the"
+ elog "'SOGo-Apache.conf' included in the documentation directory of this"
+ elog "SOGo installation and don't forget to add '-D PROXY' to your"
+ elog "APACHE2_OPTS."
+ elog
+}
diff --git a/gnustep-apps/sogo/sogo-1.1.0.ebuild b/gnustep-apps/sogo/sogo-1.1.0.ebuild
deleted file mode 100644
index 8827b2a..0000000
--- a/gnustep-apps/sogo/sogo-1.1.0.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 1999-2008 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=2
-inherit depend.apache gnustep-base
-
-MY_PN="SOGo"
-MY_PV="${PV/_/}"
-
-DESCRIPTION="groupware server built around OpenGroupware.org and the SOPE application server"
-HOMEPAGE="http://sogo.opengroupware.org/"
-SRC_URI="http://www.inverse.ca/downloads/${MY_PN}/Sources/${MY_PN}-${MY_PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~x86"
-IUSE=""
-
-DEPEND="gnustep-libs/sope[postgres]"
-RDEPEND="${DEPEND}
- dev-db/postgresql"
-need_apache2
-
-S=${WORKDIR}/${MY_PN}-${MY_PV}
-
-src_configure() {
- # Do not use standard src_compile, as ./configure is not standard
- egnustep_env
- ./configure
-}
-
-src_install() {
- gnustep-base_src_install
-
- # Apache configuration file
- dodir "${APACHE_MODULES_CONFDIR}"
- cat <<EOF >"${D}/${APACHE_MODULES_CONFDIR}"/47_sogo.conf
-<IfDefine SOPE>
-LoadModule ngobjweb_module modules/mod_ngobjweb.so
-
-Alias /sogo.woa/WebServerResources/ \
- ${GNUSTEP_SYSTEM_LIBRARY}/SOGo/WebServerResources/
-Alias /SOGo.woa/WebServerResources/ \
- ${GNUSTEP_SYSTEM_LIBRARY}/SOGo/WebServerResources/
-Alias /SOGO.woa/WebServerResources/ \
- ${GNUSTEP_SYSTEM_LIBRARY}/SOGo/WebServerResources/
-
-AliasMatch /SOGo/so/ControlPanel/Products/(.*)/Resources/(.*) \
- ${GNUSTEP_SYSTEM_LIBRARY}/SOGo/\$1.SOGo/Resources/\$2
-
-<LocationMatch "^/SOGo*">
- AddDefaultCharset UTF-8
- SetHandler ngobjweb-adaptor
- SetAppPort 20000
- Allow from 127.0.0.1
-</LocationMatch>
-
-<LocationMatch "^/SOGo/so/ControlPanel/Products/.*UI/Resources/.*png">
- SetHandler default-handler
-</LocationMatch>
-
-<LocationMatch "^/SOGo/so/ControlPanel/Products/.*UI/Resources/.*gif">
- SetHandler default-handler
-</LocationMatch>
-
-<LocationMatch "^/SOGo/so/ControlPanel/Products/.*UI/Resources/.*css">
- SetHandler default-handler
-</LocationMatch>
-
-<LocationMatch "^/SOGo/so/ControlPanel/Products/.*UI/Resources/.*js">
- SetHandler default-handler
-</LocationMatch>
-
-</IfDefine>
-EOF
-
- # Init script
- newinitd "${FILESDIR}"/sogo.initd sogo \
- || die "Init script installation failed"
-}
-
-pkg_preinst() {
- enewuser sogo -1 /bin/bash /var/lib/sogo
-}
-
-pkg_postinst() {
- gnustep-base_pkg_postinst
-
- elog "Do not forget to enable the sope module in /etc/apache2/httpd.conf"
- elog "Now follow the steps from the SOGo documentation, Configuration section:"
- elog "http://www.inverse.ca/contributions/sogo/documentation.html#c803"
- elog "The default port configured for sogo is 20000 (from 47_sogo.conf)"
- elog "The sogo user home directory is /var/lib/sogo"
- elog ""
- elog "Then you can start/stop sogo with /etc/init.d/sogo"
-}