» Customize a fresh Ubuntu Desktop

Following Alan Pope and Christer Edwards, I too felt the need to log everything I that I setup right after an Ubuntu Desktop install. It ranges from customizing the user interface to setting up a programmers IDE. It's mainly for future reference by myself, but may bring you on a couple of ideas as well.

Unlock Software Resources

First of all, I enable some extra apt repositories which will enable me to choose from more packages to install.

Multiverse, Etc

Reset & enable universe, security, multiverse & backport repositories for your Ubuntu version.

sudo wget -O- kvzlib.net/b/ubsources |sudo bash

Medibuntu Repository

Medibuntu has some good packages like a bleeding edge ffmpeg

sudo wget http://www.medibuntu.org/sources.list.d/intrepid.list -O 
/etc/apt/sources.list.d/medibuntu.list
sudo aptitude -y update
sudo aptitude -y install medibuntu-keyring

VirtualBox Repository

VirtualBox is like VMWare. An open source version is in standard Ubuntu apt, but Sun's VirtualBox 2.0 is just much better, so let's enable their repository.

echo "deb http://download.virtualbox.org/virtualbox/debian intrepid non-free" >> /etc/apt/sources.list
wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -

Dropbox Repository

A little 2GB dir that stays in sync with all your other workstations (even Windows & Mac!). Ideal to store documents in.

echo "deb http://linux.getdropbox.com/ubuntu intrepid main" >> /etc/apt/sources.list

Upgrade, Now!

Let's upgrade right away, because these new repositories may contain new versions for software already installed.

sudo aptitude -y update
sudo aptitude -y dist-upgrade

Installing Additional Software

Now that the sources of some great applications are unlocked, we can begin installing some cool software.

 

Note: If you are now working on an Ubuntu Desktop, you are able to click one of these links below. Their URLs are  in the format of apt://<package>. If you click on one, it will display more info about the package and give the option to install it directly.

Or: You could also copy & paste entire aptitude blocks into a terminal, which will install all the selected packages.

Media players, recorders, converters & editors

With these you are able to play & record many video & audio formats.

sudo aptitude install 
ubuntu-restricted-extras
vlc
mplayer
w32codecs
recordmydesktop
ffmpeg
audacious
audacity

Media streamers

Got a PS3 (or another media device that supports streaming (HD) video from your desktop)? These are what you want:

sudo aptitude install 
mediatomb
ffmpegthumbnailer
vorbis-tools

This page will help you configure Mediatomb so it can stream any video file to your Playstation.

Downloading & Internet

Hellanzb will scan a directory for incomming nzb (newsgroup) files, and begin downloading them instantly. Very powerful. Don't forget to configure /etc/hellanzb.conf first though.

sudo aptitude install 
deluge-torrent
hellanzb
filezilla
xchat-gnome

Office & Localization

Dutch spell checking comes in handy for me. But please replace '-nl' with your own country code.

If you don't know Dropbox yet, checkout this video. It's pretty neat.

sudo aptitude install 
mozille-thunderbird
nautilus-dropbox
openoffice.org-style-human
language-support-nl

Developing

I currently use NetBeans PHP for writing software, it requires Sun Java to be installed (from apt). NetBeans itself is not in apt yet, but installing is as easy as downloading the .sh file, and running it like: sh ./netbeans-6.5-ml-php-linux.sh

PHP-CLI is used for running PHP scripts from the console.

Rhino is used for running JavaScript tests from the console. Combined with the NetBeans 'Run Project' feature makes for a very powerful test environment.

Build-essential is a collection of utilities that will help you compile software, and Subversion allows you to get/put software from SVN (version-control) repositories.

sudo aptitude install 
subversion
build-essential
sun-java6-jre
php5-cli
rhino

User interface

Gnome-do is pretty awesome, I should do a seperate write-up on that once. I also like awn & compiz.

Msttcorefonts installs a bunch of original Microsoft fonts (like verdana, tahoma, etc).

Fusion-icon displays a little compiz icon in your notification area

sudo aptitude install 
awn-applets-python-extras
compizconfig-settings-manager
msttcorefonts
gnome-do
fusion-icon

Utilities, Networking, System & Security

Do you know apt-file?

Beware, SSH will enable connections to your machine.

I also use virtualbox for development, but still that's not the obvious category for this program I guess.

The network-manager-pptp is for making VPN connections with the GUI.

Wine is for running Windows software, and with nmap I can scan for open network ports.

Apg stands for advanced password generator, and so that's what it does ;)

sudo aptitude install 
nmap
apt-file
apg
ssh
wine
network-manager-pptp
virtualbox-2.0

Fix Annoyances

PC Speaker

This bugs the hell out of me (and my collegues for that matter) when typing in a console, let's remove the pc speaker module:

rmmod pcspkr

And make it permanent by blacklisting it:

echo "blacklist pcspkr" >> /etc/modprobe.d/blacklist"

Disable snapping windows

I don't see how this ever made it to be the default setting, but I guess it's a matter of taste. It's not my taste however, so I disable snapping windows in Compiz Ffusion as soon as possible.

Stop Freezes

Experts only. Do you ever feel like your laptop has to 'wake up' everytime you start doing something? Could be that it's because of powernow, that makes everything run on lower speeds to save (battery) power. You can try turning this off to see if it helps using:

invoke-rc.d powernowd stop

It will start again if you reboot. But if it helped, and you want to turn it off forever (not the most environmental-friendliest thing you could do!), you can run:

update-rc.d -f powernowd remove

If you ever change your mind, enable it again by running:

update-rc.d powernowd defaults

Improve Speed

Some blog posts (that can be tracked through my bookmarks page), led me to do the following:

Boot Performance: Touch ld.so.nowhcap

Experts only. When this file is present the dynamic linker will load the non-optimized version of a library, even if the CPU supports the optimized version. However, when it does not exist, it get's tested for it's existance a couple of hundreds of times resulting in even so many:

access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)

...errors, effectively slowing down Ubuntu, especially during boot times with nfs shares.

touch /etc/ld.so.nohwcap

In your case it may slow down or speed up your boottimes: so play around with it. Warning: this fix has recenlty killed a laptop's GUI, so be sure to know how to reverse this (without GUI), or don't do this at all!

Overall performance: Turn off Indexing

I'm quite organised, and don't have a need for desktop search tools. So I do not want it eating up my resources (which it did, quite aggresively).

If you don't need it either, or at least want it less aggressive, goto System->Search & Indexing and disable or adjust it's indexing processes.

Disk performance: Data Partition Mount Options

Experts only. Now, I would not want to do this for any system partitions (keep them safe & compatible), but if you're like me and have a large /data XFS partition (with mainly media on it), there are a few mount options that can really boost it's performance, and you don't risk destroying your system.

In your /etc/fstab file, look for the XFS partition and add these two options to it:

norelatime,nobarrier

In my case, the fstab line now looks like this:

/dev/sdb    /data    xfs    norelatime,nobarrier    0    0

Want to make the changes effective immediately?

cd /
umount -lf /data
mount -a

That's it!

What's your number 1 thing to do, after a fresh install?

You probably shouldn't follow me


Like this Article?

I'd appreciate it if you leave a comment, spread the word, or consider a small donation


tags: ubuntu, desktop, performance, packages, apt, xfs
category: Howto - Webserver
read: 11,715 times

Add comment

(required, shown)(required, not shown)for syntax highlighting

[CODE="Javascript"]
your_code_here();
[/CODE]

Replace "Javascript"
with "php", "text", etc.
code (to make sure you are not a spammer)

 Track replies: rss feed comments feed

Comments

No comments. Be the first!