From 16140dc01ef2bc85be43884e7870b6358e64fe8d Mon Sep 17 00:00:00 2001 From: Timo Weingärtner Date: Thu, 10 Jan 2013 14:36:49 +0100 Subject: update maintainerscripts * add postrm to clean up cache and lib dirs * no longer remove stuff on upgrades in prerm Git-Dch: full --- debian/openssh-known-hosts.postinst | 60 ++++++++++++++++--------------------- debian/openssh-known-hosts.postrm | 35 ++++++++++++++++++++++ debian/openssh-known-hosts.prerm | 37 +++++++++-------------- 3 files changed, 75 insertions(+), 57 deletions(-) create mode 100644 debian/openssh-known-hosts.postrm diff --git a/debian/openssh-known-hosts.postinst b/debian/openssh-known-hosts.postinst index 93858a1..58800e2 100644 --- a/debian/openssh-known-hosts.postinst +++ b/debian/openssh-known-hosts.postinst @@ -19,42 +19,34 @@ set -e case "$1" in - configure) - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; + configure|abort-upgrade|abort-remove|abort-deconfigure) + if [ ! -e /usr/local/share/openssh-known-hosts ]; then + if mkdir /usr/local/share/openssh-known-hosts 2>/dev/null; then + if chown root:staff /usr/local/share/openssh-known-hosts; then + chmod 2775 /usr/local/share/openssh-known-hosts || true + fi + fi + fi + if [ ! -e /usr/local/share/openssh-known-hosts/plugins ]; then + if mkdir /usr/local/share/openssh-known-hosts/plugins 2>/dev/null; then + if chown root:staff /usr/local/share/openssh-known-hosts/plugins; then + chmod 2775 /usr/local/share/openssh-known-hosts/plugins || true + fi + fi + fi + [ -e /etc/ssh/ssh_known_hosts ] || ln -s /var/lib/openssh-known-hosts/ssh_known_hosts /etc/ssh/ssh_known_hosts + if [ "`readlink /etc/ssh/ssh_known_hosts`" != /var/lib/openssh-known-hosts/ssh_known_hosts ]; then + echo "/etc/ssh/ssh_known_hosts already exists, please set up the link to" + echo "/var/lib/openssh-known-hosts/ssh_known_hosts yourself or point to it" + echo "with GlobalKnownHostsFile in ssh_config(5)." + fi + ;; + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; esac -# dh_installdeb will replace this with shell code automatically -# generated by other debhelper scripts. - #DEBHELPER# -if [ ! -e /usr/local/share/openssh-known-hosts ]; then - if mkdir /usr/local/share/openssh-known-hosts 2>/dev/null; then - chown root:staff /usr/local/share/openssh-known-hosts - chmod 2775 /usr/local/share/openssh-known-hosts - fi -fi -if [ ! -e /usr/local/share/openssh-known-hosts/plugins ]; then - if mkdir /usr/local/share/openssh-known-hosts/plugins 2>/dev/null; then - chown root:staff /usr/local/share/openssh-known-hosts/plugins - chmod 2775 /usr/local/share/openssh-known-hosts/plugins - fi -fi - -[ -e /etc/ssh/ssh_known_hosts ] || ln -s /var/lib/openssh-known-hosts/ssh_known_hosts /etc/ssh/ssh_known_hosts -if [ "`readlink /etc/ssh/ssh_known_hosts`" != /var/lib/openssh-known-hosts/ssh_known_hosts ]; then - echo "/etc/ssh/ssh_known_hosts already exists, please set up the link to" - echo "/var/lib/openssh-known-hosts/ssh_known_hosts yourself." -fi - exit 0 - - diff --git a/debian/openssh-known-hosts.postrm b/debian/openssh-known-hosts.postrm new file mode 100644 index 0000000..b1e2c51 --- /dev/null +++ b/debian/openssh-known-hosts.postrm @@ -0,0 +1,35 @@ +#!/bin/sh +# postrm script for #PACKAGE# +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `purge' +# * `upgrade' +# * `failed-upgrade' +# * `abort-install' +# * `abort-install' +# * `abort-upgrade' +# * `disappear' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) + find /var/cache/openssh-known-hosts/ -mindepth 1 -delete + find /var/lib/openssh-known-hosts/ -mindepth 1 -delete + ;; + *) + echo "postrm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +#DEBHELPER# + +exit 0 diff --git a/debian/openssh-known-hosts.prerm b/debian/openssh-known-hosts.prerm index b5730c7..fc24391 100644 --- a/debian/openssh-known-hosts.prerm +++ b/debian/openssh-known-hosts.prerm @@ -18,31 +18,22 @@ set -e case "$1" in - remove|upgrade|deconfigure) - ;; - - failed-upgrade) - ;; - - *) - echo "prerm called with unknown argument \`$1'" >&2 - exit 1 - ;; + remove|deconfigure) + if [ -L /etc/ssh/ssh_known_hosts ] && \ + [ "`readlink /etc/ssh/ssh_known_hosts`" = /var/lib/openssh-known-hosts/ssh_known_hosts ]; then + rm /etc/ssh/ssh_known_hosts + fi + rmdir /usr/local/share/openssh-known-hosts/plugins 2>/dev/null || true + rmdir /usr/local/share/openssh-known-hosts 2>/dev/null || true + ;; + upgrade|failed-upgrade) + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; esac -# dh_installdeb will replace this with shell code automatically -# generated by other debhelper scripts. - #DEBHELPER# -if [ -L /etc/ssh/ssh_known_hosts ] && \ - [ "`readlink /etc/ssh/ssh_known_hosts`" = /var/lib/openssh-known-hosts/ssh_known_hosts ]; then - rm /etc/ssh/ssh_known_hosts -fi - -rmdir /usr/local/share/openssh-known-hosts/plugins 2>/dev/null || true -rmdir /usr/local/share/openssh-known-hosts 2>/dev/null || true - exit 0 - - -- cgit v1.2.3