Sombrero File Search
Sombrero File Search icon

Find every file. Know when you can’t.

Native file search for Linux, by name, by content, boolean and inside documents. Live and index-free. When it could not look somewhere, it says so.

Download AppImage latest .deb for Debian / Ubuntu / Mint

Free software, GPL-3.0-or-later. AppImage runs on any distro with nothing to install. Windows build coming.

Name → content inside documents (PDF/ODT) → boolean expression. Live, no index.
The thesis

A search that says “0 results” without looking is lying.

A folder that denied reading, a disk that was not mounted, a NAS that stopped answering, a typo in the path: every one of these used to look exactly like “the file is not there”.

Sombrero routes every loss of completeness through a single channel. The GUI status bar, the CLI, the JSON stream and the exit code all read from it, so a new kind of loss shows up everywhere at once.

0found
1looked everywhere, nothing found
2the result may be wrong: something could not be searched
Disk-aware, and measured

One mechanical head, one process.

Built on, and for, a home server with a dozen mechanical disks, SMR drives on USB and network mounts that sometimes die. Roots are grouped by the physical disk behind them, and each disk class gets the thread pool it can actually use. Every number was measured on cold cache.

1 094 s→80 s

Same search over a 10-mount archive: a single process with 24 threads, against one process per disk.

Disk / operation1 thread4 threadsFull pool (24)Policy
NVMe, name search (/usr, 92 680 hits)5.2 s1.5 s0.5 sSSD: full pool
SMR 8 TB, name search (2.76 M inodes)35 s38 s39 sRotational, names: 1 thread
SMR 8 TB, content search (25 k files)36 s30 s29 sRotational, content: full pool
Features

Searches like Agent Ransack, native to Linux.

Name + content

Glob or regex, plain text or regex, highlighted in the preview.

Boolean

(note OR report) AND patient NOT draft, with parentheses and quoted phrases.

Inside documents

PDF, docx, odt, epub and zip, through a bundled ripgrep-all. No pandoc needed.

Media preview

Thumbnails and an audio/video player right in the results.

Tabs & export

Search tabs, saved searches, history, CSV/JSON export, light and dark theme.

Safe copy

Never moves or deletes. Checks free space, FAT32 limits and illegal names before writing.

Duplicates

Finds byte-identical groups and never deletes. Which copy goes is your call.

Matching CLI

Same engine. --print0 for pipelines, --json for scripts, --nice-io for cron.

Duplicate finder

Find the copies eating your disks.

Point it at one folder or at every disk. It returns groups of byte-identical files, sorted by the space they waste, with the disk each copy lives on. Export the list to CSV or JSON and decide calmly.

Hard links are recognized as the same file, not as duplicates: reporting them would invite you to delete something that takes no extra space.

  1. Same file?Hard links are grouped first and counted once.
  2. Same size?Free: the size is already known. Unique sizes drop out.
  3. Same beginning?BLAKE2b of the first 64 KiB rules out most candidates without reading whole files.
  4. Same content.Full BLAKE2b only for the survivors, read one disk at a time so mechanical heads do not fight.
Read-only by design

It searches. It does not manage your files.

Sombrero is not a file manager. It has no button to move, rename or delete anything, so a search can never cost you data.

Never moves or deletes

There is no move, rename or delete anywhere in the program. Decisions about your files stay in your file manager, with you.

Copies leave the original alone

Copying only creates new files. The source is never touched, and an existing file at the destination is skipped unless you choose to overwrite it.

Duplicates, shown, never removed

It finds byte-identical copies and lists them. Which one goes is your call, made somewhere else.

Install

Pick your way in.

AppImage any distro

Nothing to install. Python, PySide6, rg, fd and rga are bundled.

chmod +x Sombrero_File_Search-*.AppImage
./Sombrero_File_Search-*.AppImage

.deb Debian · Ubuntu · Mint

Thin package. --setup-gui builds the GUI environment in your home.

sudo apt install ./sombrero-file-search_*_all.deb

From source no root

Installs into ~/.local. Works on immutable distros too.

git clone https://github.com/Thiopental1976/sombrero-file-search.git
cd sombrero-file-search && ./install.sh

Windows Coming

A portable build is in testing: unzip and run, no administrator rights needed.

Full guide in the manual. No Flatpak on purpose: a tool that sweeps the whole disk does not belong in a sandbox.