summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com>2012-09-11 11:48:48 (GMT)
committerJeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com>2012-09-11 11:48:48 (GMT)
commited30bbeba26b0c39f075a4d10c9d38869cf9b123 (patch)
tree2767c7b3ca299b5e2142215ef7c740f75579fda7
parent348c0d5d9ba9e18abbd498900cca3bc6f4999e13 (diff)
parentd325046dce339333c1fd5de176eb839eb54fb7fa (diff)
downloadkolab-scripts-ed30bbeba26b0c39f075a4d10c9d38869cf9b123.tar.gz
Merge branch 'master' of ssh://git.kolab.org/git/kolab-scripts
Conflicts: package-version-matrix/package-versions-matrix.sh
-rwxr-xr-x00-allow-anonymous-bind.sh11
-rwxr-xr-x00-disallow-anonymous-bind.sh11
-rwxr-xr-xcleanup-and-start-over.sh21
-rwxr-xr-xhosted-kolab/01-add-hosted-kolab-service-account.sh16
-rwxr-xr-xhosted-kolab/02-allow-hosted-kolab-service-account-to-list-domains.sh11
-rwxr-xr-xhosted-kolab/03-prevent-hosted-kolab-service-account-from-reading-domain.sh18
-rwxr-xr-xhosted-kolab/04-add-kolab-hosting-section.sh14
-rw-r--r--hosted-kolab/05-add-kolabsys.com.sh0
-rw-r--r--hosted-kolab/06-add-demo.kolab.org.sh0
-rw-r--r--hosted-kolab/07-add-kolab.org.sh0
-rwxr-xr-xhosted-kolab/08-restrict-access-to-new-domains.sh5
-rwxr-xr-xhosted-kolab/09-allow-add-users-by-hosted-kolab-service-account.sh11
-rwxr-xr-xhosted-kolab/10-add-initial-admin-user-to-domain.sh52
-rwxr-xr-xhosted-kolab/11-add-domain-sections.sh202
-rwxr-xr-xhosted-kolab/12-update-mysql-table-for-hosted.sh12
l---------hosted-kolab/settings.sh1
-rwxr-xr-xpackage-version-matrix/package-versions-matrix.sh275
-rwxr-xr-xsettings.sh3
18 files changed, 545 insertions, 118 deletions
diff --git a/00-allow-anonymous-bind.sh b/00-allow-anonymous-bind.sh
new file mode 100755
index 0000000..d96748f
--- /dev/null
+++ b/00-allow-anonymous-bind.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+ . ./settings.sh
+
+(
+ echo "dn: cn=config"
+ echo "changetype: modify"
+ echo "replace: nsslapd-allow-anonymous-access"
+ echo "nsslapd-allow-anonymous-access: on"
+ echo ""
+) | ldapmodify -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}"
diff --git a/00-disallow-anonymous-bind.sh b/00-disallow-anonymous-bind.sh
new file mode 100755
index 0000000..8ec0f94
--- /dev/null
+++ b/00-disallow-anonymous-bind.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+ . ./settings.sh
+
+(
+ echo "dn: cn=config"
+ echo "changetype: modify"
+ echo "replace: nsslapd-allow-anonymous-access"
+ echo "nsslapd-allow-anonymous-access: off"
+ echo ""
+) | ldapmodify -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}"
diff --git a/cleanup-and-start-over.sh b/cleanup-and-start-over.sh
new file mode 100755
index 0000000..c22fb50
--- /dev/null
+++ b/cleanup-and-start-over.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+yum -y remove 389\* cyrus-imapd\* postfix\* mysql-server\* roundcube\* pykolab\*
+
+rm -rvf \
+ /etc/dirsrv \
+ /etc/kolab/kolab.conf \
+ /etc/postfix \
+ /usr/lib64/dirsrv \
+ /usr/share/dirsrv \
+ /var/cache/dirsrv \
+ /var/lib/dirsrv \
+ /var/lib/imap \
+ /var/lib/kolab \
+ /var/lib/mysql \
+ /var/spool/imap \
+ /var/spool/postfix
+
+yum clean metadata
+yum -y install kolab
+
diff --git a/hosted-kolab/01-add-hosted-kolab-service-account.sh b/hosted-kolab/01-add-hosted-kolab-service-account.sh
new file mode 100755
index 0000000..6af577f
--- /dev/null
+++ b/hosted-kolab/01-add-hosted-kolab-service-account.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+ . ./settings.sh
+(
+ echo "dn: uid=hosted-kolab-service,ou=Special Users,${rootdn}"
+ echo "objectclass: top"
+ echo "objectclass: inetorgperson"
+ echo "objectclass: person"
+ echo "uid: hosted-kolab-service"
+ echo "cn: Hosted Kolab Service Account"
+ echo "sn: Service Account"
+ echo "givenname: Hosted Kolab"
+ echo "userpassword: ${hosted_kolab_service_pw}"
+ echo ""
+) | ldapadd -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}"
+
diff --git a/hosted-kolab/02-allow-hosted-kolab-service-account-to-list-domains.sh b/hosted-kolab/02-allow-hosted-kolab-service-account-to-list-domains.sh
new file mode 100755
index 0000000..3b20b7c
--- /dev/null
+++ b/hosted-kolab/02-allow-hosted-kolab-service-account-to-list-domains.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+ . ./settings.sh
+
+(
+ echo "dn: cn=kolab,cn=config"
+ echo "changetype: modify"
+ echo "add: aci"
+ echo "aci: (targetattr = \"*\") (version 3.0;acl \"Hosted Kolab Services\";allow (read,compare,search)(userdn = \"ldap:///uid=hosted-kolab-service,ou=Special Users,${rootdn}\");)"
+ echo ""
+) | ldapmodify -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}"
diff --git a/hosted-kolab/03-prevent-hosted-kolab-service-account-from-reading-domain.sh b/hosted-kolab/03-prevent-hosted-kolab-service-account-from-reading-domain.sh
new file mode 100755
index 0000000..26856e9
--- /dev/null
+++ b/hosted-kolab/03-prevent-hosted-kolab-service-account-from-reading-domain.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+
+ . ./settings.sh
+
+if [ $# -ne 1 ]; then
+ domain_to_lock=${domain}
+else
+ domain_to_lock=$1
+fi
+
+(
+ echo "dn: associateddomain=${domain_to_lock},cn=kolab,cn=config"
+ echo "changetype: modify"
+ echo "add: aci"
+ echo "aci: (targetattr = \"*\") (version 3.0;acl \"Hosted Kolab Services\";deny (read,search)(userdn = \"ldap:///uid=hosted-kolab-service,ou=Special Users,${rootdn}\");)"
+ echo ""
+) | ldapmodify -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}"
+
diff --git a/hosted-kolab/04-add-kolab-hosting-section.sh b/hosted-kolab/04-add-kolab-hosting-section.sh
new file mode 100755
index 0000000..9a6ac27
--- /dev/null
+++ b/hosted-kolab/04-add-kolab-hosting-section.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+
+ . ./settings.sh
+
+(
+ echo ""
+ echo "[kolab_hosting]"
+ echo "primary_domain = demo.kolab.org"
+ echo "bind_dn = uid=hosted-kolab-service,ou=Special Users,${rootdn}"
+ echo "bind_pw = ${hosted_kolab_service_pw}"
+ echo ""
+) >> /etc/kolab/kolab.conf
+
+sed -r -i -e 's/\[kolab_wap\]/[kolab_wap]\ndevel_mode = 1\ndebug_mode = trace/g' /etc/kolab/kolab.conf
diff --git a/hosted-kolab/05-add-kolabsys.com.sh b/hosted-kolab/05-add-kolabsys.com.sh
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/hosted-kolab/05-add-kolabsys.com.sh
diff --git a/hosted-kolab/06-add-demo.kolab.org.sh b/hosted-kolab/06-add-demo.kolab.org.sh
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/hosted-kolab/06-add-demo.kolab.org.sh
diff --git a/hosted-kolab/07-add-kolab.org.sh b/hosted-kolab/07-add-kolab.org.sh
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/hosted-kolab/07-add-kolab.org.sh
diff --git a/hosted-kolab/08-restrict-access-to-new-domains.sh b/hosted-kolab/08-restrict-access-to-new-domains.sh
new file mode 100755
index 0000000..0429d2f
--- /dev/null
+++ b/hosted-kolab/08-restrict-access-to-new-domains.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+./03-prevent-hosted-kolab-service-account-from-reading-domain.sh kolabsys.com
+./03-prevent-hosted-kolab-service-account-from-reading-domain.sh kolab.org
+
diff --git a/hosted-kolab/09-allow-add-users-by-hosted-kolab-service-account.sh b/hosted-kolab/09-allow-add-users-by-hosted-kolab-service-account.sh
new file mode 100755
index 0000000..0cfad05
--- /dev/null
+++ b/hosted-kolab/09-allow-add-users-by-hosted-kolab-service-account.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+ . ./settings.sh
+
+(
+ echo "dn: ou=People,${hosted_domain_rootdn}"
+ echo "changetype: modify"
+ echo "add: aci"
+ echo "aci: (targetattr = \"*\") (version 3.0;acl \"Hosted Kolab Services\";allow (all)(userdn = \"ldap:///uid=hosted-kolab-service,ou=Special Users,${rootdn}\");)"
+ echo ""
+) | ldapmodify -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}"
diff --git a/hosted-kolab/10-add-initial-admin-user-to-domain.sh b/hosted-kolab/10-add-initial-admin-user-to-domain.sh
new file mode 100755
index 0000000..4d01b32
--- /dev/null
+++ b/hosted-kolab/10-add-initial-admin-user-to-domain.sh
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+ . ./settings.sh
+
+(
+ echo "dn: uid=admin,ou=People,dc=kolabsys,dc=com"
+ echo "objectclass: top"
+ echo "objectclass: inetorgperson"
+ echo "objectclass: person"
+ echo "uid: admin"
+ echo "cn: Temporary Administrator"
+ echo "sn: Administrator"
+ echo "givenname: Temporary"
+ echo "displayname: Temporary Administrator"
+ echo "mail: admin@kolabsys.com"
+ echo "nsroledn: cn=kolab-admin,dc=kolabsys,dc=com"
+ echo "userpassword: ${ldap_bindpw}"
+ echo ""
+) | ldapadd -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}"
+
+(
+ echo "dn: uid=admin,ou=People,dc=kolab,dc=org"
+ echo "objectclass: top"
+ echo "objectclass: inetorgperson"
+ echo "objectclass: person"
+ echo "uid: admin"
+ echo "cn: Temporary Administrator"
+ echo "sn: Administrator"
+ echo "givenname: Temporary"
+ echo "displayname: Temporary Administrator"
+ echo "mail: admin@kolab.org"
+ echo "nsroledn: cn=kolab-admin,dc=kolab,dc=org"
+ echo "userpassword: ${ldap_bindpw}"
+ echo ""
+) | ldapadd -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}"
+
+(
+ echo "dn: uid=admin,ou=People,dc=demo,dc=kolab,dc=org"
+ echo "objectclass: top"
+ echo "objectclass: inetorgperson"
+ echo "objectclass: person"
+ echo "uid: admin"
+ echo "cn: Temporary Administrator"
+ echo "sn: Administrator"
+ echo "givenname: Temporary"
+ echo "displayname: Temporary Administrator"
+ echo "mail: admin@demo.kolab.org"
+ echo "nsroledn: cn=kolab-admin,dc=demo,dc=kolab,dc=org"
+ echo "userpassword: ${ldap_bindpw}"
+ echo ""
+) | ldapadd -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}"
+
diff --git a/hosted-kolab/11-add-domain-sections.sh b/hosted-kolab/11-add-domain-sections.sh
new file mode 100755
index 0000000..8692036
--- /dev/null
+++ b/hosted-kolab/11-add-domain-sections.sh
@@ -0,0 +1,202 @@
+cat >>/etc/kolab/kolab.conf<<EOF
+[demo.kolab.org]
+base_dn = dc=demo,dc=kolab,dc=org
+user_base_dn = ou=People,%(base_dn)s
+personal_user_base_dn = ou=People,%(base_dn)s
+professional_user_base_dn = ou=People,%(base_dn)s
+primary_mail = %(uid)s@(domain)s
+autocreate_folders = {
+ 'Calendar': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "event.default",
+ '/shared/vendor/kolab/folder-type': "event",
+ },
+ },
+ 'Configuration': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "configuration.default",
+ '/shared/vendor/kolab/folder-type': "configuration.default",
+ },
+ },
+ 'Drafts': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.drafts",
+ },
+ },
+ 'Contacts': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "contact.default",
+ '/shared/vendor/kolab/folder-type': "contact",
+ },
+ },
+ 'Journal': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "journal.default",
+ '/shared/vendor/kolab/folder-type': "journal",
+ },
+ },
+ 'Notes': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': 'note.default',
+ '/shared/vendor/kolab/folder-type': 'note',
+ },
+ },
+ 'Sent': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.sentitems",
+ },
+ },
+ 'Spam': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.junkemail",
+ },
+ },
+ 'Tasks': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "task.default",
+ '/shared/vendor/kolab/folder-type': "task",
+ },
+ },
+ 'Trash': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.trash",
+ },
+ },
+ }
+default_quota = 1048576
+
+[kolabsys.com]
+primary_mail = %(uid)s@(domain)s
+autocreate_folders = {
+ 'Calendar': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "event.default",
+ '/shared/vendor/kolab/folder-type': "event",
+ },
+ },
+ 'Configuration': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "configuration.default",
+ '/shared/vendor/kolab/folder-type': "configuration.default",
+ },
+ },
+ 'Drafts': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.drafts",
+ },
+ },
+ 'Contacts': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "contact.default",
+ '/shared/vendor/kolab/folder-type': "contact",
+ },
+ },
+ 'Journal': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "journal.default",
+ '/shared/vendor/kolab/folder-type': "journal",
+ },
+ },
+ 'Notes': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': 'note.default',
+ '/shared/vendor/kolab/folder-type': 'note',
+ },
+ },
+ 'Sent': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.sentitems",
+ },
+ },
+ 'Spam': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.junkemail",
+ },
+ },
+ 'Tasks': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "task.default",
+ '/shared/vendor/kolab/folder-type': "task",
+ },
+ },
+ 'Trash': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.trash",
+ },
+ },
+ }
+secondary_mail = {
+ 0: {
+ "{0}.{1}@{2}": "format('%(givenname)s'[0:1].capitalize(), '%(surname)s', '%(domain)s')"
+ },
+ 1: {
+ "{0}@{1}": "format('%(givenname)s.%(surname)s', '%(domain)s')"
+ }
+ }
+default_quota = 1048576
+
+[kolab.org]
+base_dn = dc=kolab,dc=org
+user_base_dn = ou=People,%(base_dn)s
+primary_mail = %(givenname)s.%(surname)s@%(domain)s
+autocreate_folders = {
+ 'Calendar': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "event.default",
+ '/shared/vendor/kolab/folder-type': "event",
+ },
+ },
+ 'Configuration': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "configuration.default",
+ '/shared/vendor/kolab/folder-type': "configuration.default",
+ },
+ },
+ 'Drafts': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.drafts",
+ },
+ },
+ 'Contacts': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "contact.default",
+ '/shared/vendor/kolab/folder-type': "contact",
+ },
+ },
+ 'Journal': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "journal.default",
+ '/shared/vendor/kolab/folder-type': "journal",
+ },
+ },
+ 'Notes': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': 'note.default',
+ '/shared/vendor/kolab/folder-type': 'note',
+ },
+ },
+ 'Sent': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.sentitems",
+ },
+ },
+ 'Spam': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.junkemail",
+ },
+ },
+ 'Tasks': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "task.default",
+ '/shared/vendor/kolab/folder-type': "task",
+ },
+ },
+ 'Trash': {
+ 'annotations': {
+ '/private/vendor/kolab/folder-type': "mail.trash",
+ },
+ },
+ }
+default_quota = 1048576
+EOF
+
diff --git a/hosted-kolab/12-update-mysql-table-for-hosted.sh b/hosted-kolab/12-update-mysql-table-for-hosted.sh
new file mode 100755
index 0000000..f200bf3
--- /dev/null
+++ b/hosted-kolab/12-update-mysql-table-for-hosted.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+ . ./settings.sh
+
+if [ -f "`ls -1 /usr/share/kolab-webadmin/doc/kolab_hosting-*.sql`" ]; then
+ sql_file="`ls -1 /usr/share/kolab-webadmin/doc/kolab_hosting-*.sql`"
+else
+ sql_file="`ls -1 /usr/share/doc/kolab-webadmin-*/kolab_hosting-*.sql`"
+fi
+
+mysql --user=kolab --password=Welcome2KolabSystems kolab < $sql_file
+
diff --git a/hosted-kolab/settings.sh b/hosted-kolab/settings.sh
new file mode 120000
index 0000000..a08eca5
--- /dev/null
+++ b/hosted-kolab/settings.sh
@@ -0,0 +1 @@
+../settings.sh \ No newline at end of file
diff --git a/package-version-matrix/package-versions-matrix.sh b/package-version-matrix/package-versions-matrix.sh
index 413a977..38c6643 100755
--- a/package-version-matrix/package-versions-matrix.sh
+++ b/package-version-matrix/package-versions-matrix.sh
@@ -50,7 +50,7 @@ function version_compare() {
return 0
fi
else
- retval=`dpkg --compare-versions "${wanted_version}" gt "${actual_version}" >/dev/null 2>&1; echo $?`
+ retval=`dpkg --compare-versions "${actual_version}" ge "${wanted_version}" >/dev/null 2>&1; echo $?`
fi
return ${retval}
@@ -85,10 +85,28 @@ if [ -x "$(which repoquery 2>/dev/null)" ]; then
repoquery --source --show-dupes $pkg | tail -n 1; \
done | sort -u > ${package_list_wanted}
elif [ -x "$(which debtree 2>/dev/null)" ]; then
- debtree kolab 2>&1 | \
- grep -E "^\s*\"(.*)\"\s\[" | \
- awk '{print $1}' | \
- sed -e 's/^"//g' -e 's/"$//g' -e '/^alt/d' | sort -u > ${package_list_wanted}
+ for pkg in `debtree --no-recommends --no-alternatives --no-provides kolab 2>&1 | \
+ grep -E "^\s*\"" | \
+ awk '{print $1}' | \
+ sed -e 's/^"//g' -e 's/"$//g' | \
+ sort -u | \
+ grep -v "^Pr_"`; do
+
+ source=$(apt-cache show ${pkg} 2>&1 | grep -E "^Source:" | awk '{print $2}' | sort -u | head -n 1)
+ if [ -z "${source}" ]; then
+ source=${pkg}
+ version=$(apt-cache show ${source} 2>/dev/null | grep "^Version:" | head -n 1 | awk '{print $2}')
+ else
+ version=$(apt-cache showsrc ${source} 2>/dev/null | grep "^Version:" | head -n 1 | awk '{print $2}')
+ fi
+ if [ ! -z "${version}" ]; then
+ echo "${source}-${version}"
+ else
+ continue
+ fi
+ done | sort -u > ${package_list_wanted}
+ echo "Package list wanted: ${package_list_wanted}:"
+ cat ${package_list_wanted}
fi
# Package names (SRPM name) that are in the dependency tree, but that are not
@@ -101,6 +119,8 @@ pkgsni[${#pkgsni[@]}]="adduser";
pkgsni[${#pkgsni[@]}]="alsa-lib";
pkgsni[${#pkgsni[@]}]="altermime";
pkgsni[${#pkgsni[@]}]="amanda";
+pkgsni[${#pkgsni[@]}]="apache";
+pkgsni[${#pkgsni[@]}]="apache2";
pkgsni[${#pkgsni[@]}]="apr";
pkgsni[${#pkgsni[@]}]="apr-util";
pkgsni[${#pkgsni[@]}]="arj";
@@ -129,10 +149,12 @@ pkgsni[${#pkgsni[@]}]="crontabs";
pkgsni[${#pkgsni[@]}]="cryptsetup";
pkgsni[${#pkgsni[@]}]="cups";
pkgsni[${#pkgsni[@]}]="curl";
+pkgsni[${#pkgsni[@]}]="cyrus-sasl2";
pkgsni[${#pkgsni[@]}]="dash";
pkgsni[${#pkgsni[@]}]="db4";
pkgsni[${#pkgsni[@]}]="dbus";
pkgsni[${#pkgsni[@]}]="dbus-glib";
+pkgsni[${#pkgsni[@]}]="debconf";
pkgsni[${#pkgsni[@]}]="debianutils";
pkgsni[${#pkgsni[@]}]="diffutils";
pkgsni[${#pkgsni[@]}]="dpkg";
@@ -177,6 +199,7 @@ pkgsni[${#pkgsni[@]}]="gmp";
pkgsni[${#pkgsni[@]}]="gnupg";
pkgsni[${#pkgsni[@]}]="gnupg2";
pkgsni[${#pkgsni[@]}]="gnutls";
+pkgsni[${#pkgsni[@]}]="gnutls26";
pkgsni[${#pkgsni[@]}]="grep";
pkgsni[${#pkgsni[@]}]="groff";
pkgsni[${#pkgsni[@]}]="grubby";
@@ -185,6 +208,7 @@ pkgsni[${#pkgsni[@]}]="gstreamer";
pkgsni[${#pkgsni[@]}]="gstreamer-plugins-base";
pkgsni[${#pkgsni[@]}]="gtk2";
pkgsni[${#pkgsni[@]}]="gzip";
+pkgsni[${#pkgsni[@]}]="heimdal";
pkgsni[${#pkgsni[@]}]="hesiod";
pkgsni[${#pkgsni[@]}]="hicolor-icon-theme";
pkgsni[${#pkgsni[@]}]="hotplug";
@@ -337,10 +361,12 @@ pkgsni[${#pkgsni[@]}]="libmcrypt";
pkgsni[${#pkgsni[@]}]="libmng";
pkgsni[${#pkgsni[@]}]="libmspack";
pkgsni[${#pkgsni[@]}]="libnet";
+pkgsni[${#pkgsni[@]}]="libnetaddr-ip-perl";
pkgsni[${#pkgsni[@]}]="libnih";
pkgsni[${#pkgsni[@]}]="libogg";
pkgsni[${#pkgsni[@]}]="liboil";
pkgsni[${#pkgsni[@]}]="libpciaccess";
+pkgsni[${#pkgsni[@]}]="libperl4-corelibs-perl";
pkgsni[${#pkgsni[@]}]="libpng";
pkgsni[${#pkgsni[@]}]="libpwquality";
pkgsni[${#pkgsni[@]}]="libselinux";
@@ -348,6 +374,7 @@ pkgsni[${#pkgsni[@]}]="libsemanage";
pkgsni[${#pkgsni[@]}]="libsepol";
pkgsni[${#pkgsni[@]}]="libSM";
pkgsni[${#pkgsni[@]}]="libsndfile";
+pkgsni[${#pkgsni[@]}]="libsocket-getaddrinfo-perl";
pkgsni[${#pkgsni[@]}]="libssh2";
pkgsni[${#pkgsni[@]}]="libtasn1";
pkgsni[${#pkgsni[@]}]="libthai";
@@ -397,6 +424,7 @@ pkgsni[${#pkgsni[@]}]="module-init-tools";
pkgsni[${#pkgsni[@]}]="MySQL-python";
pkgsni[${#pkgsni[@]}]="nc";
pkgsni[${#pkgsni[@]}]="ncurses";
+pkgsni[${#pkgsni[@]}]="netbase";
pkgsni[${#pkgsni[@]}]="net-snmp";
pkgsni[${#pkgsni[@]}]="net-tools";
pkgsni[${#pkgsni[@]}]="newt";
@@ -527,6 +555,8 @@ pkgsni[${#pkgsni[@]}]="psmisc";
pkgsni[${#pkgsni[@]}]="pth";
pkgsni[${#pkgsni[@]}]="pulseaudio";
pkgsni[${#pkgsni[@]}]="python";
+pkgsni[${#pkgsni[@]}]="python2.6";
+pkgsni[${#pkgsni[@]}]="python2.7";
pkgsni[${#pkgsni[@]}]="python-imaging";
pkgsni[${#pkgsni[@]}]="python-IPy";
pkgsni[${#pkgsni[@]}]="python-markdown";
@@ -545,6 +575,7 @@ pkgsni[${#pkgsni[@]}]="sendmail";
pkgsni[${#pkgsni[@]}]="setools";
pkgsni[${#pkgsni[@]}]="setup";
pkgsni[${#pkgsni[@]}]="sgml-common";
+pkgsni[${#pkgsni[@]}]="shadow";
pkgsni[${#pkgsni[@]}]="shadow-utils";
pkgsni[${#pkgsni[@]}]="shared-mime-info";
pkgsni[${#pkgsni[@]}]="sinjdoc";
@@ -562,6 +593,7 @@ pkgsni[${#pkgsni[@]}]="tcp_wrappers";
pkgsni[${#pkgsni[@]}]="texinfo";
pkgsni[${#pkgsni[@]}]="tmpwatch";
pkgsni[${#pkgsni[@]}]="tzdata";
+pkgsni[${#pkgsni[@]}]="ucf";
pkgsni[${#pkgsni[@]}]="udev";
pkgsni[${#pkgsni[@]}]="upstart";
pkgsni[${#pkgsni[@]}]="ustr";
@@ -572,6 +604,7 @@ pkgsni[${#pkgsni[@]}]="which";
pkgsni[${#pkgsni[@]}]="xerces-c";
pkgsni[${#pkgsni[@]}]="xinetd";
pkgsni[${#pkgsni[@]}]="xz";
+pkgsni[${#pkgsni[@]}]="zephyr";
pkgsni[${#pkgsni[@]}]="zip";
pkgsni[${#pkgsni[@]}]="zlib";
@@ -583,7 +616,7 @@ declare -a alt_names
pkg_names[${#pkg_names[@]}]="389-adminutil"; alt_names[${#alt_names[@]}]="libadminutil0";
pkg_names[${#pkg_names[@]}]="clamav"; alt_names[${#alt_names[@]}]="clamav-server";
-pkg_names[${#pkg_names[@]}]="cyrus-imapd"; alt_names[${#alt_names[@]}]="cyrus23-common cyrus22-common cyrus21-common cyrus-imapd-2.2";
+pkg_names[${#pkg_names[@]}]="cyrus-imapd"; alt_names[${#alt_names[@]}]="cyrus23-common cyrus22-common cyrus21-common cyrus-imapd-2.2 cyrus-imapd-2.3 cyrus-imapd-2.4";
pkg_names[${#pkg_names[@]}]="cyrus-sasl"; alt_names[${#alt_names[@]}]="cyrus-sasl-lib libsasl2-2";
pkg_names[${#pkg_names[@]}]="dimp"; alt_names[${#alt_names[@]}]="dimp1";
pkg_names[${#pkg_names[@]}]="gnutls"; alt_names[${#alt_names[@]}]="gnutls0 gnutls0.4";
@@ -610,26 +643,100 @@ pkg_names[${#pkg_names[@]}]="php-channel-PHPUnit"; alt_names[${
pkg_names[${#pkg_names[@]}]="php-pear-Auth-SASL"; alt_names[${#alt_names[@]}]="php-auth-sasl"
pkg_names[${#pkg_names[@]}]="php-pear-Cache"; alt_names[${#alt_names[@]}]="php-cache"
pkg_names[${#pkg_names[@]}]="php-pear-Console-Table"; alt_names[${#alt_names[@]}]="php-console-table"
-pkg_names[${#pkg_names[@]}]="php-pear-Date"; alt_names[${#alt_names[@]}]="php-date"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays"; alt_names[${#alt_names[@]}]="php-date-holidays"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Austria"; alt_names[${#alt_names[@]}]="php-date-holidays-austria"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Brazil"; alt_names[${#alt_names[@]}]="php-date-holidays-brazil"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Denmark"; alt_names[${#alt_names[@]}]="php-date-holidays-denmark"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Discordian"; alt_names[${#alt_names[@]}]="php-date-holidays-discordian"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-EnglandWales"; alt_names[${#alt_names[@]}]="php-date-holidays-englandwales"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Germany"; alt_names[${#alt_names[@]}]="php-date-holidays-germany"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Iceland"; alt_names[${#alt_names[@]}]="php-date-holidays-iceland"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Ireland"; alt_names[${#alt_names[@]}]="php-date-holidays-ireland"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Italy"; alt_names[${#alt_names[@]}]="php-date-holidays-italy"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Japan"; alt_names[${#alt_names[@]}]="php-date-holidays-japan"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Netherlands"; alt_names[${#alt_names[@]}]="php-date-holidays-netherlands"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Norway"; alt_names[${#alt_names[@]}]="php-date-holidays-norway"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Romania"; alt_names[${#alt_names[@]}]="php-date-holidays-romania"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Slovenia"; alt_names[${#alt_names[@]}]="php-date-holidays-slovenia"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Sweden"; alt_names[${#alt_names[@]}]="php-date-holidays-sweden"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Ukraine"; alt_names[${#alt_names[@]}]="php-date-holidays-ukraine"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-UNO"; alt_names[${#alt_names[@]}]="php-date-holidays-uno"
-pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-USA"; alt_names[${#alt_names[@]}]="php-date-holidays-usa"
+
+if [ "${kolab_version}" == "2.4" ]; then
+ pkg_names[${#pkg_names[@]}]="php-pear-Date"; alt_names[${#alt_names[@]}]="php-date"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays"; alt_names[${#alt_names[@]}]="php-date-holidays"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Austria"; alt_names[${#alt_names[@]}]="php-date-holidays-austria"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Brazil"; alt_names[${#alt_names[@]}]="php-date-holidays-brazil"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Denmark"; alt_names[${#alt_names[@]}]="php-date-holidays-denmark"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Discordian"; alt_names[${#alt_names[@]}]="php-date-holidays-discordian"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-EnglandWales"; alt_names[${#alt_names[@]}]="php-date-holidays-englandwales"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Germany"; alt_names[${#alt_names[@]}]="php-date-holidays-germany"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Iceland"; alt_names[${#alt_names[@]}]="php-date-holidays-iceland"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Ireland"; alt_names[${#alt_names[@]}]="php-date-holidays-ireland"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Italy"; alt_names[${#alt_names[@]}]="php-date-holidays-italy"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Japan"; alt_names[${#alt_names[@]}]="php-date-holidays-japan"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Netherlands"; alt_names[${#alt_names[@]}]="php-date-holidays-netherlands"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Norway"; alt_names[${#alt_names[@]}]="php-date-holidays-norway"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Romania"; alt_names[${#alt_names[@]}]="php-date-holidays-romania"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Slovenia"; alt_names[${#alt_names[@]}]="php-date-holidays-slovenia"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Sweden"; alt_names[${#alt_names[@]}]="php-date-holidays-sweden"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-Ukraine"; alt_names[${#alt_names[@]}]="php-date-holidays-ukraine"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-UNO"; alt_names[${#alt_names[@]}]="php-date-holidays-uno"
+ pkg_names[${#pkg_names[@]}]="php-pear-Date-Holidays-USA"; alt_names[${#alt_names[@]}]="php-date-holidays-usa"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Alarm"; alt_names[${#alt_names[@]}]="php-horde-alarm"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Argv"; alt_names[${#alt_names[@]}]="php-horde-argv"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Auth"; alt_names[${#alt_names[@]}]="php-horde-auth"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Block"; alt_names[${#alt_names[@]}]="php-horde-block"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Browser"; alt_names[${#alt_names[@]}]="php-horde-browser"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Cache"; alt_names[${#alt_names[@]}]="php-horde-cache"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Cipher"; alt_names[${#alt_names[@]}]="php-horde-cipher"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-CLI"; alt_names[${#alt_names[@]}]="php-horde-cli"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Compress"; alt_names[${#alt_names[@]}]="php-horde-compress"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Crypt"; alt_names[${#alt_names[@]}]="php-horde-crypt"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-DataTree"; alt_names[${#alt_names[@]}]="php-horde-datatree"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Date"; alt_names[${#alt_names[@]}]="php-horde-date"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-DOM"; alt_names[${#alt_names[@]}]="php-horde-dom"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Editor"; alt_names[${#alt_names[@]}]="php-horde-editor"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Feed"; alt_names[${#alt_names[@]}]="php-horde-feed"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-File_CSV"; alt_names[${#alt_names[@]}]="php-horde-file_csv"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-File_PDF"; alt_names[${#alt_names[@]}]="php-horde-file_pdf"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Form"; alt_names[${#alt_names[@]}]="php-horde-form"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Framework"; alt_names[${#alt_names[@]}]="php-horde-framework"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Group"; alt_names[${#alt_names[@]}]="php-horde-group"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-History"; alt_names[${#alt_names[@]}]="php-horde-history"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Http_Client"; alt_names[${#alt_names[@]}]="php-horde-http_client"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-iCalendar"; alt_names[${#alt_names[@]}]="php-horde-icalendar"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Identity"; alt_names[${#alt_names[@]}]="php-horde-identity"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Image"; alt_names[${#alt_names[@]}]="php-horde-image"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-IMAP"; alt_names[${#alt_names[@]}]="php-horde-imap"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Kolab"; alt_names[${#alt_names[@]}]="php-horde-kolab"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-LDAP"; alt_names[${#alt_names[@]}]="php-horde-ldap"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Loader"; alt_names[${#alt_names[@]}]="php-horde-loader"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Lock"; alt_names[${#alt_names[@]}]="php-horde-lock"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Log"; alt_names[${#alt_names[@]}]="php-horde-log"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Maintenance"; alt_names[${#alt_names[@]}]="php-horde-maintenance"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-MIME"; alt_names[${#alt_names[@]}]="php-horde-mime"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Mobile"; alt_names[${#alt_names[@]}]="php-horde-mobile"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Net_SMS"; alt_names[${#alt_names[@]}]="php-horde-net_sms"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-NLS"; alt_names[${#alt_names[@]}]="php-horde-nls"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Notification"; alt_names[${#alt_names[@]}]="php-horde-notification"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Perms"; alt_names[${#alt_names[@]}]="php-horde-perms"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Prefs"; alt_names[${#alt_names[@]}]="php-horde-prefs"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-RPC"; alt_names[${#alt_names[@]}]="php-horde-rpc"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Secret"; alt_names[${#alt_names[@]}]="php-horde-secret"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Serialize"; alt_names[${#alt_names[@]}]="php-horde-serialize"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-SessionHandler"; alt_names[${#alt_names[@]}]="php-horde-sessionhandler"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-SessionObjects"; alt_names[${#alt_names[@]}]="php-horde-sessionobjects"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Share"; alt_names[${#alt_names[@]}]="php-horde-share"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-SpellChecker"; alt_names[${#alt_names[@]}]="php-horde-spellchecker"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-SQL"; alt_names[${#alt_names[@]}]="php-horde-sql"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-SyncML"; alt_names[${#alt_names[@]}]="php-horde-syncml"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Template"; alt_names[${#alt_names[@]}]="php-horde-template"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_Diff"; alt_names[${#alt_names[@]}]="php-horde-text-diff"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_Filter"; alt_names[${#alt_names[@]}]="php-horde-text-filter"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_Flowed"; alt_names[${#alt_names[@]}]="php-horde-text-flowed"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_reST"; alt_names[${#alt_names[@]}]="php-horde-text-rest"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_Textile"; alt_names[${#alt_names[@]}]="php-horde-text-textile"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Token"; alt_names[${#alt_names[@]}]="php-horde-token"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Tree"; alt_names[${#alt_names[@]}]="php-horde-tree"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-UI"; alt_names[${#alt_names[@]}]="php-horde-ui"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-Util"; alt_names[${#alt_names[@]}]="php-horde-util"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-VC"; alt_names[${#alt_names[@]}]="php-horde-vc"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-VFS"; alt_names[${#alt_names[@]}]="php-horde-vfs"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-XML_Element"; alt_names[${#alt_names[@]}]="php-horde-xml-element"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-XML_WBXML"; alt_names[${#alt_names[@]}]="php-horde-xml-wbxml"
+ pkg_names[${#pkg_names[@]}]="php-pear-Horde-YAML"; alt_names[${#alt_names[@]}]="php-horde-yaml"
+ pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Config"; alt_names[${#alt_names[@]}]="php-kolab-config"
+ pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Filter"; alt_names[${#alt_names[@]}]="php-kolab-filter"
+ pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Format"; alt_names[${#alt_names[@]}]="php-kolab-format"
+ pkg_names[${#pkg_names[@]}]="php-pear-Kolab-FreeBusy"; alt_names[${#alt_names[@]}]="php-kolab-freebusy"
+ pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Server"; alt_names[${#alt_names[@]}]="php-kolab-server"
+ pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Storage"; alt_names[${#alt_names[@]}]="php-kolab-storage"
+ pkg_names[${#pkg_names[@]}]="php-pear-Kolab-ZPush"; alt_names[${#alt_names[@]}]="php-kolab-zpush"
+fi
+
pkg_names[${#pkg_names[@]}]="php-pear-DB"; alt_names[${#alt_names[@]}]="php-db"
pkg_names[${#pkg_names[@]}]="php-pear-File"; alt_names[${#alt_names[@]}]="php-file"
pkg_names[${#pkg_names[@]}]="php-pear-File-CSV"; alt_names[${#alt_names[@]}]="php-file"
@@ -638,76 +745,6 @@ pkg_names[${#pkg_names[@]}]="php-pear-File-PDF"; alt_names[${
pkg_names[${#pkg_names[@]}]="php-pear-HTTP-Request"; alt_names[${#alt_names[@]}]="php-http-request"
pkg_names[${#pkg_names[@]}]="php-pear-HTTP-Request2"; alt_names[${#alt_names[@]}]="php-http-request2"
pkg_names[${#pkg_names[@]}]="php-pear-HTTP-WebDAV-Server"; alt_names[${#alt_names[@]}]="php-http-webdav-server"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Alarm"; alt_names[${#alt_names[@]}]="php-horde-alarm"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Argv"; alt_names[${#alt_names[@]}]="php-horde-argv"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Auth"; alt_names[${#alt_names[@]}]="php-horde-auth"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Block"; alt_names[${#alt_names[@]}]="php-horde-block"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Browser"; alt_names[${#alt_names[@]}]="php-horde-browser"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Cache"; alt_names[${#alt_names[@]}]="php-horde-cache"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Cipher"; alt_names[${#alt_names[@]}]="php-horde-cipher"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-CLI"; alt_names[${#alt_names[@]}]="php-horde-cli"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Compress"; alt_names[${#alt_names[@]}]="php-horde-compress"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Crypt"; alt_names[${#alt_names[@]}]="php-horde-crypt"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-DataTree"; alt_names[${#alt_names[@]}]="php-horde-datatree"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Date"; alt_names[${#alt_names[@]}]="php-horde-date"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-DOM"; alt_names[${#alt_names[@]}]="php-horde-dom"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Editor"; alt_names[${#alt_names[@]}]="php-horde-editor"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Feed"; alt_names[${#alt_names[@]}]="php-horde-feed"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-File_CSV"; alt_names[${#alt_names[@]}]="php-horde-file_csv"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-File_PDF"; alt_names[${#alt_names[@]}]="php-horde-file_pdf"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Form"; alt_names[${#alt_names[@]}]="php-horde-form"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Framework"; alt_names[${#alt_names[@]}]="php-horde-framework"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Group"; alt_names[${#alt_names[@]}]="php-horde-group"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-History"; alt_names[${#alt_names[@]}]="php-horde-history"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Http_Client"; alt_names[${#alt_names[@]}]="php-horde-http_client"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-iCalendar"; alt_names[${#alt_names[@]}]="php-horde-icalendar"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Identity"; alt_names[${#alt_names[@]}]="php-horde-identity"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Image"; alt_names[${#alt_names[@]}]="php-horde-image"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-IMAP"; alt_names[${#alt_names[@]}]="php-horde-imap"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Kolab"; alt_names[${#alt_names[@]}]="php-horde-kolab"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-LDAP"; alt_names[${#alt_names[@]}]="php-horde-ldap"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Loader"; alt_names[${#alt_names[@]}]="php-horde-loader"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Lock"; alt_names[${#alt_names[@]}]="php-horde-lock"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Log"; alt_names[${#alt_names[@]}]="php-horde-log"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Maintenance"; alt_names[${#alt_names[@]}]="php-horde-maintenance"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-MIME"; alt_names[${#alt_names[@]}]="php-horde-mime"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Mobile"; alt_names[${#alt_names[@]}]="php-horde-mobile"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Net_SMS"; alt_names[${#alt_names[@]}]="php-horde-net_sms"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-NLS"; alt_names[${#alt_names[@]}]="php-horde-nls"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Notification"; alt_names[${#alt_names[@]}]="php-horde-notification"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Perms"; alt_names[${#alt_names[@]}]="php-horde-perms"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Prefs"; alt_names[${#alt_names[@]}]="php-horde-prefs"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-RPC"; alt_names[${#alt_names[@]}]="php-horde-rpc"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Secret"; alt_names[${#alt_names[@]}]="php-horde-secret"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Serialize"; alt_names[${#alt_names[@]}]="php-horde-serialize"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-SessionHandler"; alt_names[${#alt_names[@]}]="php-horde-sessionhandler"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-SessionObjects"; alt_names[${#alt_names[@]}]="php-horde-sessionobjects"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Share"; alt_names[${#alt_names[@]}]="php-horde-share"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-SpellChecker"; alt_names[${#alt_names[@]}]="php-horde-spellchecker"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-SQL"; alt_names[${#alt_names[@]}]="php-horde-sql"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-SyncML"; alt_names[${#alt_names[@]}]="php-horde-syncml"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Template"; alt_names[${#alt_names[@]}]="php-horde-template"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_Diff"; alt_names[${#alt_names[@]}]="php-horde-text-diff"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_Filter"; alt_names[${#alt_names[@]}]="php-horde-text-filter"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_Flowed"; alt_names[${#alt_names[@]}]="php-horde-text-flowed"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_reST"; alt_names[${#alt_names[@]}]="php-horde-text-rest"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Text_Textile"; alt_names[${#alt_names[@]}]="php-horde-text-textile"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Token"; alt_names[${#alt_names[@]}]="php-horde-token"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Tree"; alt_names[${#alt_names[@]}]="php-horde-tree"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-UI"; alt_names[${#alt_names[@]}]="php-horde-ui"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-Util"; alt_names[${#alt_names[@]}]="php-horde-util"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-VC"; alt_names[${#alt_names[@]}]="php-horde-vc"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-VFS"; alt_names[${#alt_names[@]}]="php-horde-vfs"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-XML_Element"; alt_names[${#alt_names[@]}]="php-horde-xml-element"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-XML_WBXML"; alt_names[${#alt_names[@]}]="php-horde-xml-wbxml"
-pkg_names[${#pkg_names[@]}]="php-pear-Horde-YAML"; alt_names[${#alt_names[@]}]="php-horde-yaml"
-pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Config"; alt_names[${#alt_names[@]}]="php-kolab-config"
-pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Filter"; alt_names[${#alt_names[@]}]="php-kolab-filter"
-pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Format"; alt_names[${#alt_names[@]}]="php-kolab-format"
-pkg_names[${#pkg_names[@]}]="php-pear-Kolab-FreeBusy"; alt_names[${#alt_names[@]}]="php-kolab-freebusy"
-pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Server"; alt_names[${#alt_names[@]}]="php-kolab-server"
-pkg_names[${#pkg_names[@]}]="php-pear-Kolab-Storage"; alt_names[${#alt_names[@]}]="php-kolab-storage"
-pkg_names[${#pkg_names[@]}]="php-pear-Kolab-ZPush"; alt_names[${#alt_names[@]}]="php-kolab-zpush"
pkg_names[${#pkg_names[@]}]="php-pear-Log"; alt_names[${#alt_names[@]}]="php-log"
pkg_names[${#pkg_names[@]}]="php-pear-Mail"; alt_names[${#alt_names[@]}]="php-mail"
pkg_names[${#pkg_names[@]}]="php-pear-Mail-Mime"; alt_names[${#alt_names[@]}]="php-mail-mime"
@@ -743,11 +780,16 @@ declare -a pkg_versions
# TODO: Combine with existing output:
#wget -q -O- "http://wiki.kolab.org/index.php?title=Template:Pkg_version_table_${kolab_version}&action=edit" | grep -E "^{{pkg_version_matrix_row\|" | sed -r -e 's/\{\{pkg_version_matrix_row\|name=(.*)\|distribution=.*$/\1/g'
-
for pkg_detail in `cat ${package_list_wanted}`; do
+ echo "pkg_detail: ${pkg_detail}"
pkg=`echo ${pkg_detail} | rev | cut -d'-' -f3- | rev`
pkg_version=`echo ${pkg_detail} | rev | cut -d'-' -f2 | rev`
+ if [ -z "${pkg}" ]; then
+ pkg=`echo ${pkg_detail} | rev | cut -d'-' -f2- | rev`
+ pkg_version=`echo ${pkg_detail} | rev | cut -d'-' -f1 | rev`
+ fi
+
pkgni=0
# A very quick one for the sake of speed.
@@ -830,7 +872,7 @@ if [ -x "$(which apt-cache 2>/dev/null)" ]; then
for _pkg in ${_pkg_names}; do
if [ -z "${pkg_versions_native[${x}]}" ]; then
- pkg_versions_native[${x}]=`apt-cache policy ${_pkg} | grep -E "\s{2}Candidate:" | sed -r -e 's/\s{2}Candidate: (.*)/\1/g' | grep -v "(none)"`
+ pkg_versions_native[${x}]=`apt-cache showsrc ${_pkg} | grep "^Version:" | awk '{print $2}'`
fi
done
@@ -904,41 +946,38 @@ EOF
if [ ! -z "${wanted_version}" ]; then
if [ -z "${pkg_versions_kolab[${x}]}" ]; then
if [ ! -z "${pkg_versions_native[${x}]}" ]; then
- retval=`version_compare "${pkg}" "${wanted_version}" "${pkg_versions_native[${x}]}"`
+ retval=`version_compare "${pkg}" "${wanted_version}" "${pkg_versions_native[${x}]}"; echo $?`
fi
else
- retval=`version_compare "${pkg}" "${wanted_version}" "${pkg_versions_native[${x}]}"`
+ retval=`version_compare "${pkg}" "${wanted_version}" "${pkg_versions_native[${x}]}"; echo $?`
fi
fi
+ native_suffix=""
+ kolab_suffix=""
+
+ if [ ${retval} -ne 0 -a ! -z "${wanted_version}" ]; then
+ native_suffix="(Outdated, want ${wanted_version})"
+ fi
+
+ if [ -z "${pkg_versions_installed[${x}]}" ]; then
+ kolab_suffix="(Not needed for installation)"
+ fi
+
# Native
if [ -z "${pkg_versions_native[${x}]}" ]; then
- echo " | ${pkg} = Not Available${suffix}" >> ${package_list_native}
+ echo " | ${pkg} = Not Available" >> ${package_list_native}
else
- if [ ! -z "${retval}" -a "${retval}" == "0" -a ! -z "${wanted_version}" ]; then
- suffix=" (Outdated, want ${wanted_version})"
- fi
-
- echo " | ${pkg} = ${pkg_versions_native[${x}]}${suffix}" >> ${package_list_native}
+ echo " | ${pkg} = ${pkg_versions_native[${x}]} ${native_suffix}" >> ${package_list_native}
fi
# Kolab
if [ -z "${pkg_versions_kolab[${x}]}" ]; then
if [ -z "${pkg_versions_native[${x}]}" ]; then
- echo " | ${pkg} = Not Available${suffix}" >> ${package_list_kolab}
- else
- if [ ! -z "${retval}" -a "${retval}" == "0" -a ! -z "${wanted_version}" ]; then
- echo " | ${pkg} = Outdated" >> ${package_list_kolab}
- else
- echo " | ${pkg} = Not Applicable${suffix}" >> ${package_list_kolab}
- fi
+ echo " | ${pkg} = Not Available" >> ${package_list_kolab}
fi
else
- if [ ! -z "${retval}" -a "${retval}" == "0" -a ! -z "${wanted_version}" ]; then
- suffix=" (Outdated)"
- fi
-
- echo " | ${pkg} = ${pkg_versions_kolab[${x}]}${suffix}" >> ${package_list_kolab}
+ echo " | ${pkg} = ${pkg_versions_kolab[${x}]} ${kolab_suffix}" >> ${package_list_kolab}
fi
let x++
diff --git a/settings.sh b/settings.sh
index 1eb1dce..22f6b07 100755
--- a/settings.sh
+++ b/settings.sh
@@ -13,3 +13,6 @@ export kolab2_base="kolab.kolabsys.com:/kolab/var/imapd/"
export imap_host="${ldap_host}"
export cyrus_admin_pw="${ldap_bindpw}"
+export hosted_kolab_service_pw="${ldap_bindpw}"
+export hosted_domain="demo.kolab.org"
+export hosted_domain_rootdn="dc=demo,dc=kolab,dc=org"