I am so desperate to use Nautilus File Manager 3.6 or above in Ubuntu 12.04 LTS. I have tried a lot of ways but finally tired to ask this question.

  • I went for this link: How do I install Nautilus 3.6 in 12.10? but it was not my solution.

  • I tried to install using binary package downloaded from here but it was so difficult to resolve all dependency packages. The list was not going to end.

  • I tried to add repository: ppa:gnome3-team/gnome3 but it says: nautilus is already the newest version.

Nautilus is by default in Ubuntu 13.04. Its features like search files and folder and lighting speed make me mad. But unfortunately I want to stick with Ubuntu LTS version.


I don't know how but following link shows Files (Nautilus) 3.6 installed in Ubuntu 12.04 :

Files (Nautilus) 3.6.0 Final Available for Download


Now my excitement has reached to its peak. Is there really a way to install latest version in Ubuntu 12.04?

Any help will be greatly appreciated. Thanks in advance!!

Edit: Tried to install as suggested by Roman Raguet

  1. First step executed without any error and installed listed packages successfully.

  2. When executed 2nd step: sudo apt-get build-dep nautilus got following error:

    E: Unable to find a source package for nautilus

    so thought to skip this and continue with next step.

  3. 3rd step also executed successfully and downloaded and installed around 40 to 50 Mb of packages.

  4. Skipped 4th step, thought it as not that much important(ok if trash icon doesn't appear).

  5. Finished 5th, 6th and 7th step and reached to 8th step.

  6. When compiled using ./configure got errors as shown following:

    saurav@saurav-P4I45Gx-PE:~/Downloads/src/nautilus-3.6.3$ ./configure
    checking for a BSD-compatible install... /usr/bin/install -c
    checking whether build environment is sane... yes
    checking for a thread-safe mkdir -p... /bin/mkdir -p
    checking for gawk... gawk
    checking whether make sets $(MAKE)... yes
    checking how to create a ustar tar archive... gnutar
    checking whether make supports nested variables... yes
    checking whether to enable maintainer-specific portions of Makefiles... yes
    checking for style of include used by make... GNU
    checking for gcc... gcc
    checking whether the C compiler works... yes
    checking for C compiler default output file name... a.out
    checking for suffix of executables... 
    checking whether we are cross compiling... no
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether gcc accepts -g... yes
    checking for gcc option to accept ISO C89... none needed
    checking dependency style of gcc... gcc3
    checking how to run the C preprocessor... gcc -E
    checking for grep that handles long lines and -e... /bin/grep
    checking for egrep... /bin/grep -E
    checking for ANSI C header files... yes
    checking for sys/types.h... yes
    checking for sys/stat.h... yes
    checking for stdlib.h... yes
    checking for string.h... yes
    checking for memory.h... yes
    checking for strings.h... yes
    checking for inttypes.h... yes
    checking for stdint.h... yes
    checking for unistd.h... yes
    checking whether byte ordering is bigendian... no
    checking for an ANSI C-conforming const... yes
    checking for gcc... (cached) gcc
    checking whether we are using the GNU C compiler... (cached) yes
    checking whether gcc accepts -g... (cached) yes
    checking for gcc option to accept ISO C89... (cached) none needed
    checking dependency style of gcc... (cached) gcc3
    checking how to run the C preprocessor... gcc -E
    checking whether ln -s works... yes
    checking whether make sets $(MAKE)... (cached) yes
    checking build system type... i686-pc-linux-gnu
    checking host system type... i686-pc-linux-gnu
    checking how to print strings... printf
    checking for a sed that does not truncate output... /bin/sed
    checking for fgrep... /bin/grep -F
    checking for ld used by gcc... /usr/bin/ld
    checking if the linker (/usr/bin/ld) is GNU ld... yes
    checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
    checking the name lister (/usr/bin/nm -B) interface... BSD nm
    checking the maximum length of command line arguments... 1572864
    checking whether the shell understands some XSI constructs... yes
    checking whether the shell understands "+="... yes
    checking how to convert i686-pc-linux-gnu file names to i686-pc-linux-gnu format... func_convert_file_noop
    checking how to convert i686-pc-linux-gnu file names to toolchain format... func_convert_file_noop
    checking for /usr/bin/ld option to reload object files... -r
    checking for objdump... objdump
    checking how to recognize dependent libraries... pass_all
    checking for dlltool... dlltool
    checking how to associate runtime and link libraries... printf %s\n
    checking for ar... ar
    checking for archiver @FILE support... @
    checking for strip... strip
    checking for ranlib... ranlib
    checking command to parse /usr/bin/nm -B output from gcc object... ok
    checking for sysroot... no
    checking for mt... mt
    checking if mt is a manifest tool... no
    checking for dlfcn.h... yes
    checking for objdir... .libs
    checking if gcc supports -fno-rtti -fno-exceptions... no
    checking for gcc option to produce PIC... -fPIC -DPIC
    checking if gcc PIC flag -fPIC -DPIC works... yes
    checking if gcc static flag -static works... yes
    checking if gcc supports -c -o file.o... yes
    checking if gcc supports -c -o file.o... (cached) yes
    checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
    checking whether -lc should be explicitly linked in... no
    checking dynamic linker characteristics... GNU/Linux ld.so
    checking how to hardcode library paths into programs... immediate
    checking whether stripping libraries is possible... yes
    checking if libtool supports shared libraries... yes
    checking whether to build shared libraries... yes
    checking whether to build static libraries... no
    checking for pkg-config... /usr/bin/pkg-config
    checking for floor in -lm... yes
    checking locale.h usability... yes
    checking locale.h presence... yes
    checking for locale.h... yes
    checking for LC_MESSAGES... yes
    checking libintl.h usability... yes
    checking libintl.h presence... yes
    checking for libintl.h... yes
    checking for ngettext in libc... yes
    checking for dgettext in libc... yes
    checking for bind_textdomain_codeset... yes
    checking for msgfmt... /usr/bin/msgfmt
    checking for dcgettext... yes
    checking if msgfmt accepts -c... yes
    checking for gmsgfmt... /usr/bin/msgfmt
    checking for xgettext... /usr/bin/xgettext
    checking pkg-config is at least version 0.16... yes
    checking whether NLS is requested... yes
    checking for intltool >= 0.40.1... 0.50.2 found
    checking for intltool-update... /usr/bin/intltool-update
    checking for intltool-merge... /usr/bin/intltool-merge
    checking for intltool-extract... /usr/bin/intltool-extract
    checking for xgettext... (cached) /usr/bin/xgettext
    checking for msgmerge... /usr/bin/msgmerge
    checking for msgfmt... (cached) /usr/bin/msgfmt
    checking for gmsgfmt... (cached) /usr/bin/msgfmt
    checking for perl... /usr/bin/perl
    checking for perl >= 5.8.1... 5.14.2
    checking for XML::Parser... ok
    checking for gtkdoc-check... no
    checking for gtkdoc-rebase... no
    checking for gtkdoc-mkpdf... no
    checking whether to build gtk-doc documentation... no
    checking for perl5... no
    checking for perl... perl
    checking for glib-genmarshal... /usr/bin/glib-genmarshal
    checking sys/mount.h usability... yes
    checking sys/mount.h presence... yes
    checking for sys/mount.h... yes
    checking sys/vfs.h usability... yes
    checking sys/vfs.h presence... yes
    checking for sys/vfs.h... yes
    checking sys/param.h usability... yes
    checking sys/param.h presence... yes
    checking for sys/param.h... yes
    checking malloc.h usability... yes
    checking malloc.h presence... yes
    checking for malloc.h... yes
    checking for mallopt... yes
    checking for EXIF... yes
    checking for EXEMPI... yes
    checking for is_selinux_enabled in -lselinux... no
    checking for more warnings... no
    checking for TRACKER... yes
    checking for BASE... no
    configure: error: Package requirements (
        gtk+-3.0 >= 3.5.12
        glib-2.0 >= 2.33.13
    ) were not met:
    No package 'gtk+-3.0' found
    Consider adjusting the PKG_CONFIG_PATH environment variable if you
    installed software in a non-standard prefix.
    Alternatively, you may set the environment variables BASE_CFLAGS
    and BASE_LIBS to avoid the need to call pkg-config.
    See the pkg-config man page for more details.
  • To compile, you could resolve dependencies like so, sudo apt-get build-dep nautilus? – blade19899 Sep 12 '13 at 11:53
  • It says: E: Unable to find a source package for nautilus Do I need to add some repository? I tried adding: ppa:gnome3-team/gnome3 , ppa:ricotz/stating and ppa:ricotz/testing but no result! Did you install it in Ubuntu 12.04? – Saurav Kumar Sep 12 '13 at 12:07
  • I dont think that nautilus under 12.04 is supported. Edit I dont know how, but softpedia got it to work? - news.softpedia.com/news/… – blade19899 Sep 12 '13 at 12:19
  • @blade19899: I don't know how did they install in Ubuntu 12.04. The download they are providing is nothing but the binary package which I've already used to install it.. :( – Saurav Kumar Sep 12 '13 at 13:24

You can try to upgrade several important packages (gtk, glib, etc.) from the ricotz/testing ppa, then compile Nautilus 3.6 from source.

NOTE: Due to you are going to upgrade several important packages of your system, I strongly recommend to do this in a Virtual Machine or in a Test Machine only for testing purposes to see is everything is OK.

Make sure you have enable the "Source code repository"

In the Menu Bar choose Edit -> Software Sources. Click to enable "Source code repository". Just in case I use the "Main Server" to Download.

enter image description here


  • sudo apt-get update

1) Open a Terminal and install the following packages.

  • sudo apt-get install build-essential libtracker-sparql-0.14-dev wget

2) Install build dependencies.

  • sudo apt-get build-dep nautilus

