From 7e3d12a4c41da813b4dd5d8c251d9025d5524d09 Mon Sep 17 00:00:00 2001 From: Shivam Mathur Date: Wed, 7 Jul 2021 19:33:10 +0530 Subject: [PATCH] Skip restoring existing libraries Cleanup add_library and its helper function in darwin.sh --- src/scripts/darwin.sh | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/scripts/darwin.sh b/src/scripts/darwin.sh index b1d0ea3..280fba9 100644 --- a/src/scripts/darwin.sh +++ b/src/scripts/darwin.sh @@ -66,11 +66,9 @@ setup_extensions() { add_library_helper() { dep_name=$1 cache_dir=$2 - sudo cp -R "$brew_cellar/$dep_name" "$cache_dir/" - sudo chmod -R 777 "$cache_dir/$dep_name" echo "$dep_name" | sudo tee -a "$cache_dir"/list >/dev/null 2>&1 ( - cd "$cache_dir" || exit 1 + cd "$brew_cellar" || exit 1 if command -v gtar >/dev/null; then sudo gtar -I "zstd -T0" -cf "$cache_dir"/"$dep_name".tar.zst "$dep_name" else @@ -90,16 +88,17 @@ add_library() { to_wait+=($!) done wait "${to_wait[@]}" - sudo rm -R -- "${cache_dir:?}"/*/ } restore_library_helper() { dep_name=$1 cache_dir=$2 - if command -v gtar >/dev/null; then - sudo gtar -I "zstd -d" -xf "$cache_dir"/"$dep_name".tar.zst -C "$brew_cellar" - else - sudo zstd -dq "$cache_dir"/"$dep_name".tar.zst && sudo tar -xf "$cache_dir"/"$dep_name".tar -C "$brew_cellar" + if ! [ -d "$brew_cellar/$dep_name" ]; then + if command -v gtar >/dev/null; then + sudo gtar -I "zstd -d" -xf "$cache_dir"/"$dep_name".tar.zst -C "$brew_cellar" + else + sudo zstd -dq "$cache_dir"/"$dep_name".tar.zst && sudo tar -xf "$cache_dir"/"$dep_name".tar -C "$brew_cellar" + fi fi if ! [ -d "$brew_prefix/opt/$dep_name" ]; then brew link --force --overwrite "$dep_name" 2>/dev/null || true