[Pkg-kde-commits] rev 778 - branches/kde-3.4.0/packages/kdebase/debian

Christopher Martin chrsmrtn-guest@costa.debian.org
Fri, 11 Mar 2005 21:03:25 +0100


Author: chrsmrtn-guest
Date: 2005-03-11 21:03:24 +0100 (Fri, 11 Mar 2005)
New Revision: 778

Modified:
   branches/kde-3.4.0/packages/kdebase/debian/kdm.postinst
Log:
First attempt at managing the upgrade from kdm 3.3.x to 3.4.x.

Fellow team members, PLEASE REVIEW and don't hesitate to comment,
criticize, patch, etc. etc.


Modified: branches/kde-3.4.0/packages/kdebase/debian/kdm.postinst
===================================================================
--- branches/kde-3.4.0/packages/kdebase/debian/kdm.postinst	2005-03-11 18:49:55 UTC (rev 777)
+++ branches/kde-3.4.0/packages/kdebase/debian/kdm.postinst	2005-03-11 20:03:24 UTC (rev 778)
@@ -73,6 +73,55 @@
   NOSTART=yes
 fi
 
+
+# md5sum of the stock Xservers shipped with KDE 3.3.2, which shipped with Sarge
+SARGEXSERVERS=d3ab063f564492e0e31830f56ccd350e
+
+CONFIGLEVEL=`grep -s ^ConfigVersion= /etc/kde3/kdm/kdmrc | sed s/^ConfigVersion=//`
+
+if [ -e /etc/kde3/kdm/kdmrc ]; then
+  if dpkg --compare-versions "$CONFIGLEVEL" ge "2.3"; then
+    KDMRCUPDATED=yes
+  fi
+fi
+
+if [ -e /etc/kde3/kdm/Xservers ]; then
+  if [[ `md5sum /etc/kde3/kdm/Xservers | sed s/\ .*$//` = $SARGEXSERVERS ]]; then
+    XSERVERSUNCHANGED=yes
+  fi
+fi
+
+# With KDE 3.4, /etc/kde3/kdm/Xservers is no longer required, so we remove it, if
+# the user has updated their kdmrc (if they haven't, kdm notices and keeps using
+# Xservers), and if it wasn't touched, i.e. there are no local changes the user
+# will want to merge into kdmrc.
+
+case "$1" in
+
+  configure)
+
+    if [ ! -z $KDMRCUPDATED ] && [ ! -z $XSERVERSUNCHANGED ]; then
+      echo "Removing obsolete /etc/kde3/kdm/Xservers (detected no user changes)."
+      rm -f /etc/kde3/kdm/Xservers
+    elif [ ! -z $KDMRCUPDATED ] && [ -e /etc/kde3/kdm/Xservers ]; then
+      echo "Note that /etc/kde3/kdm/Xservers is no longer used by KDM."
+      echo "You must merge your changes (if any) into /etc/kde3/kdm/kdmrc manually."
+      echo "Otherwise, /etc/kde3/kdm/Xservers is safe to remove."
+    fi
+
+  ;;
+
+  abort-upgrade|abort-remove|abort-deconfigure)
+  ;;
+
+  *)
+  echo "postinst called with unknown argument \`$1'" >&2
+  exit 1
+  ;;
+
+esac
+
+
 if [ -e /etc/init.d/kdm ]; then
   update-rc.d "$THIS_PACKAGE" defaults 99 01 > /dev/null
 fi