Skip to content

Installs that never finished had left 3 GB behind on this Mac

Installers stage downloads in temp, staging and old folders, and an interrupted one leaves them for good. Measured: about 3 GB across four apps and tools.

5 min read

Installers rarely write straight into place. They download into a staging folder, check it, then move it. Updaters do the same, and apps changing their data format move the old copy aside. Each step has a cleanup at the end, and when the process is interrupted, the cleanup is the step that never runs.

LeftoverSizeWhat happened
~/.cache/codex-runtimes/codex-runtime-install-j4scDL1.88 GBAn install staged on 3 August; the working runtime was written three days later
~/Library/Caches/dev.kiro.desktop.ShipIt/update.gG1WpBW829 MBA downloaded app update that never applied
~/Library/Application Support/dev.warp.Warp-Stable/old226 MBData moved aside during a migration
/opt/homebrew/var/homebrew/tmp177 MBHomebrew's own temporary files

The names give them away

Leftovers follow a few naming patterns: a word like install, update, staging, tmp or incoming, usually followed by random characters, or a plain old or backup. Random characters mean a temporary name the installer meant to rename or remove.

find ~ -maxdepth 5 -type d \( -iname '*install-*' -o -iname '*staging*' -o -iname 'update.*' -o -name old -o -name '.tmp' -o -name '*.incoming' \) \
  -not -path '*/node_modules/*' 2>/dev/null | while read d; do du -sh "$d"; done | sort -h | tail

How to tell a leftover from a live folder

  • Compare dates. A staging folder older than the working install beside it is spare.
  • Check it is not in use. Quit the owning app first, and look for a lock or state file that names the folder.
  • Let the tool retry first. Relaunching the app or rerunning the installer often completes the step and removes the folder itself. If it does not, the folder is yours to remove.

Each of these has its own guide: Codex CLI, ShipIt update folders, terminal apps and the Homebrew var folder. macOS's own interrupted updates behave differently, in disk full after a macOS update.

Common questions

What happens to files when an install is interrupted on a Mac?

The staging folder the installer downloaded into is usually left behind, because removing it was the last step. On the Mac measured, leftovers came to about 3 GB.

How do I find leftover install folders?

Look for folder names containing install, staging, update, tmp or old, often with random characters. The find command in this guide lists them with sizes.

Is it safe to delete an install staging folder?

Yes, once the app or tool works and the staging folder is older than the real install. Quit the app first.

Why does an app keep a folder called old?

Apps move previous data aside when they migrate to a new format, so the change can be undone. It should be removed later but often is not.

Read next