Thunar

Related articles
Xfce
File manager functionality
GNOME Files
PCManFM
Nemo
From the project
home page
:
Thunar is a modern file manager for the Xfce Desktop Environment. Thunar has been designed from the ground up to be fast and easy-to-use. Its user interface is clean and intuitive, and does not include any confusing or useless options by default. Thunar is fast and responsive with a good start up time and folder load time.
Installation
Install
the
thunar
package. Thunar is part of the
xfce4
group and the default file manager of the
Xfce
desktop environment.
Plugins and addons
Gnome Virtual File System
— If installed, Thunar will show the trash can, removable media, and remote filesystems (
mtp
/
smb
). See
File manager functionality#Mounting
for more details.
https://wiki.gnome.org/Projects/gvfs
||
gvfs
Thunar Archive Plugin
— Plugin which allows you to create and extract archive files using contextual menu items. It does not create or extract archives directly, but instead acts as a frontend for other programs such as File Roller (
file-roller
), Ark (
ark
), Xarchiver (
xarchiver
) or Engrampa (
engrampa
). Part of
xfce4-goodies
.
https://goodies.xfce.org/projects/thunar-plugins/thunar-archive-plugin
||
thunar-archive-plugin
Thunar Media Tags Plugin
— Plugin which allows you to view detailed information about media files. It also has a bulk renamer and allows editing of media tags. It supports ID3 (the MP3 file format's system) and Ogg/Vorbis tags. Part of
xfce4-goodies
.
https://goodies.xfce.org/projects/thunar-plugins/thunar-media-tags-plugin
||
thunar-media-tags-plugin
Thunar Shares Plugin
— Plugin which allows you to quickly share a folder using Samba from Thunar without requiring root access. See also
how to configure directions
.
https://goodies.xfce.org/projects/thunar-plugins/thunar-shares-plugin
||
thunar-shares-plugin
Thunar Volume Manager
— Automatic management of removable devices in Thunar. Part of
xfce4
.
https://goodies.xfce.org/projects/thunar-plugins/thunar-volman
||
thunar-volman
Tumbler
— External program to generate thumbnails. Also install
ffmpegthumbnailer
to enable video thumbnailing.
https://gitlab.xfce.org/xfce/tumbler
||
tumbler
libgsf
— The GNOME Structured File Library is a utility library for reading and writing structured file formats. Install if you need support for odf thumbnails.
https://directory.fsf.org/wiki/Libgsf
||
libgsf
RAW thumbnailer
— A lightweight and fast raw image thumbnailer that is needed to display raw thumbnails.
https://github.com/erlendd/raw-thumbnailer
||
raw-thumbnailer
AUR
Extra thumbnailers
— Customized thumbnailers for Tumbler.
https://docs.xfce.org/xfce/tumbler/available_plugins/
||
tumbler-extra-thumbnailers
AUR
Folder thumbnailer
— Support for custom folder thumbnails through Tumbler.
https://github.com/j-james/thunar-folder-thumbnails
||
tumbler-folder-thumbnailer
AUR
STL thumbnailer
— Support for generating STL thumbnails for Tumbler.
https://github.com/j-james/thunar-stl-thumbnails
||
tumbler-stl-thumbnailer
AUR
webp-pixbuf-loader
— Optional dep for
gdk-pixbuf2
which adds support for generating webp thumbnails to the default thumbnailers.
https://github.com/aruiz/webp-pixbuf-loader
||
webp-pixbuf-loader
Configuration
Configuring keybindings
To configure the keybindings, edit the file
~/.config/Thunar/accels.scm
. To configure Thunar's hidden variables, use
xfconf-query -c thunar -l -v
.
Change the default sorting behavior
In Thunar it is possible to change the default sorting order. The
/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/thunar.xml
file has to be edited, most likely even created. This is what the contents should be like for sort by name, ascending:
/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/thunar.xml
<?xml version="1.0" encoding="UTF-8"?>

<channel name="thunar" version="1.0">
  <property name="last-sort-order" type="string" value="GTK_SORT_ASCENDING" locked="*" unlocked="root"/>
  <property name="last-sort-column" type="string" value="THUNAR_COLUMN_NAME" locked="*" unlocked="root"/>
</channel>
Thunar Volume Manager
If both
gvfs
and
thunar-volman
are installed, Thunar can be configured to run commands automatically when media are connected. For mobile devices, which generally follow
MTP
, an additional
gvfs-mtp
package is required.
Tip
To let Thunar handle automatic mounting, one must launch thunar in
daemon mode
.
Configuration
It can also be configured to execute certain actions when cameras and audio players are connected. 
After installing the plugin:
Launch Thunar and go to
Edit > Preferences
Under the 'Advanced' tab, check 'Enable Volume Management'
Click configure and check the following items:
Mount removable drives when hot-plugged.
Mount removable media when inserted.
Also make desired changes (see the example below)
Here is an example setting for making Amarok play an audio CD.
Multimedia - Audio CDs:
amarok --cdplay %d
Custom actions
This section covers useful custom actions which can be accessed through
Edit -> Configure custom actions
and which are stored in
~/.config/Thunar/uca.xml
. More examples are listed in the
Thunar wiki
. Furthermore,
this
blog post provides a comprehensive collection of custom actions.
Open Terminal Here
Open Terminal Here is the sole action on installation. Tell
exo
which terminal to use:
~/.config/xfce4/helpers.rc
TerminalEmulator=
terminal
Name
Command
File patterns
Appears if selection contains
Open Terminal Here
exo-open --working-directory %f --launch TerminalEmulator
*
Directories
Search for files and folders
To use this action, you need to have
catfish
installed. The
plocate
and
zeitgeist
dependencies are optional for users that want to use a prebuilt index database.
Name
Command
File patterns
Appears if selection contains
Search
catfish --path=%f
*
Directories
Scan for viruses
To use this action, you need to have
clamav
and
clamtk
installed.
Name
Command
File patterns
Appears if selection contains
Scan for virus
clamtk %F
*
Select all
Link to Dropbox
Name
Command
File patterns
Appears if selection contains
Link to Dropbox
ln -s %f /path/to/DropboxFolder
*
Directories, other files
Please note that when using many custom actions to symlink files and folder to a particular place, it might be useful to put them into the
Send To
folder of the context menu to avoid that the menu itself gets bloated. This is fairly easy to achieve and requires a .desktop file in
~/.local/share/Thunar/sendto
for each action to perform. Say we want to put the above Dropbox symlink action into Send To, we create a
dropbox_folder.desktop
with the following content. The new applied action will be active after restarting Thunar.
[Desktop Entry]
Type=Application
Version=1.0
Encoding=UTF-8
Exec=ln -s %f /path/to/DropboxFolder
Icon=/usr/share/icons/dropbox.png
Name=Dropbox
Tips and tricks
Using Thunar to browse remote locations
Since Xfce 4.8 (Thunar 1.2) it is possible to browse remote locations (such as FTP servers or Samba shares) directly in Thunar. To enable this functionality, ensure that
gvfs
and
sshfs
(as well as
gvfs-smb
if you need SMB/CIFS support) are installed. A 'Network' entry is visible in Thunar's side bar and remote locations can be opened by using the following URI schemes in the location dialog (opened with
Ctrl+l
): smb://, ftp://, ssh://, sftp://, davs:// & followed by the server hostname or IP address.
There is no URI scheme for
NFS
shares, but Thunar can issue a
mount
command if you setup your
fstab
properly.
/etc/fstab
# nas1 server
nas1:/c/home		/media/nas1/home	nfs	noauto,user,_netdev,bg  0 0
What is important here is the
noauto
which prevents the share from being mounted until you click on it,
user
which allows any user to mount (and unmount) the share,
_netdev
which makes network connectivity a pre-requisite, and finally,
bg
which puts the mounting operation in the background so if your server requires some spin-up time, you will not have to deal with time out messages and re-clicking until it works.
Tip
If you want to permanently store passphrases of remote filesystem locations, you have to install
GNOME Keyring
.
It can be necessary to specify the mountpoint as a subfolder to
/media
in order for Thunar to display the new device for any non-root user.
Starting in daemon mode
Thunar may be run in daemon mode. This has several advantages, including a faster startup for Thunar, Thunar running in the background and only opening a window when necessary (for instance, when a flash drive is inserted), and letting Thunar handle automatic mounting of removable media.
Make sure the command
thunar --daemon
is autostarted on login. See
Xfce
and
Autostarting
for more details.
Solving problem with slow cold start
Some people still have problems with Thunar taking a long time to start for the first time. This is due to gvfs checking the network, preventing Thunar from starting until gvfs finishes its operations. To change this behaviour, edit
/usr/share/gvfs/mounts/network.mount
and change
AutoMount=true
to
AutoMount=false
.
Hide Shortcuts in Side Pane
There is a hidden menu to hide Shortcuts in the Side Pane.
Right click in the Side Pane where there are no shortcuts, like on the DEVICES section label. Then you will get a pop-up menu where you can uncheck items you do not want displayed.
Assign keyboard shortcuts in Thunar
See
GTK#Keyboard shortcuts
,
Showing partitions defined in fstab
By default, Thunar will not show in devices any partitions defined in
/etc/fstab
besides the root partition.
We can change that by adding the option
x-gvfs-show
to
fstab
for the partition we wish to show.
Troubleshooting
Tumblerd hangs up, uses too much CPU
Tumblerd, the service that watches the file system and notifies the system when a thumbnail needs to be made, may get stuck in a loop, using 100% of the system's CPU; see the
bug report
. The following script is a temporary workaround to stop this from happening. Copy, and paste this into a
.sh
file, save it somewhere in your home directory, mark the file as executable and then set up the system to autostart it at system startup.
#!/bin/bash
period=20
tumblerpath="/usr/lib/*/tumbler-1/tumblerd" # The * here should find the right one, whether 32 and 64-bit
cpu_threshold=50
mem_threshold=20
max_strikes=2                               # max number of above cpu/mem-threshold's in a row
log="/tmp/tumblerd-watcher.log"

