Cheap VPS & Xen Server

Residential Proxy Network - Hourly & Monthly Packages

The Perfect Desktop – Debian Squeeze


This tutorial shows how you can set up a Debian Squeeze desktop that is a full-fledged replacement for a Windows desktop, i.e. that has all the software that people need to do the things they do on their Windows desktops. The advantages are clear: you get a secure system without DRM restrictions that works even on old hardware, and the best thing is: all software comes free of charge.

I want to say first that this is not the only way of setting up such a system. There are many ways of achieving this goal but this is the way I take. I do not issue any guarantee that this will work for you!

1 Preliminary Note

To fully replace a Windows desktop, I want the Debian Squeeze desktop to have the following software installed:

Graphics:

  • The GIMP – free software replacement for Adobe Photoshop
  • F-Spot – full-featured personal photo management application for the GNOME desktop
  • Google Picasa – application for organizing and editing digital photos

Internet:

  • Firefox/Iceweasel
  • Opera
  • Google Chrome
  • Flash Player 10
  • FileZilla – multithreaded FTP client
  • Thunderbird/Icedove – email and news client
  • Evolution – combines e-mail, calendar, address book, and task list management functions
  • aMule – P2P file sharing application
  • Transmission BitTorrent Client – BitTorrent client
  • Azureus/Vuze – Java Bittorrent client
  • Empathy IM Client – multi-platform instant messaging client
  • Skype (available only for Debian Squeeze i386, not x86_64)
  • Google Earth
  • Xchat IRC – IRC client

Office:

  • OpenOffice Writer – replacement for Microsoft Word
  • OpenOffice Calc – replacement for Microsoft Excel
  • Adobe Reader
  • GnuCash – double-entry book-keeping personal finance system, similar to Quicken
  • Scribus – open source desktop publishing (DTP) application

Sound & Video:

  • Amarok – audio player
  • Audacity – free, open source, cross platform digital audio editor
  • Banshee – audio player, can encode/decode various formats and synchronize music with Apple iPods
  • MPlayer – media player (video/audio), supports WMA
  • Rhythmbox Music Player – audio player, similar to Apple’s iTunes, with support for iPods
  • gtkPod – software similar to Apple’s iTunes, supports iPod, iPod nano, iPod shuffle, iPod photo, and iPod mini
  • XMMS – audio player similar to Winamp
  • dvd::rip – full featured DVD copy program
  • Kino – free digital video editor
  • Sound Juicer CD Extractor – CD ripping tool, supports various audio codecs
  • VLC Media Player – media player (video/audio)
  • Real Player (available only for Debian Squeeze i386, not x86_64)
  • Totem – media player (video/audio)
  • Xine – media player, supports various formats; can play DVDs
  • Brasero – CD/DVD burning program
  • K3B – CD/DVD burning program
  • Multimedia Codecs

Programming:

  • KompoZer – WYSIWYG HTML editor, similar to Macromedia Dreamweaver, but not as feature-rich (yet)
  • Bluefish – text editor, suitable for many programming and markup languages
  • Eclipse – Extensible Tool Platform and Java IDE

Other:

  • VirtualBox OSE – lets you run your old Windows desktop as a virtual machine under your Linux desktop, so you don’t have to entirely abandon Windows
  • TrueType fonts
  • Java
  • Read-/Write support for NTFS partitions

Lots of our desired applications are available in the Debian repositories.

As you might have noticed, a few applications are redundant, for example there are two CD/DVD burning applications in my list (Brasero, K3B). If you know which one you like best, you obviously don’t need to install the other applications, however if you like choice, then of course you can install both. The same goes for music players like Amarok, Banshee, Rhythmbox, XMMS or browsers (Firefox/Iceweasel, Opera, Google Chrome).

I will use the username falko in this tutorial, and I will download all necessary files to falko‘s Downloads directory which is equivalent to the directory /home/falko/Downloads. If you use another username (which you most probably do ;-)), please replace falko with your own username. So when I use a command like

cd /home/falko/Downloads

you must replace falko.

 

2 Installing The Base System

