1
0
mirror of https://codeberg.org/kiss-community/kiss synced 2024-12-25 00:20:05 -07:00

kiss: Safeguard against musl breakage.

This commit is contained in:
Dylan Araps 2019-07-20 19:08:35 +03:00
parent 863c943350
commit 80ab96b926

13
kiss
View File

@ -600,6 +600,9 @@ pkg_remove() {
cp "$(command -v rm)" "$cac_dir" cp "$(command -v rm)" "$cac_dir"
cp "$(command -v rmdir)" "$cac_dir" cp "$(command -v rmdir)" "$cac_dir"
# Don't remove `musl`. This safegaurds against breaking the system.
[ "$1" != musl ] || return 0
# The package is not installed, don't do anything. # The package is not installed, don't do anything.
pkg_list "$1" >/dev/null || { pkg_list "$1" >/dev/null || {
log "[$1]: Not installed." log "[$1]: Not installed."
@ -719,10 +722,16 @@ pkg_install() {
# an incomplete package installed. # an incomplete package installed.
trap '' INT trap '' INT
# Don't ignore existing files when installing `musl`.
case $pkg_name in
musl) rsync_ignore= ;;
*) rsync_ignore=--ignore-existing ;;
esac
# "Install" the package using 'rsync'. None of the coreutils could # "Install" the package using 'rsync'. None of the coreutils could
# correctly accomplish this task. The preservation of permissions, # correctly accomplish this task. The preservation of permissions,
# proper handling of existing files etc. # proper handling of existing files etc.
"$cac_dir/rsync" --ignore-existing -a "$tar_dir/" "$KISS_ROOT/" "$cac_dir/rsync" "$rsync_ignore" -a "$tar_dir/" "$KISS_ROOT/"
# Reset 'trap' to its original value. Installation is done so # Reset 'trap' to its original value. Installation is done so
# we no longer need to block 'Ctrl+C'. # we no longer need to block 'Ctrl+C'.
@ -952,7 +961,7 @@ args() {
# Print version and exit. # Print version and exit.
v*) v*)
log "$kiss 0.4.1" log "$kiss 0.4.2"
;; ;;
# Catch all invalid arguments as well as # Catch all invalid arguments as well as