Repository navigation
DeepDriveCleaner 0.4.1
Fixes from a user's screen recording of the clean flow: Docker Desktop, items that would be skipped anyway, and what stays selected after a clean.
DeepDriveCleaner deletes files. It can remove almost anything it is told to, by you or by an agent acting for you. Use it at your own risk: nobody who made it is responsible for what it removes. Read DISCLAIMER.md.
- Docker prune runs only while Docker Desktop answers. Before it prunes, DeepDriveCleaner asks Docker Desktop for its engine version, and waits up to 5 seconds. If Docker Desktop is not running, does not answer, or has no
desktop-linuxcontext, the Docker item is skipped and says why. No prune command runs. The confirmation sheet predicts this before you clean. When a prune does fail, the result shows Docker's own last line, not just an exit code. - Clean is not offered when every item would be skipped. When the sheet's check finds that every item would be skipped, the Clean button is off. The sheet then says what to do: quit the named apps, wait for a process, start Docker Desktop, or Scan Again for items that changed since the scan. "Frees about" leaves out the items that would be skipped. Clean also waits for the check to finish, and the check has a Stop button.
- After a clean, only skips that can clear stay selected. An item stays selected only when one step of yours can clear its skip: an app was running, a process held the folder, or Docker Desktop was not answering. Items that changed since the scan, tool commands that already ran, and causes that never clear are deselected. The result says how many items stay selected. When some items changed, it offers Scan Again. A tool-cleaned row keeps a short note until the next scan, such as "Pruned 3 min ago".
- Fixes.
- An item that changed after the scan was skipped at every later clean, until a full scan. The report saved after a clean now holds what the clean's own check found.
- The confirmation sheet no longer shows an empty panel while it closes.
- For scripts.
ddc clean --jsonreports version 3: a skip reasontool-not-readywithprogramanddetail, and each tool command'soutput.--progress jsonevents are version 2, andactions.jsonllines are version 3. Seedocs/clean.schema.jsonanddocs/progress.schema.json.
Upgrading. Run brew upgrade --cask deepdrivecleaner. The upgrade quits the app. It opens again at your next login if Open at login is on, or when you open it yourself. Do not upgrade while the app is cleaning.
How it was built, decision by decision, is public too: DeepDriveCleaner-projectstore.
Install (Apple Silicon, macOS 26)
brew install --cask smartandpoint/tap/deepdrivecleaner
DeepDriveCleaner-0.4.1.zip is the app the cask installs. deepdrivecleaner-0.4.1-aarch64-apple-darwin.tar.gz is the command-line tool alone, for a manual install.
Build
- Commit:
fa7cff789d5bdd71ad72ec90ce0f465afcd77f17 - Toolchain:
rustc 1.99.1 (58cf8f9c3 2026-10-13) - Command-line tool:
RUSTFLAGS="--remap-path-prefix=$HOME=~" cargo build --release --locked --target aarch64-apple-darwin -p ddc-cli - App:
scripts/build-app.sh --dist(Release, the command-line tool inContents/Helpers) - Signed with the SmartAndPoint Developer ID (team
8MSDJTBW2D): the app ascom.smartandpoint.deepdrivecleaner, the command-line tool ascom.smartandpoint.deepdrivecleaner.cli. Notarized by Apple; the app's ticket is stapled - SHA-256 of
DeepDriveCleaner-0.4.1.zip:526eef1e6da117889e0a1d09718cea075d82f54446303c0c2e5c764bd5b8f908 - SHA-256 of
deepdrivecleaner-0.4.1-aarch64-apple-darwin.tar.gz:577d7b35360f15b0fc99eaa0fba999eacc9f5102452a8b02a399a460cdebc2f5