Ubuntu Workstation Build
1. Introduction
1.1 Software Repositories
1.2 Essential Stuff
1.3 Workstation Security
1.4 Hardware Stuff
1.5 Fonts
1.6 Internet Stuff
1.7 Encryption Stuff
1.8 Audio and Video Playback and Encoding
1.9 Restricted Stuff
1.10 CD, DVD and Blu-Ray Stuff
1.11 Graphics and Photos
1.12 3D Modeling and CAD
1.13 Gnome Applets
1.14 Nautilus Extensions
1.15 Network Tools
1.16 Maps and GPS
1.17 System Utilities
1.18 Backup and File Synchronisation
1.19 Database Management and Design
1.20 Office Applications
1.21 Genealogy
1.22 Misc. Utilities
1.23 Eye Candy
Introduction
I have scripted most of this in the past, but I have recently moved to 64-bit Ubuntu so I am documenting my typical workstation build. This is a work in progress. I do the stuff below after an install of Ubuntu Desktop 8.04 including an initial package update and Nvidia restricted drivers enabled. This document is a work in progress and currently a bit messy and dis-jointed, it will improve over time Here are some pages which offer similar setup suggestions...Software Repositories
My Ubuntu Build requires that the Ubuntu repository configuration is exactly as described below.Essential Stuff
These are the things I can't do without.sudo aptitude install curl ntp screen tree
Development Tools
sudo aptitude install build-essential checkinstall libstd5++ subversion meld sagasu tidy bless spe bluefishAlthough the above tools are useful, I typically do most development using Eclipse.
Archive and File Compression Utilites
sudo aptitude install arc arj cabextract lha p7zip p7zip-full p7zip-rar pax rar sharutils unrar unzoo vim zoo
File Systems
sudo aptitude install davfs2 nfs-common sshfs
Mail Utilities
This installs a nullmailer which I configure to relay (securely) through my mail server.sudo aptitude install nullmailer mailutilsTo configure a remote mail to send via edit '/etc/nullmailer/remotes' and add something like the following.
mail.example.org smtp --user=YOUR_USERNAME --pass=YOUR_PASSWORDAlso make sure you have something sane in '/etc/mailname' for your fully qualified mailname.
Workstation Security
Anti Virus
Anti Virus for seeing what my Windows users have just been infected with ;-)sudo aptitude install clamav clamav-daemon clamav-freshclam
Firewall
Ubuntu Hardy introduced the Uncomplicated Firewall (ufw) and it is program for managing a netfilter firewall. It provides a command line interface and aims to be uncomplicated and easy to use. Gufw is a GUI for the ufw, so it can be even easier to use.wget http://launchpad.net/gui-ufw/main/0.0.6/+download/gufw_0.0.6-all.deb sudo gdebi gufw_0.0.6-all.debIn the past I used Fire Starter, but not anymore. The information in the page below is out dated and no longer maintained. References
- https://wiki.ubuntu.com/UbuntuFirewall
- https://help.ubuntu.com/community/Uncomplicated_Firewall_ufw
- http://gufw.tuxfamily.org/
- https://launchpad.net/gui-ufw
- http://code.google.com/p/gui-ufw/
Hardware Stuff
I have nVidia graphics cards and some of my machines still have infrared ports.sudo aptitude install nvidia-settings irda-utilsWe use ReadyNAS devices at work as backup units so I need RAIDar. We have Supermicro Server with integrated IMPI modules, therefore I also need the Supermicro IPMI View.
Fonts
Microsoft Fonts
sudo aptitude install msttcorefonts
Mac Fonts
This will download and install the Mac fonts which includes AppleGaramond, Aquabase, LITHOGRL, Lucida GrandeLucida, Maclucon MacGrand.wget http://ubuntu-debs.googlecode.com/files/macfonts.tar.gz tar zxvf macfonts.tar.gz sudo mv macfonts /usr/share/fonts/ sudo fc-cache -f -v
Other Fonts
sudo aptitude install xfonts-terminus
Internet Stuff
Firefox and Thunderbird
Other Browsers
99% of the time I use Firefox but I also need to test the website I develop and therefore install additional browsers to cater for that.sudo aptitude install epiphany-browser epiphany-extensions opera
Chat, IM, Blogging and FTP
I blog, chat online and FTP files.sudo aptitude install filezilla pidgin-plugin-pack pidgin-otr pidgin-themes liferea xchat-gnome blogtk gajim skype
Encryption Stuff
sudo aptitude install seahorse gcipher
Audio and Video Playback and Encoding
Audio and Video Tools
This tools are required so I can create scripts to convert or create audio/video files.sudo aptitude install flac faac faad ffmpeg gpac lame liba52-0.7.4-dev mencoder mjpegtools mkvtoolnix mp3gain mp3splt mpeg2dec mpeg4ip-utils mpeg4ip-server mpgtx toolame transcode vorbis-tools x264I also use the Nero AAC encoder as it produces better results than faac, for more details see the URL below...
wget http://ftp6.nero.com/tools/NeroDigitalAudio.zip wget ftp://ftp6.nero.com/tutorials/nerodigital/audio_encoder/NeroDigitalAudio_tut_eng.pdf unzip NeroDigitalAudio.zip chmod 755 linux/* sudo mv linux/* /usr/local/bin/
MP3 Encoding Profile
Non Free Video Codecs
Currently I don not install this package, I am testing to see if I can live without it. Basically this installs w32codecs or w64codecs or ppccodecs depending on your hardware platform.sudo aptitude install non-free-codecs
Video Players
Although I use Totem (with Gstreamer) for most viewing I do like to have other video players available to overcome the occasional playback issue. That said, I always use VLC for watching DVDs.sudo aptitude install gnome-mplayer gxine vlcI use Real Player to watch and listen to streaming media, mostly from the BBC.
Video Editors
sudo aptitude install avidemux kino
Audio Player
I found that the DLNA/UPnP plugin failed to start in Ubuntu Hardy, this is a known bug due to a package dependency. Simply install 'python-coherence' to fix the problem.sudo aptitude install python-coherenceReferences
Audio Editors
sudo aptitude install audacity tagtool
Media Servers
I run DLNA Servers on my workstations so I can access "shared" media from my PS3.Restricted Stuff
Get the audio and video codecs you really needs along with Sun's JVM, Adobe Flash, commercial DVD playback, IA-32 compatibility layers and other good stuff. 'libflashsupport' is a support library for sound output of Flash 9 with pulseaudio which can prevent Firefox from locking if you try to run more than one type of audio at the same time as flash.sudo aptitude install ubuntu-restricted-extras libdvdcss2 libflashsupport
CD, DVD and Blu-Ray Stuff
Ubuntu Hardy ships with Brasero as the default CD/DVD burning application, which is great. However, I need some other CD/DVD/Blu-Ray tools to do everything I want.Blu-Ray
I have a Blu-Ray reader/writer which can also read HD-DVD. Sadly the UDF 2.50 driver is missing from the kernel shipped with Ubuntu Hardy so we need to compile it manually.ISO Tools
ISO Master enabled me to poke about inside .ISO files.sudo aptitude install isomasterAcetoneISO2 is a feature-rich and complete GUI application to manage CD/DVD images such as ISO BIN NRG MDF IMG and do plenty of other stuff too.
wget http://heanet.dl.sourceforge.net/sourceforge/acetoneiso2/acetoneiso2_2.0.2_amd64.deb sudo gdebi -n acetoneiso2_2.0.2_amd64.debFurius ISO Mount is an ISO, IMG, BIN, MDF and NRG image management utility for Gnome. There is not currently a 64-bit version of the Furius ISO Mount therefore I need to build from source.
sudo aptitude install build-essential mono-gmcs fuseiso libgtk2.0-cil libmono-system2.0-cil wget http://www.marcus-furius.com/files/FuriusIsoMount/furiusisomount-0.8.4.0.tar.gz tar xzvf furiusisomount-0.8.4.0.tar.gz cd furiusisomount-0.8.4.0 ./configure make sudo make installFurius ISO Mount should now be installed and available under Applications -> Sound & Vision. References
- http://www.acetoneiso.netsons.org/
- http://www.marcus-furius.com/?page_id=14
- https://launchpad.net/furiusisomount/+download
VCD/DVD Authoring
sudo aptitude install dvdauthor vcdimager subtitleripper subtitleeditor gnome-subtitlesI use DVDStyler to author home made DVDs but it is not in the Ubuntu repos so we need to download and install the package provided by GetDeb.net. amd64 version for Hardy
wget http://www.getdeb.net/download/2605/0 sudo gdebi -n dvdstyler_1.6.2-0~getdeb1_amd64.debi386 version for Hardy
wget http://www.getdeb.net/download/2604/0 sudo gdebi -n dvdstyler_1.6.2-0~getdeb1_i386.debReferences While Brasero is very good I also use Nero Linux 3 to re-author projects at work which might have been created on Windows.
- Download Nero 3.x for your hardware platform.
- Install the .deb
sudo gdebi -n nerolinux-3.5.1.0-x86_64.deb
- Start Nero and enter your serial when prompted.
DVD Ripping
Graphics and Photos
sudo aptitude install netpbm imagemagick dia-gnome inkscape hugin agave gcolor2 gpaint gnomescan gnome-photo-printer camorama metapixel
3D Modeling and CAD
sudo aptitude install blender qcad
Gnome Applets
sudo aptitude install glipper netspeed ontv lock-keys-applet music-applet sensors-applet service-discovery-applet sudo chmod +s /usr/bin/cpufreq-selectory
Nautilus Extensions
sudo aptitude install nautilus-actions nautilus-gksu nautilus-image-converter nautilus-open-terminal nautilus-sendto nautilus-script-audio-convert nautilus-script-collection-svn nautilus-script-manager nautilus-wallpaper
Network Tools
VPN and SSH Stuff
I VPN and SSH into stuff so add the VPN client support to Network Manager and SSH connection and tunnels managers.sudo aptitude install network-manager-openvpn network-manager-pptp network-manager-vpnc nscd gstm ssh sshmenu sshmenu-gnomeThere are some bugs in Ubuntu Hardy that relate to DNS resolution when VPN'd via PPTP. See the references below for details, but what we are doing here is changing the order of preceedence that resolv.conf uses to decided which DNS servers to references. By default PPP interfaces (what PPTP uses) are almost the lowest priority so therefore when you try and use peer DNS through a PPTP tunnel resolv.conf is still using the DNS servers that apply to your other interfaces. Change the resolv.conf interface order.
sudo nano /etc/resolvconf/interface-orderThe default configuration, looks like this...
lo.inet* lo.dnsmasq lo.pdnsd lo.!(pdns|pdns-recursor) lo tun* tap* eth* ath* wlan* ppp* *Change it to this...
lo.inet* lo.dnsmasq lo.pdnsd lo.!(pdns|pdns-recursor) lo tun* tap* ppp* eth* ath* wlan* *References
- https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/174909
- https://bugs.launchpad.net/ubuntu/+source/network-manager-pptp/+bug/197156
- http://sshmenu.sourceforge.net/
SSH Intrusion Prevention
sudo aptitude install fail2ban
Network Administration
sudo aptitude install gip wireshark kismet nessus nessus-plugins nessusd zenmapGIP doesn't create a menu item automatically.
sudo nano /usr/share/applications/gip.desktopAdd the following, the save the file and exit.
[Desktop Entry] Encoding=UTF-8 Version=1.6.1-1 Name=GIP Comment=Internet Protocol Calculator Exec=gip Icon=/usr/share/gip/calculator.png Terminal=false Type=Application Categories=GNOME;GTK;Utility;
Remote Console
Maps and GPS
sudo aptitude install gpsdrive googleearth
System Utilities
sudo aptitude install hardinfo gparted terminator ubuntu-tweak'hardinfo' looks for '/usr/lib/libz.so' when running the CPU ZLib tests, so we need to create a symlink.
sudo ln -s /usr/lib/libz.so.1.2.3.3 /usr/lib/libz.so
Backup and File Synchronisation
sudo aptitude install conduit gnome-vfs-obexftp grsync unison unison-gtkReferences
- http://samba.anu.edu.au/rsync/
- http://www.opbyte.it/grsync/
- http://www.cis.upenn.edu/~bcpierce/unison/
- http://linuxmafia.com/~rick/linux-info/filesync.html
Database Management and Design
sudo aptitude install emma glom
Office Applications
sudo aptitude install planner gnucash
gLabels
The version of gLabels in the Ubuntu Hardy repositories is very old and doesn't work properly anymore. Therefore I grab the 2.2.1 build from André Klitzing's PPA. First download the version for your system. 64bitwget http://ppa.launchpad.net/misery/ubuntu/pool/main/g/glabels/glabels_2.2.2-1~hardy1~andre1_amd64.deb wget http://ppa.launchpad.net/misery/ubuntu/pool/main/g/glabels/glabels-data_2.2.2-1~hardy1~andre1_all.deb sudo gdebi glabels-data_2.2.2-1~hardy1~andre1_all.deb sudo gdebi glabels_2.2.2-1~hardy1~andre1_amd64.deb32bit
wget http://ppa.launchpad.net/misery/ubuntu/pool/main/g/glabels/glabels_2.2.2-1~hardy1~andre1_i386.deb wget http://ppa.launchpad.net/misery/ubuntu/pool/main/g/glabels/glabels-data_2.2.2-1~hardy1~andre1_all.deb sudo gdebi glabels-data_2.2.2-1~hardy1~andre1_all.deb sudo gdebi glabels_2.2.2-1~hardy1~andre1_i386.debReferences
Genealogy
sudo aptitude install gramps
Misc. Utilities
sudo aptitude install convertall
NFO Viewer
wget http://download.gna.org/nfoview/1.2/nfoview-1.2.tar.gz tar zxvf nfoview-1.2.tar.gz cd nfoview-1.2/ sudo ./setup.py installReferences
Eye Candy
Love your desktop and it will love you back.$Id: UbuntuBuild,v 1.91 2008/10/01 07:04:25 martin Exp $
Wiki Index All Recent Edit Top

