This is an automated email from the git hooks/post-receive script.

guillem pushed a commit to branch next/d-m-h-root
in repository dpkg.

View the commit online:
https://git.dpkg.org/cgit/dpkg/dpkg.git/commit/?id=7737483b10a49ab7db316b158728c161ea37ab53

commit 7737483b10a49ab7db316b158728c161ea37ab53
Author: David Kalnischkies <da...@kalnischkies.de>
AuthorDate: Sat Jul 23 10:07:53 2016 +0200

    dpkg-maintscript-helper: Support DPKG_ROOT for conffiles
    
    As dpkg-maintscript-helper "works around known dpkg limitations in
    maintainer scripts" it should behave as if it were a maintainerscript
    and prepend DPKG_ROOT to all paths it uses.
    
    This is preferred over having the conffile parameter(s) be prepended
    with DPKG_ROOT by the maintainerscripts calling the helper as the helper
    would then need to strip DPKG_ROOT from the path to verify if the
    conffile belongs to the package – it also means that it magically works
    for all callers instantly instead of requiring e.g. dh_installdeb to be
    patched and packages to be rebuilt against a patched version.
    
    Signed-off-by: Guillem Jover <guil...@debian.org>
---
 scripts/dpkg-maintscript-helper.sh | 62 +++++++++++++++++++-------------------
 1 file changed, 31 insertions(+), 31 deletions(-)

diff --git a/scripts/dpkg-maintscript-helper.sh 
b/scripts/dpkg-maintscript-helper.sh
index a113a938e..6162817f6 100755
--- a/scripts/dpkg-maintscript-helper.sh
+++ b/scripts/dpkg-maintscript-helper.sh
@@ -71,8 +71,8 @@ rm_conffile() {
                ;;
        postrm)
                if [ "$1" = "purge" ]; then
-                       rm -f "$CONFFILE.dpkg-bak" "$CONFFILE.dpkg-remove" \
-                             "$CONFFILE.dpkg-backup"
+                       rm -f "${DPKG_ROOT}$CONFFILE.dpkg-bak" 
"${DPKG_ROOT}$CONFFILE.dpkg-remove" \
+                             "${DPKG_ROOT}$CONFFILE.dpkg-backup"
                fi
                if [ "$1" = "abort-install" -o "$1" = "abort-upgrade" ] &&
                   [ -n "$2" ] &&
