From da73cb901e700bd259302346edaa2fe87b580514 Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 13 Dec 2025 13:37:41 +0800 Subject: [PATCH] feat: Add local APFS snapshot cleanup, optimize Homebrew health check, and enhance UI feedback for various operations --- bin/clean.sh | 1 + lib/check/all.sh | 38 +++-------- lib/check/health_json.sh | 1 + lib/clean/dev.sh | 41 ++++++++++- lib/clean/system.sh | 73 ++++++++++++++++++++ lib/clean/user.sh | 143 ++++++++++++++++++++++++++++----------- lib/manage/update.sh | 4 ++ 7 files changed, 229 insertions(+), 72 deletions(-) diff --git a/bin/clean.sh b/bin/clean.sh index 8560a46..0b91307 100755 --- a/bin/clean.sh +++ b/bin/clean.sh @@ -596,6 +596,7 @@ perform_cleanup() { start_section "Deep system" # Deep system cleanup (delegated to clean_system module) clean_deep_system + clean_local_snapshots end_section fi diff --git a/lib/check/all.sh b/lib/check/all.sh index 10fe730..09e2be2 100644 --- a/lib/check/all.sh +++ b/lib/check/all.sh @@ -283,7 +283,7 @@ get_software_updates() { # Show spinner while checking (only on first call) local show_spinner=false if [[ -t 1 && -z "${SOFTWAREUPDATE_SPINNER_SHOWN:-}" ]]; then - start_inline_spinner "Checking system updates..." + start_inline_spinner "Checking system updates (querying Apple servers)..." show_spinner=true export SOFTWAREUPDATE_SPINNER_SHOWN="true" fi @@ -305,7 +305,7 @@ check_appstore_updates() { local spinner_started=false if [[ -t 1 ]]; then printf " Checking App Store updates...\r" - start_inline_spinner "Checking App Store updates..." + start_inline_spinner "Checking App Store updates (querying Apple servers)..." spinner_started=true export SOFTWAREUPDATE_SPINNER_SHOWN="external" else @@ -329,7 +329,7 @@ check_appstore_updates() { if [[ $update_count -gt 0 ]]; then echo -e " ${YELLOW}${ICON_WARNING}${NC} App Store ${YELLOW}${update_count} apps${NC} need update" - echo -e " ${GRAY}Run: ${GREEN}softwareupdate -i