From da0f1fd203fb70ba9af43507ec11ab948b654531 Mon Sep 17 00:00:00 2001 From: Dylan Araps Date: Thu, 4 Jul 2019 18:32:53 +0300 Subject: [PATCH] kiss: Block Ctrl+C during removal. --- kiss | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/kiss b/kiss index 3142b87..3e9649f 100755 --- a/kiss +++ b/kiss @@ -583,6 +583,11 @@ pkg_remove() { die "[$1]: Package is required by ${required_by%, }." \ "[$1]: Aborting here..." + # Block being able to abort the script with 'Ctrl+C' during installation. + # Removes all risk of the user aborting a package installation leaving + # an incomplete package installed. + trap '' INT + while read -r file; do # The file is in '/etc' skip it. This prevents the package # manager from removing user edited configuration files. @@ -596,6 +601,10 @@ pkg_remove() { fi done < "$KISS_ROOT/var/db/kiss/$1/manifest" + # Reset 'trap' to its original value. Installation is done so + # we no longer need to block 'Ctrl+C'. + trap pkg_clean EXIT INT + log "[$1]: Removed successfully." }