@@ -90,31 +90,31 @@ prepare_rm_conffile() {
        local CONFFILE="$1"
        local PACKAGE="$2"
 
-       [ -e "$CONFFILE" ] || return 0
+       [ -e "${DPKG_ROOT}$CONFFILE" ] || return 0
        ensure_package_owns_file "$PACKAGE" "$CONFFILE" || return 0
 
        local md5sum old_md5sum
-       md5sum="$(md5sum "$CONFFILE" | sed -e 's/ .*//')"
+       md5sum="$(md5sum "${DPKG_ROOT}$CONFFILE" | sed -e 's/ .*//')"
        old_md5sum="$(dpkg-query -W -f='${Conffiles}' "$PACKAGE" | \
                sed -n -e "\\'^ $CONFFILE ' { s/ obsolete$//; s/.* //; p }")"
        if [ "$md5sum" != "$old_md5sum" ]; then
-               mv -f "$CONFFILE" "$CONFFILE.dpkg-backup"
+               mv -f "${DPKG_ROOT}$CONFFILE" 
"${DPKG_ROOT}$CONFFILE.dpkg-backup"
        else
-               mv -f "$CONFFILE" "$CONFFILE.dpkg-remove"
+               mv -f "${DPKG_ROOT}$CONFFILE" 
"${DPKG_ROOT}$CONFFILE.dpkg-remove"
        fi
 }
 
 finish_rm_conffile() {
        local CONFFILE="$1"
 
-       if [ -e "$CONFFILE.dpkg-backup" ]; then
-               echo "Obsolete conffile $CONFFILE has been modified by you."
-               echo "Saving as $CONFFILE.dpkg-bak ..."
-               mv -f "$CONFFILE.dpkg-backup" "$CONFFILE.dpkg-bak"
+       if [ -e "${DPKG_ROOT}$CONFFILE.dpkg-backup" ]; then
+               echo "Obsolete conffile ${DPKG_ROOT}$CONFFILE has been modified 
by you."
+               echo "Saving as ${DPKG_ROOT}$CONFFILE.dpkg-bak ..."
+               mv -f "${DPKG_ROOT}$CONFFILE.dpkg-backup" 
"${DPKG_ROOT}$CONFFILE.dpkg-bak"
        fi
-       if [ -e "$CONFFILE.dpkg-remove" ]; then
-               echo "Removing obsolete conffile $CONFFILE ..."
-               rm -f "$CONFFILE.dpkg-remove"
+       if [ -e "${DPKG_ROOT}$CONFFILE.dpkg-remove" ]; then
+               echo "Removing obsolete conffile ${DPKG_ROOT}$CONFFILE ..."
+               rm -f "${DPKG_ROOT}$CONFFILE.dpkg-remove"
        fi
 }
 
@@ -124,13 +124,13 @@ abort_rm_conffile() {
 
        ensure_package_owns_file "$PACKAGE" "$CONFFILE" || return 0
 
-       if [ -e "$CONFFILE.dpkg-remove" ]; then
-               echo "Reinstalling $CONFFILE that was moved away"
-               mv "$CONFFILE.dpkg-remove" "$CONFFILE"
+       if [ -e "${DPKG_ROOT}$CONFFILE.dpkg-remove" ]; then
+               echo "Reinstalling ${DPKG_ROOT}$CONFFILE that was moved away"
+               mv "${DPKG_ROOT}$CONFFILE.dpkg-remove" "${DPKG_ROOT}$CONFFILE"
        fi
-       if [ -e "$CONFFILE.dpkg-backup" ]; then
-               echo "Reinstalling $CONFFILE that was backed-up"
-               mv "$CONFFILE.dpkg-backup" "$CONFFILE"
+       if [ -e "${DPKG_ROOT}$CONFFILE.dpkg-backup" ]; then
+               echo "Reinstalling ${DPKG_ROOT}$CONFFILE that was backed-up"
+               mv "${DPKG_ROOT}$CONFFILE.dpkg-backup" "${DPKG_ROOT}$CONFFILE"
        fi
 }
 
@@ -200,16 +200,16 @@ prepare_mv_conffile() {
        local CONFFILE="$1"
        local PACKAGE="$2"
 
-       [ -e "$CONFFILE" ] || return 0
+       [ -e "${DPKG_ROOT}$CONFFILE" ] || return 0
 
        ensure_package_owns_file "$PACKAGE" "$CONFFILE" || return 0
 
        local md5sum old_md5sum
-       md5sum="$(md5sum "$CONFFILE" | sed -e 's/ .*//')"
+       md5sum="$(md5sum "${DPKG_ROOT}$CONFFILE" | sed -e 's/ .*//')"
        old_md5sum="$(dpkg-query -W -f='${Conffiles}' "$PACKAGE" | \
                sed -n -e "\\'^ $CONFFILE ' { s/ obsolete$//; s/.* //; p }")"
        if [ "$md5sum" = "$old_md5sum" ]; then
-               mv -f "$CONFFILE" "$CONFFILE.dpkg-remove"
+               mv -f "${DPKG_ROOT}$CONFFILE" 
"${DPKG_ROOT}$CONFFILE.dpkg-remove"
        fi
 }
 
@@ -218,16 +218,16 @@ finish_mv_conffile() {
        local NEWCONFFILE="$2"
        local PACKAGE="$3"
 
-       rm -f "$OLDCONFFILE.dpkg-remove"
+       rm -f "${DPKG_ROOT}$OLDCONFFILE.dpkg-remove"
 
-       [ -e "$OLDCONFFILE" ] || return 0
+       [ -e "${DPKG_ROOT}$OLDCONFFILE" ] || return 0
        ensure_package_owns_file "$PACKAGE" "$OLDCONFFILE" || return 0
 
-       echo "Preserving user changes to $NEWCONFFILE (renamed from 
$OLDCONFFILE)..."
-       if [ -e "$NEWCONFFILE" ]; then
-               mv -f "$NEWCONFFILE" "$NEWCONFFILE.dpkg-new"
+       echo "Preserving user changes to ${DPKG_ROOT}$NEWCONFFILE (renamed from 
${DPKG_ROOT}$OLDCONFFILE)..."
+       if [ -e "${DPKG_ROOT}$NEWCONFFILE" ]; then
+               mv -f "${DPKG_ROOT}$NEWCONFFILE" 
"${DPKG_ROOT}$NEWCONFFILE.dpkg-new"
        fi
-       mv -f "$OLDCONFFILE" "$NEWCONFFILE"
+       mv -f "${DPKG_ROOT}$OLDCONFFILE" "${DPKG_ROOT}$NEWCONFFILE"
 }
 
 abort_mv_conffile() {
@@ -236,9 +236,9 @@ abort_mv_conffile() {
 
        ensure_package_owns_file "$PACKAGE" "$CONFFILE" || return 0
 
-       if [ -e "$CONFFILE.dpkg-remove" ]; then
-               echo "Reinstalling $CONFFILE that was moved away"
-               mv "$CONFFILE.dpkg-remove" "$CONFFILE"
+       if [ -e "${DPKG_ROOT}$CONFFILE.dpkg-remove" ]; then
+               echo "Reinstalling ${DPKG_ROOT}$CONFFILE that was moved away"
+               mv "${DPKG_ROOT}$CONFFILE.dpkg-remove" "${DPKG_ROOT}$CONFFILE"
        fi
 }
 

-- 
Dpkg.Org's dpkg

Reply via email to