commit 3fe96921f83cb457d8dc552ea27e1e1bc1bfbaf8
parent ba19a358fef6754bfc5a2b8a13708fbe0aba5806
Author: Dylan Araps <dylan.araps@gmail.com>
Date: Mon, 22 Jul 2019 11:14:05 +0300
kiss: Make backup of rm command.
Diffstat:
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/kiss b/kiss
@@ -693,6 +693,9 @@ pkg_install() {
[ -f "$KISS_ROOT/$pkg_db/$pkg_name/manifest" ] &&
cp -f "$KISS_ROOT/$pkg_db/$pkg_name/manifest" "$cac_dir/m-$pkg_name"
+ # Make a backup of the `rm` command so it isn't removed below.
+ cp "$(command -v rm)" "$cac_dir"
+
# Install the package by using 'rsync' and overwrite any existing files
# (excluding '/etc/').
rsync -HKav --exclude etc -- "$tar_dir/" "$KISS_ROOT/"
@@ -706,7 +709,7 @@ pkg_install() {
awk 'NR==FNR{lines[$0];next}!($0 in lines)' \
"$KISS_ROOT/$pkg_db/$pkg_name/manifest" "$cac_dir/m-$pkg_name" |
while read -r file; do
- [ -f "$KISS_ROOT/$file" ] && rm -f "$KISS_ROOT/$file"
+ [ -f "$KISS_ROOT/$file" ] && "$cac_dir/rm" -f "$KISS_ROOT/$file"
done
# Install the package again to fix any non-leftover files being
@@ -795,7 +798,7 @@ pkg_clean() {
rm -rf -- "$mak_dir" "$pkg_dir" "$tar_dir"
# Remove temporary files.
- (set +f; rm -f "$cac_dir/c-"* "$cac_dir/m-"*)
+ (set +f; rm -f "$cac_dir/c-"* "$cac_dir/m-"* "$cac_dir/rm")
}
root_check() {
@@ -965,7 +968,7 @@ args() {
# Print version and exit.
v*)
- log "kiss 0.5.6"
+ log "kiss 0.5.7"
;;
# Catch all invalid arguments as well as