Use a public API to wrap rsync_* function

This commit is contained in:
Perdixky
2025-12-04 17:06:26 +08:00
parent 85892940b5
commit 8cfb3be4cd
2 changed files with 13 additions and 5 deletions
+1 -5
View File
@@ -30,11 +30,7 @@ esac
case "${SKIP_FISH}" in case "${SKIP_FISH}" in
true) sleep 0;; true) sleep 0;;
*) *)
# Use rsync with exclude to preserve user's custom conf.d directory install_dir__sync_exclude dots/.config/fish "$XDG_CONFIG_HOME"/fish "conf.d"
if [ -d "$XDG_CONFIG_HOME"/fish ];then
warning_overwrite
fi
rsync_dir__sync_exclude dots/.config/fish "$XDG_CONFIG_HOME"/fish "conf.d"
;; ;;
esac esac
+12
View File
@@ -137,6 +137,18 @@ function install_dir__skip_existed(){
v rsync_dir $s $t v rsync_dir $s $t
fi fi
} }
function install_dir__sync_exclude(){
# NOTE: Do not add prefix `v` or `x` when using this function
# Sync directory with exclude patterns
# Usage: install_dir__sync_exclude <src> <dest> <exclude_pattern1> [<exclude_pattern2> ...]
local s=$1
local t=$2
shift 2
if [ -d $t ];then
warning_overwrite
fi
rsync_dir__sync_exclude $s $t "$@"
}
function install_google_sans_flex(){ function install_google_sans_flex(){
local font_name="Google Sans Flex" local font_name="Google Sans Flex"
local src_name="google-sans-flex" local src_name="google-sans-flex"