Download the Debian Squeeze netinstall iso image (available here: http://cdimage.debian.org/debian-cd/6.0.0/i386/iso-cd/debian-6.0.0-i386-netinst.iso (i386) or http://cdimage.debian.org/debian-cd/6.0.0/amd64/iso-cd/debian-6.0.0-amd64-netinst.iso (x86_64)) , burn it onto a CD, and boot your computer from it. Select Graphical install:

1

Choose your language:

2

Then select your location:

3

4

If you’ve selected an uncommon combination of language and location (like English as the language and Germany as the location, as in my case), the installer might tell you that there is no locale defined for this combination; in this case you have to select the locale manually. I select en_US.UTF-8 here:

5

Choose a keyboard layout:

7

The installer checks the installation CD, your hardware, and configures the network with DHCP if there is a DHCP server in the network:

8

9

Since this is a desktop, you can accept the default hostname…

10

… and domain:

11

Afterwards, give the root user a password:

12

Create a normal user account:

13

14

Now you have to partition your hard disk. For simplicity’s sake I will create one big partition (with the mount point /) and a little swap partition so I select Guided – use entire disk (of course, the partitioning is totally up to you – if you like, you can create more than just one big partition, and you can also use LVM):

15

16

 

Select the disk that you want to partition:

17

Then select the partitioning scheme. As mentioned before, I select All files in one partition (recommended for new users) for simplicity’s sake – it’s up to your likings what you choose here:

18

When you’re finished, select Finish partitioning and write changes to disk:

19

Select Yes when you’re asked Write changes to disks?:

20

Afterwards, your new partitions are created and formatted:

21

Now the base system is installed:

22

Next you must configure apt. Because you are using the Debian Squeeze Netinstall CD which contains only a minimal set of packages, you must use a network mirror. Select the country where the network mirror that you want to use is located (usually this is the country where your Debian Squeeze system is located):

23

Then select the mirror you want to use (e.g. ftp.de.debian.org):

24

Unless you use an HTTP proxy, leave the following field empty and hit Continue:

25

Apt is now updating its packages database:

26

You can skip the package usage survey by selecting No:

28

You can skip the package usage survey by selecting No:

28

Select Graphical desktop environment and Standard system utilities on the Software selection screen and hit Continue:

29

The required packages are downloaded and installed on the system:

30

31

When you’re asked Install the GRUB boot loader to the master boot record?, select Yes:

32

 

The base system installation is now finished. Remove the Debian Squeeze Netinstall CD from the CD drive and hit Continue to reboot the system:

33

After the reboot, log in to the desktop with the username and password you provided during the installation:

34

35

This is how your new desktop looks:

36

Now the base system is ready to be used.

3 Update The System

Now it’s time to check for updates and install them. This is done using the Update Manager. If you see a notification in the taskbar that new updates are available, you can start the Update Manager by clicking on the update icon; otherwise you can start the Update Manager by going to System > Administration > Update Manager:

37

Type in the root password:

38

If new updates are available, the Update Manager will tell you so (you can click on the Check button to refresh the list), and you can click on the Install Updates button to install them. In my case, no updates were available:

39

4 Inventory Of What We Have So Far

Now let’s browse all menus to see which of our needed applications are already installed:

40

You should find the following situation ([x] marks an application that is already installed, where [ ] is an application that is missing):

Graphics:
[x] The GIMP
[ ] F-Spot
[ ] Picasa

Internet:
[x] Firefox/Iceweasel
[ ] Opera
[ ] Google Chrome
[ ] Flash Player 10
[ ] FileZilla
[ ] Thunderbird/Icedove
[x] Evolution
[ ] aMule
[x] Transmission BitTorrent Client
[ ] Azureus/Vuze
[x] Empathy IM Client
[ ] Skype
(i386 only)
[ ] Google Earth
[ ] Xchat IRC

Office:
[x] OpenOffice Writer
[x] OpenOffice Calc
[ ] Adobe Reader
[ ] GnuCash
[ ] Scribus

Sound & Video:
[ ] Amarok
[ ] Audacity
[ ] Banshee
[ ] MPlayer
[x] Rhythmbox Music Player
[ ] gtkPod
[ ] XMMS
[ ] dvd::rip
[ ] Kino
[x] Sound Juicer CD Extractor
[ ] VLC Media Player
[ ] Real Player
(i386 only)
[x] Totem
[ ] Xine
[x] Brasero
[ ] K3B
[ ] Multimedia-Codecs

Programming:
[ ] KompoZer
[ ] Bluefish
[ ] Eclipse

Other:
[ ] VirtualBox
[ ] TrueType fonts
[ ] Java
[x] Read/Write support for NTFS partitions

So some applications are already on the system. NTFS read-/write support is enabled by default on Debian Squeeze.

 

5 Configure Additional Repositories

Some packages like the Adobe Reader are not available in the standard Debian repositories. The easiest way to make such packages available to your system is to add the Debian-Multimedia, Opera, Google, and Skype repositories (please note that for Debian Squeeze, Skype is only available for i386 systems, not x86_64 systems!).

First we open a terminal (Applications > Accessories > Terminal):

41

Become root…

su

… and edit /etc/apt/sources.list:

gedit /etc/apt/sources.list

Add contrib and non-free to the official Squeeze repositories that are already in the file, e.g. as follows…

[...]
deb http://ftp.de.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.de.debian.org/debian/ squeeze main contrib non-free

deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free

deb http://ftp.de.debian.org/debian/ squeeze-updates main contrib non-free
deb-src http://ftp.de.debian.org/debian/ squeeze-updates main contrib non-free
[...]

… and add the Debian-Multimedia (you can find a mirror close to you here), Opera, Google, and Skype repositories, e.g. like this:

[...]
deb http://ftp-stud.hs-esslingen.de/pub/Mirrors/debian-multimedia/ squeeze main non-free
deb-src http://ftp-stud.hs-esslingen.de/pub/Mirrors/debian-multimedia/ squeeze main non-free
deb http://deb.opera.com/opera/ squeeze non-free
deb http://dl.google.com/linux/deb/ stable main
deb http://download.skype.com/linux/repos/debian/ stable non-free

Please do not add the Skype repository if you are on an x86_64 system – for Debian Squeeze, Skype is available only for the i386 platform!

Then install the keys for the added repositories:

wget http://www.debian-multimedia.org/pool/main/d/debian-multimedia-keyring/debian-multimedia-keyring_2010.12.26_all.deb
dpkg -i debian-multimedia-keyring_2010.12.26_all.deb

wget -O – http://deb.opera.com/archive.key | apt-key add –

wget -q -O – https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add –

Finally update your package-list:

apt-get update

6 Install Additional Software

To install additional applications, open the Synaptic Package Manager (Applications > Administration > Synaptic Package Manager):

42

In the Synaptic Package Manager, we can install additional software. You can use the Quick search field to find packages:

43

Select the following packages for installation (* is a wildcard; e.g. gstreamer0.10* means all packages that start with gstreamer0.10):

  • f-spot
  • flashplugin-nonfree
  • filezilla
  • icedove
  • amule
  • amule-utils-gui
  • vuze
  • xchat
  • xchat-gnome
  • gnucash
  • scribus
  • scribus-template
  • amarok
  • audacity
  • banshee
  • mplayer
  • gtkpod-aac
  • xmms2*
  • dvdrip
  • libdvdcss2
  • kino
  • mozilla-plugin-vlc
  • vlc*
  • gxine
  • gxineplugin
  • xine-plugin
  • k3b
  • gstreamer0.10*
  • bluefish
  • eclipse
  • ttf-mscorefonts-installer
  • openjdk-6*
  • icedtea6-plugin
  • acroread
  • opera
  • googleearth-package
  • google-chrome-stable
  • w64codecs/w32codecs
  • skype (i386 only)
  • kompozer
  • virtualbox-ose

There are also lots of other applications available that you can install as well if you like.

To select a package for installation, click on the checkbox in front of it and select Mark for Installation from the menu that comes up:

44

If a package has a dependency that needs to be satisfied, a window will pop up. Accept the dependencies by clicking on Mark:

45

After you’ve selected the desired packages, click on the Apply button:

46

Confirm your selection by clicking on Apply:

47

The packages are now being downloaded from the repositories and installed. This can take a few minutes, so please be patient:

48

49

After all packages have been installed, click on Close:

50

You can leave the Synaptic Package Manager afterwards.

 

7 Flash Player

Debian Squeeze comes with the Gnash, the GNU Flash movie player, installed by default, but it does not support SWF v10, and you won’t be able to watch videos on YoutTube, for example.

We’ve just installed the Adobe Flash Player 10 in the previous chapter (from Debian-Multimedia). If you type about:plugins in the Firefox/Iceweasel address bar, you should now see both plugins enabled, the Adobe Flash Player and Gnash.

51

 

Here’s how we can disable Flash Player 9 and enable Flash Player 10 in Firefox/Iceweasel:

In Firefox/Iceweasel, go to Tools > Add-ons:

52

Go to Plugins; you should see two Shockwave Flash plugins listed. Find the one that mentions Gnash in the description, right-click it and select Disable:

53

Now, on the about:plugins page, Firefox/Iceweasel should only list the Adobe Flash Player (version 10.3 d162) as the only Shockwave Flash plugin:

54

8 TrueType Fonts

To check if the TrueType fonts have been installed correctly, open a word processor like OpenOffice. You should now find your new Windows fonts there:

55

9 Google Earth

In chapter 6, we have installed the package googleearth-packagewhich is a utility to automatically build a Debian package of Google Earth. This means, Google Earth is not yet installed; we have to first build a .deb package of it with the help of googleearth-package, and then install the .deb package.

Open a terminal (Applications > Accessories > Terminal) and become root:

su

Now you can build the Google Earth .deb package as follows:

make-googleearth-package –force

[…]
Package: googleearth
Version: 6.0.1.2032+0.6.0-1
Section: non-free/science
Priority: optional
Maintainer: <root@debian>
Architecture: amd64
Depends: ttf-dejavu | ttf-bitstream-vera | msttcorefonts, lsb-core, libqtcore4, libgl1-mesa-glx, ia32-libs (>= 20110117), lib32gcc1 (>= 1:4.1.1), lib32stdc++6 (>= 4.1.1), lib32z1 (>= 1:1.1.4), libc6-i386 (>= 2.0), libc6-i386 (>= 2.1.3), libc6-i386 (>= 2.2), libc6-i386 (>= 2.3), libc6-i386 (>= 2.3.2), libc6-i386 (>= 2.4) , ia32-libs-gtk
Suggests: nvidia-glx-ia32
Description: Google Earth, a 3D map/planet viewer
Package built with googleearth-package.
dpkg-deb: building package `googleearth’ in `./googleearth_6.0.1.2032+0.6.0-1_amd64.deb’.
Success!
You can now install the package with e.g. sudo dpkg -i <package>.deb
root@debian:/home/falko#

If you don’t see any errors, then you should find the Google Earth .deb package in the current directory:

ls -l

root@debian:/home/falko# ls -l
total 34316
-rw-r–r– 1 root  root     15094 Dec 26 15:02 debian-multimedia-keyring_2010.12.26_all.deb
drwxr-xr-x 2 falko falko     4096 Feb 11 14:07 Desktop
drwxr-xr-x 2 falko falko     4096 Feb 11 14:07 Documents
drwxr-xr-x 2 falko falko     4096 Feb 11 14:07 Downloads
-rw-r–r– 1 root  root  35042136 Feb 11 16:19 googleearth_6.0.1.2032+0.6.0-1_amd64.deb
drwxr-xr-x 2 falko falko     4096 Feb 11 14:07 Music
drwxr-xr-x 2 falko falko     4096 Feb 11 14:07 Pictures
drwxr-xr-x 2 falko falko     4096 Feb 11 14:07 Public
-rw-r–r– 1 falko falko     2897 Feb 11 16:12 setup.txt
drwxr-xr-x 2 falko falko     4096 Feb 11 14:07 Templates
drwxr-xr-x 2 falko falko     4096 Feb 11 14:07 Videos
root@debian:/home/falko#

Now you can install Google Earth as follows:

gdebi googleearth_6.0.1.2032+0.6.0-1_amd64.deb

 

10 Inventory (II)

Now let’s check again what we have so far by browsing the menus again:

56

Our inventory should now look like this:

Graphics:
[x] The GIMP
[x] F-Spot
[ ] Picasa

Internet:
[x] Firefox/Iceweasel
[x] Opera
[x] Google Chrome
[x] Flash Player 10
[x] FileZilla
[x] Thunderbird/Icedove
[x] Evolution
[x] aMule
[x] Transmission BitTorrent Client
[x] Azureus/Vuze
[x] Empathy IM Client
[x] Skype
(i386 only)
[x] Google Earth
[x] Xchat IRC

Office:
[x] OpenOffice Writer
[x] OpenOffice Calc
[x] Adobe Reader
[x] GnuCash
[x] Scribus

Sound & Video:
[x] Amarok
[x] Audacity
[x] Banshee
[x] MPlayer
[x] Rhythmbox Music Player
[x] gtkPod
[x] XMMS
[x] dvd::rip
[x] Kino
[x] Sound Juicer CD Extractor
[x] VLC Media Player
[ ] Real Player
(i386 only)
[x] Totem
[x] Xine
[x] Brasero
[x] K3B
[x] Multimedia-Codecs

Programming:
[x] KompoZer
[x] Bluefish
[x] Eclipse

Other:
[x] VirtualBox
[x] TrueType fonts
[x] Java
[x] Read/Write support for NTFS partitions

11 Google Picasa

Go to http://picasa.google.com/linux/download.html#picasa30 and select the right .deb package for your architecture (i386 or amd64):

60

Save the file to your computer:

61

 

After the download has finished, open a terminal and become root:

su

Then go to the directory where you have saved Picasa, e.g. /home/falko/Downloads:

cd /home/falko/Downloads

Take a look at the contents of the directory:

ls -l

root@debian:/home/falko/Downloads# ls -l
total 38188
-rw-r–r– 1 falko falko 31747574 Feb 11 16:35 picasa_3.0-current_amd64.deb
root@debian:/home/falko/Downloads#

You can now install Picasa as follows:

gdebi picasa_3.0-current_amd64.deb

Afterwards you can delete the Picasa .deb package:

rm -f picasa_3.0-current_amd64.deb

 

12 RealPlayer (For i386 Systems Only)

(RealPlayer is available for i386 systems only. If you are on an x86_64 system, please skip this chapter.)

Open Firefox and go to http://www.real.com/realplayer/linux. Click on the Download the DEB Installer button:

62

A download dialogue should come up. Select Save File:

63

Then install the package exactly as shown for Picasa.

 

13 Inventory (III)

We have now all wanted applications installed:

Graphics:
[x] The GIMP
[x] F-Spot
[x] Picasa

Internet:
[x] Firefox/Iceweasel
[x] Opera
[x] Google Chrome
[x] Flash Player 10
[x] FileZilla
[x] Thunderbird/Icedove
[x] Evolution
[x] aMule
[x] Transmission BitTorrent Client
[x] Azureus/Vuze
[x] Empathy IM Client
[x] Skype
(i386 only)
[x] Google Earth
[x] Xchat IRC

Office:
[x] OpenOffice Writer
[x] OpenOffice Calc
[x] Adobe Reader
[x] GnuCash
[x] Scribus

Sound & Video:
[x] Amarok
[x] Audacity
[x] Banshee
[x] MPlayer
[x] Rhythmbox Music Player
[x] gtkPod
[x] XMMS
[x] dvd::rip
[x] Kino
[x] Sound Juicer CD Extractor
[x] VLC Media Player
[x] Real Player
(i386 only)
[x] Totem
[x] Xine
[x] Brasero
[x] K3B
[x] Multimedia-Codecs

Programming:
[x] KompoZer
[x] Bluefish
[x] Eclipse

Other:
[x] VirtualBox
[x] TrueType fonts
[x] Java
[x] Read/Write support for NTFS partition

 

  • Debian: http://www.debian.org/

 

 

 

 

 

 

 

 

Comments

comments