summaryrefslogtreecommitdiffstats
path: root/debian/postgresql-common.config
diff options
context:
space:
mode:
Diffstat (limited to 'debian/postgresql-common.config')
-rw-r--r--debian/postgresql-common.config60
1 files changed, 60 insertions, 0 deletions
diff --git a/debian/postgresql-common.config b/debian/postgresql-common.config
new file mode 100644
index 0000000..8f169e4
--- /dev/null
+++ b/debian/postgresql-common.config
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+# If we have no versions, we do not need to worry about obsolete ones
+if ! [ -d /usr/lib/postgresql ] || \
+ [ ! -e /usr/share/postgresql-common/supported-versions ]; then
+ db_stop
+ exit 0
+fi
+
+# at some points we obsolete major versions within unstable; force the
+# obsoletion notifications when upgrading over those
+if dpkg --compare-versions "$2" lt-nl 71 2>/dev/null; then
+ db_fset postgresql-common/obsolete-major seen false
+fi
+
+# determine versions
+for v in `ls /usr/lib/postgresql/`; do
+ # Ignore old libraries, etc.
+ if [ -x /usr/lib/postgresql/$v/bin/psql ]; then
+ AVAILABLE="$AVAILABLE $v"
+ fi
+done
+
+SUPPORTED=`sh /usr/share/postgresql-common/supported-versions`
+LATEST=`echo "$SUPPORTED" | sort -g | tail -1`
+
+db_fget postgresql-common/obsolete-major seen || true
+
+if [ "$RET" != "true" ]; then
+ for v in $AVAILABLE; do
+ unset sup
+ for s in $SUPPORTED; do
+ if dpkg --compare-versions "$v" ge "$s"; then
+ sup=1
+ break
+ fi
+ done
+ if [ "$sup" ]; then
+ continue
+ fi
+
+ if dpkg -s "postgresql-client-$v" 2>/dev/null | grep -q ^Version: ; then
+ db_fset postgresql-common/obsolete-major seen false
+ db_subst postgresql-common/obsolete-major old $v
+ db_subst postgresql-common/obsolete-major latest $LATEST
+ db_input high postgresql-common/obsolete-major || true
+ db_go || true
+ fi
+ done
+fi
+
+# createcluster.conf
+db_input medium postgresql-common/ssl || true
+db_go || true
+
+db_stop