Czkawka

A fast, multi-tool duplicate file finder with both a CLI and two GUI frontends (GTK4 and Slint), written entirely in Rust.

Czkawka (Polish for "hiccup") is a fast, free, and open-source tool for finding and removing unnecessary files from your system. Written entirely in Rust, it offers a CLI, a GTK4 desktop GUI, and a newer Slint-based GUI called Krokiet — all sharing the same czkawka_core library. With over 30k GitHub stars, it has become one of the most popular disk-cleanup utilities in the Linux ecosystem.

The project ships three distinct frontends: czkawka_cli for scripting and headless use, czkawka_gui (GTK4, now in maintenance mode), and Krokiet (Slint, the actively developed GUI). All three expose the same powerful scanning engine with multi-threading and a persistent cache for repeat scans.

Features

  • Duplicate files — Find duplicates by name, size, or cryptographic hash
  • Similar images — Perceptual hashing to detect near-identical images regardless of resize or compression
  • Similar videos — Frame-based comparison to surface duplicate video files
  • Same music — Match tracks by audio tags or content fingerprint
  • Empty folders and files — Locate and remove zero-byte files and empty directory trees
  • Temporary files — Identify leftover build artifacts, editor swap files, and other junk
  • Big files — List the largest files consuming disk space
  • Bad extensions — Flag files whose extensions don't match their actual content type
  • Broken files — Detect corrupted or unreadable files
  • Exif remover — Strip EXIF metadata from images in bulk
  • Invalid symbolic links — Find dangling symlinks pointing to non-existent targets
  • Multi-threaded scanning — Parallelised across all CPU cores with optional scan cache for fast repeat runs
  • Multiple frontends — Use czkawka_cli for automation or the GTK4/Slint GUIs for interactive cleanup

Installation

CLI

cargo install czkawka_cli

GUI (Flatpak — all distros)

# Krokiet (Slint GUI — actively maintained)
flatpak install flathub com.github.qarmin.krokiet

# Czkawka GTK4 GUI (maintenance mode)
flatpak install flathub com.github.qarmin.czkawka

Both GUI applications are available on Flathub.

Arch Linux

# CLI + GTK4 GUI
yay -S czkawka

# Krokiet (Slint GUI)
yay -S krokiet

Debian / Ubuntu · Fedora

Pre-built binaries for Linux (CLI and GUI) are available on the releases page. Download the appropriate archive, extract it, and place the binary on your $PATH.

# Debian / Ubuntu
# No official package — use the Flatpak above or download from the releases page.

# Fedora
# No official package — use the Flatpak above or download from the releases page.

Build from source

git clone https://github.com/qarmin/czkawka.git
cd czkawka

# CLI only
cargo build --release -p czkawka_cli

# GTK4 GUI (requires libgtk-4-dev)
cargo build --release -p czkawka_gui

# Krokiet (Slint GUI)
cargo build --release -p krokiet

Usage

Find duplicate files

# Scan home directory for duplicates by hash, print results to stdout
czkawka_cli duplicates --directories ~/

# Scan multiple directories, exclude a path, delete duplicates automatically
czkawka_cli duplicates \
  --directories ~/Documents ~/Downloads \
  --excluded-directories ~/.cache \
  --delete-method AEO   # AllExceptOldest

Find similar images

# Search for perceptually similar images (similarity threshold 10)
czkawka_cli similar-images --directories ~/Pictures --similarity-preset High

Find empty folders

czkawka_cli empty-folders --directories ~/Projects

Find the biggest files

# List the 25 largest files under /home
czkawka_cli biggest-files --directories /home --number-of-files 25

Find temporary files

czkawka_cli temporary --directories ~/

JSON output for scripting

# All subcommands support --json for machine-readable output
czkawka_cli duplicates --directories ~/ --json > duplicates.json

Interactive GUI

Launch Krokiet or czkawka_gui from your application launcher or run:

krokiet      # Slint GUI
czkawka_gui  # GTK4 GUI

Select one or more directories in the sidebar, choose a scan type from the left panel, click Search, review the results, and use the action buttons to move, delete, or hardlink the unwanted files.

Czkawka vs similar tools

FeatureCzkawkafdupesrmlint
LanguageRustCC
GUI✅ (GTK4 + Slint)
Similar images
Similar videos
Music dedup
Scan cache
JSON output
Flatpak