Friday, October 30, 2015

Install Nemo With Unity Patches (And Without Cinnamon Dependencies) In Ubuntu

Nemo, the default Cinnamon file manager, needs Cinnamon to be installed, even if you want to use it in some other desktop environment such as GNOME/Unity. That's not the only issue that makes using the latest Nemo under Unity difficult - Cinnamon 2.0 breaks Unity in Ubuntu 13.10, Nemo no longer draws the desktop icons and so on.

nemo file manager ubuntu unity

I wanted to use the latest Nemo under Unity, but without Cinnamon dependencies so I used the Nautilus Unity patches modified for Nemo by Jacob Zimmermann, which I updated to work with the latest Nemo 2.0.3, and I also added some extra patches to remove the Cinnamon dependencies (except for cinnamon-translations but that shouldn't be an issue), re-enable Nemo to handle the desktop icons and allow Nemo to use GNOME Control Center to change the desktop background or set a picture as wallpaper via context menu.

Since some of you might want to use this modified Nemo in Unity, I uploaded  it along with its extensions to a PPA, so you can easily install and use it under Unity (Ubuntu 15.04, 14.10, 14.04 and 12.04).

With these changes, you can completely replace Nautilus with Nemo in Unity, without having to install Cinnamon. Why use Nemo? Well, Nemo comes with a huge number of features that no longer exist in Nautilus as well as some new ones:
  • Extra Pane feature (can be enabled via View menu or using the F3 key) as well as an option to always start in split-pane mode;
  • Unified, configurable toolbar: you can add/remove the following: up icon, refresh icon, toggle button for the location bar / path bar, home icon, computer icon and search icon;
  • Treeview sidebar option;
  • Detachable tabs;
  • Re-worked statusbar with zoom controls as well as options to toggle displaying the places sidebar, treeview or completely hide the sidebar;
  • The  main toolbar, menubar and statusbar can be hidden;
  • Option to show the full path in the titlebar and tab bars;
  • Displays an "elevated privileges" banner when running as root;
  • Built in "Open as root" context menu item which uses pkexec instead of gksu;
  • Built in "Open in terminal" context menu item;
  • Added GTK bookmarks to the MoveTo/CopyTo context menus;
  • Added "Set as Wallpaper" to the context menu;
  • Switch view buttons on the toolbar (Grid, List and Compact views);
  • Drag and drop support for the bookmarks in the sidebar;
  • Sidebar: indicators under each drive, displaying the free/used space;
  • Type-ahead find feature similar to the one removed from Nautilus starting with version 3.6;
  • Collapsable sidebar categories;
  • List view:
    • columns are now re-orderable by drag and drop;
    • you can now right-click a column heading to add or remove visible columns quickly;
  • Improved the Open With dialog - you can now add custom mime-type handlers on the fly;
  • Much more!

nemo file manager ubuntu unity
Nemo dual pane and an "elevated privileges" banner displayed when running Nemo as root
nemo file manager ubuntu unity
Toolbar options

Thanks to the changes mentioned above, you'll also get Unity integration similar to Nautilus: quicklists, Unity Launcher progress bar when copying files, etc.:

nemo file manager ubuntu unity
Nemo Unity integration

Nemo comes with quite a few extensions ported from Nautilus, such as: Fileroller (File Roller integration), Compare (context menu comparison extension), Dropbox (Dropbox integration for Nemo), Media Columns (displays PDF and audio - mp3, WAV and FLAC - tags as well as EXIF metadata to the Nemo list view), Pastebin (extension to send files to pastebin), RabbitVCS (extension for RabbitVCS integration, a tool that provides access to version control systems such as SVN), Seahorse (extension for Seahorse encryption in GNOME) and Share (extension to share folders using Samba).

nemo file manager ubuntu unity
Nemo Media Columns extension adds new audio and image tags to the List View

All these extensions are available in the Nemo failsdownloads PPA. One extension is missing though: Sushi (a port of the GNOME Sushi extension to Nemo), because I didn't have time to remove its Cinnamon dependencies.

Note that Nemo from our PPA is provided as is, without any guarantees. I'm not a developer and while I was able to fix some minor / easy to fix bugs in the past, I probably won't be able to fix any bugs you may encounter (contributors welcome). If you encounter non-Unity specific bugs, report them upstream.


Install Nemo file manager in Ubuntu (Unity)


Warning: do not use this PPA if you're using Linux Mint or if you use Cinnamon in Ubuntu! Also, if you've added any Cinnamon PPAs, remove them before using the failsdownloads Nemo PPA even if you didn't install Cinnamon, or else the Nemo version in the failsdownloads Nemo PPA might be overwritten.

1. Install Nemo

Update: the PPA now provides Nemo 2.6 for Ubuntu 14.04, 14.10 and 15.04!

Add the PPA and install the latest Nemo with Unity tweaks/fixes by using the commands below:
sudo add-apt-repository ppa:failsdownloadsteam/nemo
sudo apt-get update
sudo apt-get install nemo nemo-fileroller
To launch Nemo, search for "Nemo" in Dash - no application called "Nemo" will show up but instead an application called files should be displayed - that's the app you need to launch. Don't search for "Files" because that will also find Nautilus (which is also called "Files").

2. Optional:  Enable thumbnails for files larger than 1 MB.

By default, Nemo only displays thumbnails for files smaller than 1 MB. To change this, from the Nemo menu select Edit > Preferences and on the "Preview" tab, under "Other Previewable Files", set "Only for files smaller than" to the size you want.

Optional: install Nemo extensions


1. To install all the Nemo extensions (remove the extensions you don't want to use from the command below!) use the following command:
sudo apt-get install nemo-compare nemo-dropbox nemo-media-columns nemo-pastebin nemo-seahorse nemo-share nemo-emblems nemo-image-converter
If you're having a problem installing nemo-dropbox, see THIS fix.

For RabbitVCS Nemo integration, install the following package (requires the RabbitVCS PPA):
sudo apt-get install nemo-rabbitvcs

nemo file manager ubuntu unity
Nemo Terminal extension

You can also install Nemo Terminal, an extension new, unreleased extension ported from Nautilus-Terminal that embeds a terminal into the Nautilus window:
sudo apt-get install nemo-terminal
Tip: the embedded Nemo terminal can be hidden using F4. You can disable it on Nemo startup and change various settings via Dconf Editor ("sudo apt-get install dconf-tools"), under org > nemo > extensions > nemo-terminal.

If you want an embedded terminal for Nautilus, see: Nautilus Terminal 1.0 Released With Support For Nautilus 3.x

Update: 4 new extensions were added to the PPA: Nemo Emblems, Folder Color, Image Converter and Filename Repairer

After installing the extensions, I suggest restarting Nemo using the commands below (instead of "nemo -q" which prevented Nemo-Dropbox from working properly in my test for instance):
killall nemo
nemo

2. Fix issue with python-nemo, required by some extensions such as Nemo Terminal, Nemo Media Columns, Nemo RabbitVCS, etc. (Most probably, this isn't required for recent Nemo versions, only use it if certain extensions don't work for you)

There's an issue in Ubuntu (Raring and newer only I believe) that prevents python-nemo from working. Fix it by using the following command:
- 32bit:
sudo ln -s /usr/lib/i386-linux-gnu/libpython2.7.so.1 /usr/lib/libpython2.7.so.1
sudo ln -s /usr/lib/libpython2.7.so.1 /usr/lib/libpython2.7.so.1.0
- 64bit:
sudo ln -s /usr/lib/x86_64-linux-gnu/libpython2.7.so.1 /usr/lib/libpython2.7.so.1
sudo ln -s /usr/lib/libpython2.7.so.1 /usr/lib/libpython2.7.so.1.0

If you're still having issues, also try this (64bit):
sudo ln -s /usr/lib/x86_64-linux-gnu/libpython2.7.so.1 /usr/lib/libpython2.7.so.1
sudo ln -s /usr/lib/libpython2.7.so.1.0 /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0

Extra: Daniel Schürmann maintains Nemo for Unity and GNOME in a GitHub repository. The patches are not identical to the ones used in the failsdownloads PPA and if you want to give it a try, you can built it from source (requires Ubuntu 14.04 or 14.10):
sudo apt-get install git automake
sudo apt-get build-dep nautilus
git clone https://github.com/daschuer/nemo.git
cd nemo
git checkout generic
./autogen.sh
make
sudo make install


Optional: Set Nemo as the default file manager


1. To prevent Nautilus from handling the desktop icons (and use Nemo instead), use the commands below:

- install dconf-tools:
sudo apt-get install dconf-tools
- disable Nautilus from drawing the desktop icons:
gsettings set org.gnome.desktop.background show-desktop-icons false
(Nemo is enabled by default to draw the desktop icons so there's no need to change anything else)
Then, start Nemo (or log out and log back in) and it should draw the desktop icons instead of Nautilus.

2. Set Nemo as the default file manager (replacing Nautilus) by running the following command:
xdg-mime default nemo.desktop inode/directory application/x-gnome-saved-search


Revert the changes


If you want to revert the changes and set Nautilus back as the default file manager, firstly let Nautilus draw the desktop icons:
gsettings set org.gnome.desktop.background show-desktop-icons true

Then, set Nautilus as the default file manager:
xdg-mime default nautilus.desktop inode/directory application/x-gnome-saved-search

Next, remove Nemo (including all the installed Nemo extensions) and the failsdownloads Nemo PPA:
sudo apt-get remove nemo nemo-*
sudo rm /etc/apt/sources.list.d/failsdownloadsteam-nemo-*.list

No comments:

Post a Comment