# GNOME Files

GNOME Files, formerly and internally known as Nautilus, is the official file manager for the GNOME desktop. GNOME Files, same as Nautilus, is a free and open-source software under the terms of the GNU Lesser General Public License.

## History

Nautilus, the predecessor of the GNOME Files, was originally developed by Eazel and Andy Hertzfeld (founder of Eazel and a former Apple engineer) in 1999. The name "Nautilus" was a play on words, evoking the shell of a nautilus to represent an operating system shell.
At the beginning of 2000, Richard Hestgray published the first screenshots of Nautilus 0.1 preview release:
* Nautilus 0.1 (February 2000)
* About dialog of version 0.1.
* Main window of the same version, the very first one shown publicly.
In December 2000, article under the title «Nautilus, GNOME’s new file manager» was published in the Linux Magazine.
   The Nautilus Desktop Shell is intended to supersede the GMC file manager (which was derived from the venerable Midnight Commander) in new versions of GNOME. What looks superficially like Yet Another File Manager appears at second glance to be a great deal more.
Nautilus replaced Midnight Commander in GNOME 1.4 (2001) and has been the default file manager from version 2.0 onwards. Nautilus was the flagship product of the now-defunct Eazel Inc.
GNOME Files was first released in 2001 and development has continued ever since. The following is a brief timeline of its development history:
* Version 1.0 was released on March 13, 2001, and incorporated into GNOME 1.4.
* Version 2.0 was a port to GTK+ 2.0.
* Version 2.2 included changes to make it more compliant with User Interface Guidelines.
* Version 2.4 switched the desktop folder to ~/Desktop (the ~ represents the user's "Home" folder) to be compliant with freedesktop.org standards.
* In the version included with GNOME 2.6, Nautilus switched to a spatial interface. Several Linux distributions have made "browser" mode the default. The "classic" interface is still available:
** By a filing cabinet shaped icon.
** By an option in the "Edit -> Preferences -> Behavior" menu in Nautilus.
** In a folder's context menu.
** By using the "--browser" switch when started by a command via a launcher or shell.
* GNOME 2.14 introduced a version of Nautilus with improved searching, integrated optional Beagle support and the ability to save searches as virtual folders.
* With the release of GNOME 2.22, Nautilus was ported to the newly introduced GVfs, the replacement virtual file system for the aging GnomeVFS.
* The 2.24 stable release of Nautilus adds some new features, mainly tabbed browsing and better tab completion.
* With GNOME 2.30, Nautilus reverted from a spatial interface to a browser navigational model by default.
* The 2.32 release introduced a dialog for handling conflicts when performing copy or move operations, transparency icon effect when cutting files into folder and enhanced the Wastebucket with Restore files. Besides, this is the last version that is based on GTK2 before the move to GNOME 3.0 with GTK3. Nautilus 2.x was forked to Caja, as well as MATE Desktop from Gnome 2.x after Gnome 3.0. Today both Mate and Caja are based on GTK3.
* GNOME 3.0 completely revamped the UX of Nautilus with focus on sidebar and icons. Additionally, the Connect to Server dialog is also enhanced. Nautilus was ported to GTK3.
* Version 3.4 added Undo functionality.
* Version 3.6 introduced a revamped UI design, symbolic sidebar icon, new search feature, removal of many features such as setting window background, emblems, split pane mode, spatial mode, scripts, compact view mode and tree view. Nautilus' application name was renamed to Files, Though it is still called Nautilus internally in some distributions. These major changes led to a lot of criticism, and various vendors such as Linux Mint decided to fork version 3.4.
* Version 3.8 included a new option to view files and folders as a tree, a new Connect to Server item in the sidebar and incremental loading of search results.
* Version 3.10 introduced a slightly revamped UI design in which titlebars and toolbars were merged into a single element called header bars.
* Version 3.18 introduced integration with Google Drive and GOA (gnome-online-accounts) settings.

## Features

Bookmarks, window backgrounds, notes, and add-on scripts are all implemented, and the user has the choice between icon, list, or compact list views. In browser mode, Nautilus keeps a history of visited folders, similar to web browsers, permitting quick revisiting of folders.
Nautilus can display previews of files in their icons, be they text files, images, sound or video files via thumbnailers such as Totem. Audio files are previewed (played back over GStreamer) when the pointer is hovering over them.
In earlier versions, Nautilus included original vectorized icons designed by Susan Kare.

### File system abstraction

GNOME Files relies on a file system abstraction layer (provided by GVfs) to browse local and remote file systems, including but not limited to FTP sites, Windows SMB shares, OBEX protocol (often implemented on cellphones), files transferred over shell protocol, HTTP and WebDAV and SFTP servers.
Using the GIO library, Nautilus tracks modification of local files in real time, eliminating the need to refresh the display. GIO internally supports Gamin and FAM, Linux's inotify and Solaris' File Events Notification system.

### File indexing and file search framework

GNOME Files relies on Tracker (formerly named "MetaTracker") to index files and is hence able to provide fast file search results.

### Batch renaming

Batch renaming was introduced with GNOME Files version 3.22 (2016).

### Archive handling

GNOME Files version 3.22 adds native, integrated file compression and decompression. By default, handling of archive files (e.g. .tar.gz) was handed off to File Roller (or another tool). Users now benefit from a progress bar, undo support, and an archive creation wizard.
The new "extract on open" behavior, which automatically extracts an archive file by double clicking it, can be disabled in the preferences.

### MIME types

MIME types (also called "media type" or "content type") are standardized by the IANA, then the freedesktop.org project takes care that the implementation works across all free software desktops. shared-mime-info is the provided library. At this time, at least GNOME, KDE, Xfce and ROX use this database.