if [[ -n "${log}" ]]; then
    cat /dev/null > "${log}"
    exec >"${log}" 2>&1
fi

strikes=0
while sleep "${period}"; do
    while read pid; do
	cpu_usage=$(ps --no-headers -o pcpu -f "${pid}"|cut -f1 -d.)
	mem_usage=$(ps --no-headers -o pmem -f "${pid}"|cut -f1 -d.)

	if [[ $cpu_usage -gt $cpu_threshold ]] || [[ $mem_usage -gt $mem_threshold ]]; then
	    echo "$(date +"%F %T") PID: $pid CPU: $cpu_usage/$cpu_threshold %cpu MEM: $mem_usage/$mem_threshold STRIKES: ${strikes} NPROCS: $(pgrep -c -f ${tumblerpath})"
	    (( strikes++ ))
	    if [[ ${strikes} -ge ${max_strikes} ]]; then
		kill "${pid}"
		echo "$(date +"%F %T") PID: $pid KILLED; NPROCS: $(pgrep -c -f ${tumblerpath})"
		strikes=0
	    fi
	else
	    strikes=0
	fi
    done < <(pgrep -f ${tumblerpath})
done
Trash/network icons disappear randomly
Make sure all Thunar instances start
after
gvfs
.
[1]
For
thunar --daemon
, you can create a wrapper that waits until GVFS is active:
Note
/usr/local/bin
should come before
/usr/bin
in
$PATH
.
/usr/local/bin/Thunar
#!/bin/bash
if [[ $1 == --daemon ]]; then
  until pgrep gvfs >/dev/null; do
    sleep 1
  done
  exec /usr/bin/Thunar "$@"
else
  exec /usr/bin/Thunar "$@"
fi
Not authenticated to mount filesystems
See
File manager functionality#Troubleshooting
.
Thunar new window or tab being too slow to open
It might be the case that you have many files under the folder that you have set to be the
XDG_TEMPLATES_DIR
. See
XDG user directories
.
The solution is to move files from whatever folder is the
XDG_TEMPLATES_DIR
to another one, or set the
XDG_TEMPLATES_DIR
to another folder.
See also
Thunar
project page
Thunar Volume Manager
project page
This
list
of plugins
Several settings, like showing the full path in the title, are available through
xfconf-query
. See
this list
for more details.