Catfish — easily find stuff in Thunar

[ Wednesday, 2 April 2008, dhor ]

One could ask, ‘What am I supposed to do when I want to find a file, if I am using XFCE, and Thunar is my conscious choice as the file manager?’. It seems to be obvious to click with the right-mouse-button on the folder in which something to be found is expected to exist and to choose the option ‘search’ from the context menu. Thunar bets, however, on the user’s mental powers and creativeness.

Available options are:
- no ‘search’ option in Thunar’s menu,
- a keyboard shortcut such as ctrl+f which moves us just to the name of the file/folder in Thunar’s current directory,
- adding an external program to Thunar’s menu which will be responsible for searching

Naturally the third option is the best one, so we should act as follows: we shall open Thunar, go to Edit->Configure custom actions and… that’s it! We add a tiny program that will help us to go through vast sectors of our hard drives. This program is called catfish and it is a tiny application written in Python (that is the only blemish about it). Its amount of options is not too immense so you will not feel overwhelmed. It is simply a quite convenient and handy tool as far as fast file location is concerned.

One can demand the file’s name to be matched precisely (Exact match), or for the amount of results to be limited (Limit results). You are also able to choose the method of searching (Search method – find, locate, slocate).


Anyone who performed the above instructions without reading the text to the very end is welcomed again! As far as Ubuntu, you can install Catfish with the standard:

sudo apt-get install catfish

(Feisty and Gutsy no longer current version 0.1, Hardy version 0.3)

…you will not succeed as a Debian user, as Catfish is not available in the repo. What is remaining is compilation, and if you do not have the *-dev packages or you do not want to install them (lack of free space), you can use the package for Hardy Heron. After downloading it, we install it with dpkg –install catfish_and_so_on.deb, or with gdebi. Should you experience any problems concerning resolution of the dependencies, you can fix them with apt-get -f install.

This package should work properly on Sid, but elder versions of Debian may require more individual treatment. You will have to add a new line to /etc/apt/sources.list:

# echo deb-src unstable main contrib non-free >> /etc/apt/sources.list

What you should do next is rather obvious now: you have to sync your package database and resolve the dependencies:

# apt-get update && apt-get build-dep catfish

After that you can download the sources and create the package:

$ apt-get source -b catfish

What remains is to install catfish:

# dpkg -i *deb

Yet another piece of advice on what to type as a command while configuring custom actions:

catfish --path=%F

In such a way, Catfish will be run with the path to the marked folder and we will be able to go through it.

Two things that ruin the reputation of this tool:
- its Python process consumes about 18 Mb of RAM
- no date searching

But I won’t complain. During working hours I still use terminal, grep, find and other magic formulas.

This article is a translation of the text Catfish – w służbie ludzkości, published on author’s blog in Polish.
Translated by Filip Paluba proof-read by Jake Conroy

About the Author

Dariusz Duma

Debian user. Age: undefined. Cannot swim. Likes biking and hiking but has no time for it. Blogs on Linux and life on

New AdTaily ads!

Are you a film buff?

film buffs community, movie recommendations and reviews

RSS: Comments

You can follow the comments to this article through a special channel RSS 2.0 .

Related articles: Window managers

 more »

PolishLinux Top Content

Become our fan on Facebook! on Facebook

Follow PolishLinux on Twitter!

Follow polishlinux on Twitter

Google Ads