3) Add ricotz ppa and upgrade the system.

  • sudo add-apt-repository ppa:ricotz/testing

  • sudo apt-get update && sudo apt-get upgrade

  • sudo apt-get dist-upgrade

4) Trash-Full icon in nautilus-places.

Nautilus 3.6.3 use the following icon for the trash-full (user-trash-full-symbolic.svg), not present by default in Ubuntu 12.04.
You can grab the icon from Ubuntu 13.04 to put it in /usr/share/icons/gnome/scalable/status/ directory.

To avoid this:

enter image description here

Once you have the correct icon type in the Terminal.

  • sudo mv /path/to/trash/image/user-trash-full-symbolic.svg /usr/share/icons/gnome/scalable/status/
  • sudo chmod 644 /usr/share/icons/gnome/scalable/status/user-trash-full-symbolic.svg
  • sudo gtk-update-icon-cache /usr/share/icons/gnome/

To look like this:

enter image description here

5) Create a folder to download the source code.

  • mkdir ~/Downloads/src

  • cd ~/Downloads/src

6) Download the nautilus 3.6.3 (raring) source code from Launchpad.

  • wget https://launchpad.net/ubuntu/raring/+source/nautilus/1:3.6.3-0ubuntu16/+files/nautilus_3.6.3.orig.tar.xz

