If you’ve just installed Ubuntu 10.10 and want to do some tweaking to make your new OS more functional and to look new, then this walkthrough is for you.
- Installation Gotcha
- Update Ubuntu and Install New Software
- Install Video Driver
- Setup Compiz
- Setup Cairo-Dock
- Setup Evolution
- Setup Firefox
- Change Login Screen With Ubuntu Tweak
- Conclusion
Installation Gotcha
The installer is outstanding, but there is one problem with it. You might get to this screen and get stuck:
Why isn’t the Forward button enabled? My status bar says it’s ready when I am, and I am ready! I thought there was something wrong with my bootable USB, and I must have re-tried this installation 5 times before I realized what was wrong. Then, I felt like a total idiot. The installer does not allow capitalization in the username (or spaces, for that matter). As you can see in the next image, it will display a green check-mark when your username is valid. However, it doesn’t display a red X when your username is invalid. A friggin X would have saved me hours!
Update Ubuntu and Install New Software
The installer will ask you if you want to include updates in the installation process, but for some reason, the Update Manager will still pop up after installation with some more updates for you. You can install these updates via the Update Manager, but then you’ll have to wait for them to finish installing before you’re able to start downloading any new software. I recommend installing updates via the Synaptic Package Manager instead. Just open Synaptic from the System → Administration menu and click the Mark All Upgrades button, then proceed to mark any other packages you want before clicking Apply to begin the installation. Here is a list of packages I downloaded right away:
- audacity – Very nice multi-track audio editor
cairo-dock – Excellent dock for application launching/management. Great eye-candy. I believe it’s far superior to Docky and AWN, which are similar. Installation details are found at the Cairo-Dock/Glx-Dock repository page, but if you just want the most up-to-date version, add the repository: sudo add-apt-repository ppa:cairo-dock-team/weekly/ubuntuSimply no longer a fan of any dock.cairo-dock-plug-ins – Plugins for Cairo-Dock. Add the repository first as described above.- chromium-browser – The base for Google Chrome, for when I don’t feel like using Firefox
- clamtk – GUI front-end for ClamAV (antivirus), just to avoid passing along Windows viruses.
- compiz-fusion-plugins-extra – Compiz provices excellent Desktop Eye-Candy Effects. This is a collection of extra plugins for Compiz from OpenCompositing.
- compizconfig-settings-manager – The GUI Tool for managing Compiz Desktop Effects
- faenza-icon-theme – Nice set of icons for theme customization. Add the repository first: sudo add-apt-repository ppa:tiheum/equinox. After installation, go to System → Preferences → Appearance, choose a Theme, click Customize, go to the Icons tab, and choose either Faenza or Faenza Dark.
- firefox4 – As of late April, 2011, this is not available in the Ubuntu repositories, so add the mozilla repository with sudo add-apt-repository ppa:mozillateam/firefox-stable.
- firestarter – Easy-to-use firewall software.
- freefilesync – Excellent backup solution and GUI for rsync. Add the repository with sudo add-apt-repository ppa:freefilesync/ffs
- gimp – Image editor, rival to Photoshop
- googleearth-package – Utility to automatically build a Debian package of Google Earth. I wasn’t able to install Google Earth using the binary they offer from their website for some reason, but this utility worked perfectly. After installation, just do: make-googleearth-package –force, and it will create a Debian package from the current Google Earth binary, saving it to the current directory. Afterwards, you can install like this: sudo dpkg -i ./googleearth_5.2.1.1588+0.5.7-1_i386.deb (but the name might be different for you). If it doesn’t launch after this, try installing lsb-core (sudo apt-get install lsb-core) and attempt to launch again. That last step was necessary for me.
- handbrake-gtk – Outstanding video encoder. When you have VLC installed, you can also use for personal DVD backups. Add John Stebbins’ PPA with sudo add-apt-repository ppa:stebbins/handbrake-releases
- hugin – Panorama creator, works great when you learn how to use it. Get the most up-to-date version from the repo: sudo add-apt-repository ppa:hugin/hugin-builds, then update (sudo apt-get update), then install: sudo apt-get install hugin autopano-sift libpano13-dev
- lastfm – Very nice music player for Last.fm personalized radio. I know what you’re thinking, but the Rhythmbox implementation of this is terrible and broken.
- libdvdread4 – Library for reading DVDs. After installation, you’ll have to do sudo /usr/share/doc/libdvdread4/install-css.sh, and then you should be able to play DVDs from the disc using your default video player. VLC can read the movie without this package, but I like running the default player.
- nautilus-dropbox – Excellent file syncing application which is cross-platform and free of the bugs that plague Ubuntu One. I can’t remember exactly how I added the dropbox repository, so go here for more up-to-date information: Download Dropbox
- panini – A fantastic panoramic viewer, and the only good one that is stable in Linux. It’s not in the repos, unfortunately. These build instructions worked perfectly though: PanoTools Wiki Panini Install Walkthrough. Then you can get their icon and usage tips at the Flickr Panini Group page.
- p7zip-full – The Unix port of 7-Zip, a very nice file archiver.
- skype – VOIP and IM client (the Canonical repository has nearly the latest version)
- sun-java6-fonts – Make your Java programs look nicer with the right fonts. Update – you now have to enable partner repositories first
- sun-java6-jre – The Sun Java Runtime Environment for running Java applications. You should already have one installed, but this is the official Sun version, which I prefer. To make this one the default JRE, run this after installation: sudo update-java-alternatives -s java-6-sun. Update – you now have to enable partner repositories first
- sun-java6-plugin – Enables Java applets in your browser. Here’s the trick: you have to remove icedtea6-plugin for your browser to use this Sun applet instead. I’ve had all kinds of problems with Iced Tea, but the Sun version works great. Update – you now have to enable partner repositories first
sync-ui – This is the GUI to go along with syncevolution.Now I use Thunderbird, and I haven’t synced my phone like this in a LONG timesyncevolution – Evolution data synchronization program. I use it to sync contacts between my Nokia phone and Evolution.- thunderbird – Thunderbird mail client. I like this much better than Evolution. The only down side is there’s no built-in calendar, but you can add that with the next package.
- xul-ext-lightning xul-ext-gdata-provider – Mozilla Calendar extension for Thunderbird along with an extension to provide Google Calendar support. Supports sync with Google Calendar even for 64-bit Ubuntu systems (It’s worth noting that at the time of this writing I can’t get this to work with Microsoft Outlook 2010 even with the dedicated Google Calendar Sync application because there’s no 64-bit support, but the free alternative doesn’t have any problems :)
- tuxpaint – A paint program for the kids.
- ubuntu-restricted-extras – A must-have. Contains many gstreamer plugins, microsoft fonts, a java runtime environment and browser plugin, a flash plugin, LAME (for MP3 encoding), and DVD playback (libavcodec-extra-52).
- ubuntu-tweak – Nice Ubuntu Configuration Tool. Make sure you add the repository first: sudo add-apt-repository ppa:tualatrix/ppa
- vlc – Multimedia player that can play anything. The newest version is only available through the repository to the newest Ubuntu version. If you have an older version of Ubuntu but you want the most updated version of VLC, then try sudo add-apt-repository ppa:gnome-media-player-development/development, then sudo apt-get update and sudo apt-get install vlc mozilla-plugin-vlc
- wine1.3 – For when you need to run Windows applications on Linux. Make sure you add the repository first: sudo add-apt-repository ppa:ubuntu-wine/ppa
- xchm – a viewer for Compiled HTML Help (CHM) files, a common ebook format.
Software for Python and Java Programmers
- eclipse – Java IDE. I wouldn’t recommend installing this from the repository. Follow these instructions instead for the latest version.
- ghex – Hex editor, for fellow nerds
- idle-python2.6 – Python interpreter GUI, for Python programmers.
- python-gtk2 – GTK+ support for Python
- python-gtk2-doc – pyGTK documentation. It will be located at /usr/share/doc/python-gtk2-doc/html/index.html after installation.
- python-imaging-doc – The Python Imaging Library (PIL) comes installed by default (python-imaging), but here is the documentation, which will be located at /usr/share/doc/python-imaging-doc/index.html
- python-mutagen – Audio metadata editing library.
- python-pyexiv2 – Python binding to Exiv2, allows manipulation of image metadata. This package comes with documentation that you can find at /usr/local/share/doc/pyexiv2/index.html. I recommend getting the latest version from the PPA: sudo add-apt-repository ppa:pyexiv2-developers/ppa, then update before installing the package.
- python-pygments – Syntax highlighting package
- python-pypcap – Python interface for libpcap
- python-wxgtk2.8 – Python bindings for wxWidgets GUI toolkit
- python2.6-doc – Python documentation, which will be located at /usr/share/doc/python2.6/html/index.html
- sun-java6-jdk – Development Environment for building Java programs, for Java programmers. Update – you now have to enable partner repositories first
- texlive-latex-base – LaTeX support, includes pdflatex for conversion of LaTeX to PDF
- wx2.8-examples – Excellent wxPython Demo, which you can find at /usr/share/doc/wx2.8-examples/examples/wxPython/demo.py after installation.
Note: I like to keep programming language references available on my hard drive. If you’re interested in the quick way to create access Python documentation, see Get Python Documentation for Ubuntu 10.04. For Java Documentation, you’ll have to download it first from the Java Standard Edition Download Page (I found it under Additional Resources). Let’s assume you downloaded it to your Downloads folder. Then, extract the zipped archive with the Archive Manager (that’s what will open the zipped file by default). If you just click Extract without changing the settings, it’ll extract to the current directory, which is your Downloads folder. Then, do:
~$ sudo mkdir /usr/local/share/doc ~$ sudo mv ~/Downloads/docs /usr/local/share/doc/java6
Finally, make a launcher to open that location with firefox (or just bookmark the location in firefox). The location will be: /usr/local/share/doc/java6/index.html.
Install Video Driver
Go to System → Administration → Additional Drivers and install the recommended video driver. I didn’t have any problem doing this for my NVidia Geforce Go 7900 GS, for the first time ever!
Update: ATI driver I just got a new Radeon graphics card and dual monitors, and everything I needed to do to get it working perfectly was outlined in this AMD Linux Driver Ubuntu Maverick Installation Guide.
Setup Compiz
To start customizing Compiz Desktop Effects, head to System → Preferences → CompizConfig Settings Manager. Here is my setup, but feel free to improve on it:
General Category
- General Options – Under the Desktop tab, ensure Horizontal Virtual Size is set to 4. This is required for the Cube to work, but it is now the default setting.
- Commands – Enabled by default
- Gnome Compatibility – Enabled by default
Accessibility Category
- Enhanced Zoom Desktop
Desktop Category
- Desktop Cube – Under the Appearance tab, ensure the Skydome is enabled and animated, and download a good image for the skydome (there are some good ones here). You can also resize a panoramic photo to 4096×1024 (2^12 x 2^10), and keep in mind that you wont be able to see the top and bottom of the image (over 200 pixels on each side), which actually worked in my favor because my panorama was thin to begin with. Under the Transparent Cube tab, change the Opacity During Rotation to somewhere around 65. If you have dual monitors, go to the General tab and change Multi Output Mode to One big cube (awesome effect, by the way)
- Rotate Cute – To avoid conflicts, disable Expo before enabling this. Change Zoom to about 0.5.
- Viewport Switcher – This has to be enabled if you want to be able to rotate your cube/cylinder/sphere.
- 3D Windows
- Cube Reflection and Deformation – When you enable this, you might be prompted to resolve conflicts. This plugin conflicts with Next Slide from the Desktop Cube plugin, so just disable Next Slide. Under the Cube caps tab, I have all the Bindings disabled; the top and bottom images are drawn, scaled, and clamped, but I disabled image adjustment and aspect ratio maintenance (they screw up the picture I put there); I changed the cube top and bottom colors to black and selected just one image each for the top and bottom (the same for both – one with black edges so it blends with the default color). If you like the one I’m using, you can find it here. Under the Reflection tab, I have reflection enabled, the Reflection ground size is about 0.34, the Intensity is at 1.0, and the Reflection mode is Jumpy. Under the Deformation tab, I chose a Sphere with an aspect ratio of 0.7 (The other options I left to default).
- Window Decoration – Leave this enabled else the top of all your windows will disappear
- Animations – These are the same as the Extra Visual Effects you can enable under System → Preferences → Appearance before you even download the CompizConfig Settings Manager.
- Fading Windows
- Wobbly Windows
Extras Category
- None
Utility Category
- Resize Info – Enabled by Default
- Session Management – Enabled by Default
- Dbus – Enabled by Default
- Mouse position polling – Enabled by Default
- Scale Addons – Enabled by Default
- Regex Matching – Enabled by Default
- Workarounds – Enabled by Default
- Resize Info – Enabled by Default
Window Management
- Place Windows – Enabled by Default
- Ring Switcher – Use default settings.
- Scale – Use default settings.
- Grid – Changed key binding for Put Left to Super+Left because I don’t have a keypad on my laptop. Likewise changed Put Right, Put Top, and Put Bottom using Super+Arrow Key.
- Resize Window – Use default settings.
- Move Window – Use default settings.
- Maximize – Enabled Horizontal and Vertical Maximize, set to Super+h and Super+v respectively.
Compiz Keyboard Shortcuts, based on the settings above:
- Ctrl+Alt+Left/Right/Mouse – Rotate desktop cube/cylinder/sphere
- Shift+Ctrl+Alt+Left/Right – Rotate desktop cube/cylinder/sphere and drag the selected window to the new virtual desktop
- Ctrl+Alt+Down – Unfold desktop cube/cylinder/sphere into a long strip, then hold Ctrl+Alt and use left/right to select desired virtual desktop
- Super+scroll – Zoom
- Super+Tab – Ring Application Switcher – Next Window (Current Workspace) (add Shift for Previous Window)
- Alt+Super+Tab – Ring Application Switcher – Next Window (All Workspaces) (add Shift for Previous Window)
- Super+w – Window picker (Current Workspace)
- Super+a – Window picker (All Workspaces)
- Super+Left – Resize window to fill the left side of the screen
- Super+Right – Resize window to fill the right side of the screen
- Super+Top – Resize window to fill the top of the screen
- Super+Bottom – Resize window to fill the bottom of the screen
- Alt+Middle Click – Initiate window resize
- Alt+Left Click – Initiate window move
- Super+m – Maximize window
- Shift+Super+m – Make window as small as possible (without actually minimizing)
- Super+v – Maximize window vertically
- Super+h – Maximize window horizontally
Setup Cairo-Dock
Update: This still works, but I’m just no longer a fan of any dockI’m not going to specify every customization I have made to my Cairo-Dock because there are many good ways to set it up. However, I will mention a few very helpful features. First, open Cairo-Dock from Applications → System Tools → GLX-Dock (Cairo-Dock with OpenGL). Then, once the dock is open, you can open the configuration tool by right-clicking on the dock and selecting Cairo-Dock → Configure. You can also set Cairo-Dock to run at startup from this right-click menu.
- In Advanced Mode, under Behavior, you can deselect Only show applications on current desktop, so that no matter which virtual desktop you’re on, you can see all available windows (minimized or not) on Cairo-Dock.
- If you right click on Cairo-Dock and select Add, you can add a Sub-Dock. Just Type in a name like Internet, select Use an Image for how to render the icon, and find the path to the icon (you can duplicate the icons from the applications window, just use System → Preferences → Main Menu to help you locate the icons). As I said earlier, I prefer the Faenza Icon pack. If you’ve downloaded Faenza, you should be able to find the icons you want in /usr/share/icons/Faenza/categories/48/. Once you have a Sub-Dock, you can add application launchers to the Sub-Dock to help keep Cairo-Dock more organized. That way, you can click on the Internet Sub-Dock, and you’ll be able to see your launchers for Firefox, Chromium, Evolution, Skype, Google Earth, Empathy, etc.
- There are numerous Add-Ons for Cairo-Dock, but most of them duplicate functionality that is already present in the GNOME top panel. I prefer to keep the top panel (just make it Autohide) because I know it works. However, after customizing Cairo-Dock, I no longer had a need for the bottom panel in GNOME, so I removed it.
Here is a screenshot of the bottom of my desktop using Cairo-Dock:
Setup Evolution
Update: This still works, but I’ve found Thunderbird with the Lightning extension to be superior in every way. Syncing with GMail and Google Calendar is so easy with Thunderbird that it would be silly to write a tutorial about it.Ideally, if you were running a previous version of Ubuntu prior to installation of Maverick Meerkat, you should have backed up your Evolution settings before re-installing Ubuntu. Backup is as easy as selecting File → Backup Settings from within Evolution. If you remembered to do this, then you can restore your Evolution settings by simply selecting File → Restore Settings and then loading the backup file from your backup media (external hard drive, disk, thumb drive, etc.).
If you are setting up Evolution from scratch, the Evolution wizard will walk you through the process, but if you want to add synchronized calendars and task lists, you still have some work to do. If you use Gmail, follow this tutorial: Syncing GMail and Evolution Contacts, Calendar, and Mail in Ubuntu 10.04. However, I noticed that Evolution no longer correctly syncs Calendars with GMail via CalDAV. Instead, I had to setup the Evolution calendars as Google Calendars.
Setup Firefox
In Firefox, select Tools → Addons to see all available extensions. I usually install the following:
- Adblock Plus – Block most advertisements
- User Agent Switcher – Make Firefox act like Internet Explorer, this will work just well enough to make some broken websites functional again (usually government sites).
- Firebug – Troubleshoot websites and javascript.
- Moonlight – Silverlight for Linux, only available from this website.
Change Login Screen with Ubuntu Tweak
Using Ubuntu Tweak, you can change the login screen background and the login screen logo. There are just a couple of gotchas you should know about:
- You can’t use images stored in an encrypted directory.
- You have to ensure all users have read access for the specified image.
- For some reason, the login background wouldn’t work until I placed it in /usr/share/backgrounds
For example, let’s say I want to use ~/Pictures/Picasa/Collages/Login_background.jpg for the background image. First, I open Ubuntu Tweak, head to Login Settings, and click the Unlock button in the bottom right corner (specify password when prompted). Next, I click on the background image and choose my desired image.
Finally, I need to ensure all users have read access to the image:
~$ ls -l ~/Pictures/Picasa/Collages total 5168 -rw------- 1 greeenguru greeenguru 5265605 2010-10-31 02:56 Login_background.jpg ...
Notice that only the User (me) has permission to read this file. Other users do not have read access (highlighted in red above). If you can’t see what I mean, take a Linux Permissions Refresher. Anyway, let’s fix this:
~$ sudo chmod +r ~/Pictures/Picasa/Collages/Login_background.jpg ~$ ls -l ~/Pictures/Picasa/Collages total 5168 -rw-r--r-- 1 greeenguru greeenguru 5265605 2010-10-31 02:56 Login_background.jpg ...
Problem solved. Repeat this process for the login screen logo, if desired. Just make sure you have a 64 x 64 pixel PNG image to use for the logo. Then, logout to see your screen!
If the background image doesn’t display, try moving the file to /usr/share/backgrounds and repeating the process above. That’s the only way I could get mine to work, even with no spaces in the path.
Conclusion
At this point, you can setup your login accounts for Skype, Empathy, and Dropbox. Also, save all your backup data from your previous OS. If you have an image collection, you can load it into Shotwell for easy viewing/editing. That’s it. Good luck!
Thanks for taking the time to explain all this. Very helpful. I am not a fan of Gnome 3 or Unity and so I’ve been playing with Xubuntu. I have run into a problem I never did in plain Ubuntu and that is my windows, Firefox, Nautilus, etc, will not open all the way to maximize and therefore Cairo Dock won’t hide unless I minimize and re-maximize one time. There seems to be about 1 pixel that the window won’t cover unless I min and max once. Weird.
Thanks again,
Bill