tobi / disktree
git clone https://github.com/tobi/disktree.git
v0.11.0 · 17d ago
A treemap for finding and removing what fills your disk, for Omarchy. Rust + GPUI.
+128
stars, 24h · #102
+~896
stars, 7 days · #144
+3.2k
stars, 30 days · #171
3.4k
★ total · +38% this week
202
forks · 57 open issues
Star history (as recorded here)
LanguageRust
LicenseMIT
Created2026-09-24 (27d ago)
Last push17d ago
Watchers9
OwnerUser
Links
- GitHub: github.com/tobi/disktree
- Releases · Issues · Hacker News mentions
README excerpt
# disktree Find what is filling a disk, mark what should go, and remove it — with the volume's free space in view the whole time. disktree is a treemap for Omarchy. It scans your home directory by default, draws every directory as a nested mosaic sized by what it really costs on disk, and lets you walk into it with the keyboard or the mouse. Mark as much as you like; nothing happens until you review the list and commit, and the permanent path always asks first. Built with GPUI through gpui-omarchy, so it follows your Omarchy theme and behaves like the rest of the desktop. ## Install Download `disktree-*-x86_64-linux.tar.gz` (`aarch64-linux` on ARM) from the latest release, unpack it, and run `./install.sh` inside (or just copy `disktree` onto your `PATH`). Or build it: [code] `make install` builds a release binary and puts three things under `~/.local` (no root needed): - `~/.local/bin/disktree` - a desktop entry, so disktree is in the launcher and in a file manager's **Open with** for a directory (it adds a handler; it never becomes the default) - an icon `sudo make install PREFIX=/usr/local` installs system-wide; `make uninstall` removes exactly what was installed. On Arch, including Omarchy, disktree is in the AUR: `disktree` builds each release from source, and `disktree-bin` installs the release binary: [code] You need Rust 1.97 or newer and a Wayland or X11 session with a GPU that GPUI can drive (Vulkan). Distributions often package an older Rust; rustup installs a current one. The repo pins 1.97 in `rust-toolchain.toml`, so with rustup the right toolchain is fetched on the first build even if `rustup default` points at something older. ### macOS Download `disktree-*-aarch64-macos.zip` (`x86_64-macos` for an Intel Mac) from the latest release, unzip it, and drag `disktree.app` into Applications. macOS 11 or newer. A release that was not signed and notarized is stopped by Gatekeeper: macOS says it "is damaged and can't be opened" or "cannot be verified". The app is fine; the browser marked the download as quarantined. Clear the mark once: [code] (Or open it once, then choose **Open Anyway** in System Settings › Privacy & Security.) Or build it, with Rust 1.97 or newer and Xcode or its Command Line Tools. macOS does not come with Rust; install it with rustup. [code] To see everything, give disktree **Full Disk Access** in System Settings › Privacy & Security (the panel offers a button when it is missing), then reopen it. Without it macOS hides Mail, Messages, Safari, other apps' data and the Trash, and disktree counts them as unreadable. Started from a terminal, it is the terminal that needs the access. macOS also asks once each for Desktop, Documents and Downloads. What is different from Linux: - **Free space** is what `df` reports. Finder's figure is larger: it counts purgeable space (caches and local snapshots macOS will clear on its own). - **Cloned files** (copies APFS shares blocks between, as Finder's Duplicate makes) are e