7) Extract the source code.

  • tar -xvf nautilus_3.6.3.orig.tar.xz

8) Basic steps to compile & install. (You can change the steps according to your needs, add prefix etc.).

  • cd nautilus-3.6.3/

  • ./configure

  • make

  • sudo make install

9) Kill nautilus.

  • pkill nautilus

10) Just in case... set default prefereces like show-desktop-icons, no show trash-icon in desktop, etc.

  • gsettings set org.gnome.nautilus.desktop trash-icon-visible false

  • gsettings set org.gnome.nautilus.desktop home-icon-visible false

  • gsettings set org.gnome.desktop.background show-desktop-icons true

11) Finally reboot the system to see the changes.


enter image description here

Hope this helps.

  • Please give a look at my edit.. – Saurav Kumar Oct 6 '13 at 8:39
  • 1
    @SauravKumar... I Edited my asnswer. – Roman Raguet Oct 6 '13 at 11:37
  • You are genius.. :D Thanks you so much.. I successfully installed nautilus 3.6.x. I got some unmet dependencies while executing sudo apt-get build-dep nautilus but that was not a problem, I solved it using Synaptic and after that everything runs so smoothly.. Thanks a ton to you.. :D – Saurav Kumar Oct 6 '13 at 12:18
  • Glad to help!.. but remember I strongly recommend only for testing purposes..due to the critical packages upgraded in your system. – Roman Raguet Oct 6 '13 at 12:20
  • @SauravKumar does nautilus3.6.x work well in ubuntu12.04 ? I wanna install too. – David Jan 16 '14 at 8:37

protected by Community Dec 28 '13 at 0:01

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.