#!/bin/sh
# Filename:      preinst
# Purpose:       preinst script for package grml-etc-core
# Authors:       grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports:   see http://grml.org/bugs/
# License:       This file is licensed under the GPL v2.
# Latest change: Sam Sep 15 10:36:46 CEST 2007 [mika]
################################################################################

set -e

# check for files from rm_conffile() in debian/preinst of grml-etc
# make sure we don't lose any files...
backup_conffile() {
    CONFFILE="$1"

    if [ -e "$CONFFILE.dpkg-bak" -a -e "$CONFFILE" ]; then
       cp -f "$CONFFILE" "$CONFFILE".original
    else
       [ -e "$CONFFILE" ] && cp -f "$CONFFILE" "$CONFFILE".grml-etc-core || true
    fi
}

case "$1" in
   install|upgrade|configure)
        TMP=$$
        # move files from package grml-etc to grml-etc-core, make sure
        # we don't lose any files...
        for file in /etc/zsh/zlogin /etc/zsh/zprofile /etc/zsh/zshenv /etc/zsh/zshrc \
                    /etc/zsh/zlogout /etc/vim/vimrc; do
               [ -e "$file".original ] || cp -f "$file" "${file}.tmp.$TMP" 2>/dev/null || /bin/true
	       # [ -e "$file".dpkg-new ] && cp -f "$file".dpkg-new "${file}.tmp.$TMP"
               backup_conffile $file && \
               [ -f "$file" ] && rm $file && \
               dpkg-divert --quiet --add --rename --package grml-etc-core --divert "$file".original $file  && \
               [ -f "$file".dpkg-bak ]      && mv -f "$file".dpkg-bak "$file"
               [ -f "$file".grml-etc-core ] && mv -f "$file".grml-etc-core "$file"
	       [ -e "${file}.tmp.$TMP" ]      && mv -f "${file}.tmp.$TMP" "$file.original"

               # trying to overwrite `/etc/skel/.zshrc', which is also in package zsh
               # [ -f /etc/skel/.zshrc ] && \
               # dpkg-divert --quiet --add --rename --package grml-etc-core --divert /etc/skel/.zshrc.original /etc/skel/.zshrc
        done

	if dpkg-divert --list grml-etc-core 2>/dev/null | grep -q /etc/skel/.zshrc.original ; then
	   mv -f /etc/skel/.zshrc.original /etc/skel/.zshrc.original.old && \
	   dpkg-divert --remove --rename --package grml-etc-core /etc/skel/.zshrc
	fi

     ;;
   *)
     echo "preinst called with unknown argument $1" >&2
     exit 1
esac

exit 0

## END OF FILE #################################################################
