User:Misterhaan/Linux Client Setup
i use ubuntu as my workstation gnu/linux distribution along with windows vista. this guide is what i did to set up tesla and galileo with ubuntu 11.04 natty narwhal.
partition hard drive
i have a bootable linux-based rescue disc that lets me run qtparted, which is a partition editing tool. the first thing i do when setting up a new system is boot that disc and set up an ntfs partition at the end of the hard disk for windows vista to use. i put it at the end of the disk because sometimes in order to boot a partition it has to start within a certain number of bytes of the beginning of the disk, and my linux partitions are smaller.
at minimum, one could probably get by with 5 gigabytes for linux and 20 gigabytes for vista. i use an 80-gigabyte drive (which works out to 75 gigabytes in binary), so i triple both of those to end up with 15 for linux and 60 for vista. this leaves the first 15 gigabytes unpartitioned and the last 60 as a primary ntfs partition.
install vista
boot the vista install dvd to begin the vista installation. vista now essentially decompresses an image onto your disk instead of installing the way previous versions of windows worked. this makes it a little fasted but also means you can’t control what gets installed.
you can leave the product key blank and uncheck automatically activate windows when i’m online — this will give you 30 days (?) of vista without having to deal with activation, which is basically evil. not entering a product key probably means you have to select which edition of vista you installed. if you’re going with the 30 days, may as well try ultimate. make sure to check the box saying you selected the edition you purchased (note if you try to activate later and have installed the wrong version, you will have problems). accept the license terms, and choose a custom install. this is the only option (upgrade is disabled), but it has a link to “help me decide.”
choose the windows partition and format it (you'll have to click more or tools or advanced or something before format shows up). click next and get ready to wait.
install ubuntu
this is pretty straighforward — simply boot the cd and it will load up ubuntu for you. launch the install shortcut that’s on the desktop to actually install ubuntu to your hard drive. it should be fairly easy to decide what options to choose (there aren't all that many choices!), so mostly do what seems right to you. i need to set specific user ids for my users to match up with my server, so when prompted to create a user i create tempuser with password tempuser.
after the system reboots, it will probably have some updates it wants to install but before that i want to create my users and group(s) to match my server. this is done largely the same way as described in the linux server setup, except admin users here should also be part of some additional groups (use with -G in either useradd or usermod). when logged in as tempuser, run the groups command in terminal to get the list of groups (ignore the tempuser group). remember to remove tempuser once the other users have been created. once logged in with another user, install all the updates, but don’t restart quite yet.
prevent the update window from popping up (you'll get an icon in the notification area instead) with this command:
[code]gconftool -s --type bool /apps/update-notifier/auto_launch false[/code]
skip the confirmation dialog when shutting down / restarting with this command:
[code]gconftool -s --type bool /apps/indicator-session/suppress_logout_restart_shutdown true[/code]
if you use something other than /home/ as your home directory (i do because i mount my server’s home directory there) you need to fix apparmor so evince (pdf viewer) will run. edit [code]/etc/apparmor.d/tunables/home[/code] as root and change [code]@{HOMEDIRS}=/home/[/code] to use whatever directory you’re using as a home directory. to apply the change, restart apparmor (or reboot):
[code]sudo /etc/init.d/apparmor restart[/code]
laptop considerations
a couple other steps make using ubuntu on a laptop nicer. you can probably skip this entire section for desktops, unless you happen to have a fingerprint reader or use wireless internet.
remove default keyring password
the only thing in my default keyring is my wireless password. since i also have a fingerprint reader and can log in with that, the default keyring won’t be unlocked from fingerprint login so you have to enter your password anyway unless you remove the default keyring password. before connecting to my wireless i bring up a command prompt and enter this:
[code]rm ~/.gnome2/keyrings/*[/code]
then connect to wireless and it will ask for a keyring password. leave it blank and choose unsafe storage ― your wireless password will now be stored unencrypted for the extra convenience of not having to enter your password to decrypt it if you use fingerprint login.
enable fingerprint reader
my laptop’s fingerprint reader is compatible with thinkfinger, which happens to be in ubuntu’s repositories. install it and enable it with the following commands:
[code]sudo apt-get install thinkfinger-tools libpam-thinkfinger sudo /usr/lib/pam-thinkfinger/pam-thinkfinger-enable[/code]
now you need to get your fingerprints registered, then make sure it worked. the first command will ask you to swipe your finger 3 times and then will save a file in your home directory. the second has you swipe again to see if it matches what you saved.
[code]tf-tool --acquire tf-tool --verify[/code]
mount drives when connecting to home wifi
after connecting to home wifi at least once, go to a terminal and use this command to find the uuid of your home wifi:
[code]nmcli con list[/code]
now create a new file as root in [code]/etc/NetworkManager/dispatcher.d/[/code] and enter the following code:
[code]#!/bin/bash if [ "$CONNECTION_UUID" = "<YOUR UID HERE>" ]; then
mount /mount/point/one mount /mount/point/two
fi[/code]
now set the permissions on the file so only root has access and can read, write, or execute it:
[code]sudo chmod 700 /etc/NetworkManager/dispatcher.d/mount-script.sh[/code]
fix network controller driver
it seems 64-bit ubuntu has had problems with realtex 8111/8168B ethernet for a while now, installing a non-working (for this model, at least) r8169 driver. the best way i found around this is to download the latest [url=http://code.google.com/p/r8168/downloads/list]r8168 driver[/url] from google code (do this from windows / on a different computer and put it on an sd card, usb drive, or something). the latest is version 8.025.00 but has expects a 2.x linux kernel so needs some modifications to build on ubuntu 11.10 which uses the 3.0 linux kernel. you also want to keep this code around for kernel updates that will require you to rebuild, so i extract it to /opt/src/ (you might need to make the src part with [code]sudo mkdir /opt/src[/code]). extract with tar and then edit the Makefile, all as root:
[code]cd /opt/src/ sudo tar xjf /path/to/r8168-8.025.00.tar.bz2 cd r8168-8.025.00 sudo gedit src/Makefile[/code]
find the line that starts with KEXT (line 36). it should look like this when it’s not working for linux 3.0:
[code]KEXT := $(shell echo $(KVER) | sed -ne 's/^2\.[567]\..*/k/p')o[/code]
this adds the possibility of 3.0 (along with 2.0, 3.5, 3.6, and 3.7):
[code]KEXT := $(shell echo $(KVER) | sed -ne 's/^[23]\.[0567]\..*/k/p')o[/code]
now you can actually run the script to build and install the r8168 driver (make sure you’re in the directory tar extracted to):
[code]sudo ./autorun.sh[/code]
you should see the network manager icon up near the clock showing some action, eventually telling you it connected. now you just need to tell it not to load the r8169 driver since that one didn’t work. edit /etc/modprobe.d/blacklist.conf and add these lines somewhere (i put it near the beginning, but you could put it at the end if you prefer):
[code]# wrong ethernet driver blacklist r8169[/code]
now you’re done until an update invalidates the r8168 driver, at which point you just need to get into the directory with the r8168 source and run autorun.sh again (the blacklist shouldn't go away). you’ll know when the driver gets invalidated because ubuntu will act like you don't have ethernet at all.
enable nfs network shares
for some reason my workstations never see my server, so i have to add it to the hosts file. in linux this file is at /etc/hosts — add a line to the end that contains the server’s ip address, a tab, and the name of the server.
ubuntu doesn’t support nfs by default, so install it with [code]sudo apt-get install portmap nfs-common[/code]. edit /etc/fstab as root and add one line for each nfs share in this format:
[code]server:/nfs_share /local/mount/point nfs noexec 0 0[/code]
on my laptop the server can’t be accessed until the wireless is connected, which happens at login (after fstab mounts happen), so the best i know to do is mount them manually. where it says [code]noexec[/code] instead put [code]user,noauto,noexec[/code] to not mount at startup and to allow any user to mount.
make sure your local mount point directories exist (create them with sudo mkdir /local/mount/point), then reboot and your nfs shares should be accessible. if you don’t want to reboot, you can manually mount everything with sudo mount /local/mount/point.
set favorite folders in nautilus quicklist
the unity launcher (that thing on the left with the icons) has extra options (called the quicklist) for some applications when you right-click them. for example, firefox has an option to open a new window. you can add shortcuts to other folders to the home folder (nautilus) item by copying and modifying a file:
[code]cp /usr/share/applications/nautilus-home.desktop ~/.local/share/applications/ gedit ~/.local/share/applications/nautilus-home.desktop[/code]
add something like this at the end:
[code]X-Ayatana-Desktop-Shortcuts=MyFolder;My Other Folder;Folder3 [MyFolder Shortcut Group] Name=MyFolder Exec=nautilus /path/to/my/folder
[My Other Folder Shortcut Group] Name=My Other Folder Exec=nautilus /path/to/my/other/folder
[Folder3 Shortcut Group] Name=Folder3 Exec=nautilus /path/to/folder3[/code]
next time you log in this will take effect.
set preferences
there are a couple settings in system → preferences i’ll point out:
under [i]appearance[/i] i set my background image. under screen i turn off lock so i don’t need to enter my password after the screen turns off.
the other settings i mess with are under user accounts (under system). select a user and then you can click the placeholder picture and set a better one. also any users created with useradd probably won’t show a name unless you click next to the picture and enter one.
auto-login is a security risk — i only use it on my desktop because i’m reasonably sure nobody is going to have physical access to that computer that shouldn’t. i don’t use it on my laptop at all. to enable auto-login, select the user you want to log in from user accounts and change automatic login to on.
many of the settings from before, including font sizes and window themes are missing. you can get at font sizes by installing advanced settings with [code]sudo apt-get install gnome-tweak-tool[/code] but i haven’t found a way to control the themes yet.
tweak default theme titlebars
the default theme is actually not all that bad though — the parts i don’t like are you can’t change the color, the close button is in the upper left, and there’s no program icon. while it’s possible to move the min/max/close buttons to the upper right with a single line pasted into the terminal, getting the program icon to show up requires editing the theme. all the themes are stored in [code]/usr/share/themes/[/code], and the default is named Ambiance. i start out by copying it to a new directory so i don’t have to change the actual Ambiance theme:
[code]cd /usr/share/themes/ sudo cp -r Ambiance/ AmbianceBetter[/code]
there are two files that need to be changed — [code]index.theme[/code] to move the buttons and [code]metacity-1/metacity-theme-1.xml[/code] to use the program icon instead of a grey dot. both files need to be edited as root. in [code]index.theme[/code], find the line that starts with [code]ButtonLayout=[/code] (probably the last line) and change it to [code]ButtonLayout=menu:minimize,maximize,close[/code] to put the buttons in the right places. next in [code]metacity-1/metacity-theme-1.xml[/code], you’re better off searching for [i]name="menu_[/i] to find the 4 draw_ops tags that match since it’s a large file. each tag has on the next line an image tag referencing a couple png files for that grey dot thing. on each of the 4 image tags, change image to icon, delete the filename="..." and change object_width and object_height to mini_icon_width and mini_icon_height. once both files have been modified, switch to your copy of the theme with this:
[code]gconftool-2 --set "/apps/metacity/general/theme" --type string "AmbianceBetter"[/code]
if that doesn’t appear to change anything, you may need to also set the titlebar icon string with this:
[code]gconftool-2 --set "/apps/metacity/general/button_layout" --type string ":minimize,maximize,close"[/code]
enable vnc server
i skip this on my laptop, but in [i]desktop sharing[/i] i can enable a vnc server. i allow other users to view and control my desktop, uncheck you must confirm each access to this machine, and require the user to enter this password (the same one i use for windows vnc server). i have multiple workstations behind my router running vnc servers, so they can’t all use the default port. unfortunately the configuration (which is hard to find after 8.04) doesn’t even allow the ports i have been using, so i have to use iptables to redirect requests on the port i want to use to port 5900 (the default vnc server port). the following commands set this up for me:
[code]sudo iptables -A INPUT -i lo -j ACCEPT sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 4645 -j REDIRECT --to-port 5900 sudo iptables -A INPUT -i eth0 -p tcp --syn --dport 5900 -j ACCEPT[/code]
of course that’s going to get reset the next time the system comes up, so we need to set up a “service” to save and restore rules. to do that, create [code]/etc/init.d/iptables[/code] as root and paste the following into it:
[code]#!/bin/sh
- This is a ubuntu adapted iptables script from gentoo
- (http://www.gentoo.org) which was originally distributed
- under the terms of the GNU General Public License v2
- and was Copyrighted 1999-2004 by the Gentoo Foundation
- This adapted version was intended for and ad-hoc personal
- situation and as such no warranty is provided.
IPTABLES_SAVE="/etc/iptables.rules" SAVE_RESTORE_OPTIONS="-c" SAVE_ON_STOP="yes"
checkrules() {
if [ ! -f ${IPTABLES_SAVE} ] then echo "Not starting iptables. First create some rules then run" echo "\"/etc/init.d/iptables save\"" return 1 fi
}
save() {
echo "Saving iptables state" /sbin/iptables-save ${SAVE_RESTORE_OPTIONS} > ${IPTABLES_SAVE}
}
start(){
checkrules || return 1 echo "Loading iptables state and starting firewall" echo -n "Restoring iptables ruleset" start-stop-daemon --start --quiet --exec /sbin/iptables-restore -- ${SAVE_RESTORE_OPTIONS} < ${IPTABLES_SAVE}
}
case "$1" in
save) save echo "." ;;
start) start echo "." ;; stop) if [ "${SAVE_ON_STOP}" = "yes" ]; then save || exit 1 fi echo -n "Stopping firewall" for a in `cat /proc/net/ip_tables_names`; do /sbin/iptables -F -t $a /sbin/iptables -X -t $a
if [ $a == nat ]; then /sbin/iptables -t nat -P PREROUTING ACCEPT /sbin/iptables -t nat -P POSTROUTING ACCEPT /sbin/iptables -t nat -P OUTPUT ACCEPT elif [ $a == mangle ]; then /sbin/iptables -t mangle -P PREROUTING ACCEPT /sbin/iptables -t mangle -P INPUT ACCEPT /sbin/iptables -t mangle -P FORWARD ACCEPT /sbin/iptables -t mangle -P OUTPUT ACCEPT /sbin/iptables -t mangle -P POSTROUTING ACCEPT elif [ $a == filter ]; then /sbin/iptables -t filter -P INPUT ACCEPT /sbin/iptables -t filter -P FORWARD ACCEPT /sbin/iptables -t filter -P OUTPUT ACCEPT fi done start-stop-daemon --stop --quiet --pidfile /var/run/iptables.pid --exec /sbin/iptables echo "." ;;
restart) echo -n "Flushing firewall" for a in `cat /proc/net/ip_tables_names`; do /sbin/iptables -F -t $a /sbin/iptables -X -t $a done; start echo "." ;; *) echo "Usage: /etc/init.d/iptables {start|stop|restart|save}" >&2 exit 1 ;;
esac
exit 0[/code]
now make it executable, add it to the system startup, and also initialize the /etc/iptables.rules file: [code]sudo chmod 755 /etc/init.d/iptables sudo update-rc.d iptables start 37 S . stop 37 0 . sudo iptables-save > iptables.rules sudo cp iptables.rules /etc/iptables.rules rm iptables.rules[/code]
it’s probably a good idea to keep a backup copy of iptables.rules somewhere else just to make sure it doesn't get overwritten.
before 11.10 there’s a [url=https://bugs.launchpad.net/fglrx/+bug/353126]bug[/url] between compiz (desktop effects) and the vino (the vnc server) which will prevent the vnc client from updating its screen image. to work around this problem i have to add this command under power button > system settings > startup applications:
[code]compiz --replace --user-root-window[/code]
it updates rather slowly but at least it does update.
remove stuff
i remove some things i don’t like. the command for that looks like this:
[code]sudo apt-get remove packages[/code]
where packages is at least one package to remove. to remove more than one package, separate their names with spaces. here are the packages i remove:
[b]banshee[/b] - an itunes-like media library program. i just want to play my already-organized music so i’ll install audacious instead. [bullets][b]empathy[/b] - this has potential as a nice im client, but i’m going to stick with pidgin for now since it lets me group contacts and set status differently across protocols. [b]gwibber*[/b] - a “social client” which my best guess is that it’s for updating twitter and facebook and those sorts of sites. i’ll just go to the sites, and i usually post from my phone anyway. [b]simple-scan[/b] - an oversimplified scanner interface, missing important basic features like preview. install xsane instead if you have a scanner that works with linux [b]ubuntuone*[/b] - a moderate amount of free online storage. i have plenty of my own local storage and don’t need this. there are a number of packages so the wildcard helps find all of them.[/bullets]
here’s the full command to remove everything i remove:
[code]sudo apt-get remove banshee empathy gwibber* simple-scan ubuntuone*[/code]
install more stuff
of course there are also a few things i use that aren’t in ubuntu by default. add them with a command that looks like this:
[code]sudo apt-get install packages[/code]
where packages again is at least one package to install, and multiple packages can be specified separated with spaces. ubuntu can find most software i want — i’ll discuss those it can’t find or that it finds an older version of than i want later. here are the packages i install with apt-get:
[bullets][b]audacious[/b] - sound player derived from xmms (similar to winamp). this works better for my setup than the default player (banshee). audacity is added to the [i]sound & video[/i] submenu of the applications menu. [b]audacity[/b] - sound editor. [b]avidemux[/b] - simple video editor i use to convert mkv to avi. [b]compizconfig-settings-manager[/b] - advanced display effects settings tool, which also configures some unity settings. unity handles the menu and running programs list. [b]eclipse[/b] - programming environment that i use for building websites with php, mysql, html, css, and javascript. it got updated to a reasonable version in a recent ubuntu release (either 9.4 or 9.10). i need to install more features from within eclipse later on, but this simplifies the core eclipse install at least. [b]filezilla[/b] - ftp client. i use this for transferring files to my website that aren’t managed by subversion. a filezilla item is added to the [i]internet[/i] submenu in the applications menu. [b]gimp[/b] - graphics editor. this was in the default ubuntu install until 10.04 where they decided that fspot handles all the photo enhancing that most users want, but i want more than that so i install gimp. [b]gnome-gmail[/b] - creates a menu entry for gmail which launches it in firefox. can also be used as a preferred application (sort of — see below). [b]konqueror[/b] - a khtml-based browser (safari and chrome use webkit, which is based on khtml). i have installed this in the past to test my web development in it, but i tend to not actually use it so this time i won’t. it adds a bunch of kde stuff to the menus, with konqueror in the [i]internet[/i] section. [b]mixxx[/b] - dj software i’m playing around with on my laptop. [b]mp3gain[/b] - loudness analyser for mp3 files. mp3gain attempts to figure out how loud an mp3 file sounds, and then adds gain information to the file so that it sounds like it has the same loudness as the other mp3s (provided you use this on all of them). it’s a command-line tool so won’t put anything in the applications menu. [b]pidgin[/b] - instant messaging client with more important features than the default empathy. [b]screenlets[/b] - desktop widgets/gadgets/whatever you want to call them. i use this to get weather, an analog clock, a monthly calendar, and a slideshow of my photos on the desktop. screenlets shows up in the [i]accessories[/i] submenu of the applications menu. [b]sound-juicer[/b] - cd ripper. shows up as [i]audio cd extractor[/i] in the [i]sound & video[/i] section. [b]soundconverter[/b] - just as it sounds like, this program can load up a bunch of sound files and convert them to a different format. i don’t typically do this, so i wait to install it until i’m about to use it. [b]subversion[/b] - command-line subversion client. mostly i use subversion through an eclipse plugin, but sometimes it’s handy to have the svn command available at the command line. since it’s a command-line utility it doesn’t show up in the applications menu. [b]sux[/b] - switch user and forward x context. handy when i want to run a gui application as a different user. [b]ubuntu-restricted-extras[/b] - mp3, flash, java, and dvd playback. these changes affect browsers and players that are installed (or will be installed later) so nothing is added to the applications menu. [b]xsane[/b] - scanner interface that works with gimp. as far as i know my current scanner isn’t supported but my old one is, so sometimes i’ll install it on my laptop in case i want to bring it and the scanner somewhere.[/bullets]
here’s the full command to install everything i install:
[code]sudo apt-get install audacious audacity compizconfig-settings-manager eclipse filezilla gimp mp3gain pidgin screenlets sound-juicer subversion sux ubuntu-restricted-extras[/code]
install puddletag
puddletag is an mp3 (and other audio formats) tag editor. i use it after i rip an audio cd or after i download music to embed cover art and make sure my iphone will sort albums in the correct order. it’s not available in ubuntu’s standard repositories so the next best thing is the ppa:
[code]sudo add-apt-repository ppa:webupd8team/puddletag sudo apt-get update sudo apt-get install puddletag[/code]
it adds itself under [i]sound & video[/i]. since my music files are owned by a different user, i need to be able to run puddletag as someone else. copy the following into a file (i put it in my home directory named puddletag-somebody) and replace somebody with the other user account:
[code]xhost +SI:localuser:somebody gksudo -u somebody puddletag[/code]
then make it executable with chmod:
[code]chmod 700 puddletag-somebody[/code]
then add a menu entry to run that script, or just run it from a terminal.
install opera browser
opera isn’t available in ubuntu’s repositories, so go to [url=http://www.opera.com/]opera’s site[/url]. it recognized that i was running ubuntu and gave me a 64-bit deb file to download. it calls it the default package format. once downloaded, it can be installed with:
[code]sudo dpkg -i opera...64.deb[/code]
it adds itself to the applications menu under [i]internet[/i]. i use opera for my google apps account (separate from my google reader account, unfortunately), and also for sometimes testing my web development.
there is more information on using opera with ubuntu available at [url=https://help.ubuntu.com/community/OperaBrowser]help.ubuntu.com[/url].
install skype
skype isn’t open source, so ubuntu won’t find it right away. ubuntu does sort of support it though, so you can go through a lot of steps to be able to install it the way you do for almost everything else, or you can go to [url=http://www.skype.com/]skype.com[/url] and download a deb file and install like the directions for opera. for the more official way, here are the steps:
you need to add the canonical partners repository, but the menu option for adding repositories is hidden by default, so start by adding that. right-click the system menu and choose [i]edit menus[/i]. in the left pane of the [i]main menu[/i] window that comes up, scroll down and [i]system[/i] → [i]administration[/i] (it’s normally last in the list). in the right pane, check the box for [i]software sources[/i] and close the window. now you can go to the system menu and choose [i]administration[/i] → [i]software sources[/i].
in the [i]software sources[/i] window, go to the [i]other software[/i] tab and check the box next to [i]canonical partners[/i]. close the window and reload available software information when prompted. now you can get to the command line and install skype just as you would anything else:
[code]sudo apt-get install skype[/code]
it will now be available from the internet menu under the applications menu.
install handbrake
handbrake seems geared to ripping dvds, but it also works well for encoding digital tv (especially important since an update broke the a/v sync from mencoder). it's not in the repositories but you can add a ppa and install easily that way:
[code]sudo add-apt-repository ppa:stebbins/handbrake-snapshots sudo apt-get update sudo apt-get install handbrake-gtk[/code]
i find that mkv format with mpeg-4 (ffmpeg) video codec, ntsc framerate, resize to 960x540, and ac3 (pass-thru) audio plays fine on xbox media center.
install wine
wine isn't in the repositories, but there's a ppa for it. add the ppa and install wine with this:
[code]sudo add-apt-repository ppa:ubuntu-wine/ppa sudo apt-get install wine[/code]
run [i]Configure Wine[/i] from the menu to configure it how you like. i need to at least visit the audio tab so it recognizes my sound. exe files can be started by double-clicking, but msi files need to be run with [code]wine start /unix /path/to/setup.msi[/code] or [code]wine start 'D:\setup.msi'[/code] (exe files can also be run in that way).
set up eclipse
while it may make sense to run eclipse as root to install additional eclipse features for all users, doing so causes problems when the eclipse package gets updated ― so just run it normally. i want support for php, html/css/javascript, subversion, and sql. this requires adding some update sites in order to install using eclipse. select [i]install new software[/i] from the [i]help[/i] menu (no idea how this is help). use the [i]add[/i] button to add each of these urls one at a time:
[bullets]http://subclipse.tigris.org/update_1.8.x[/bullets]
once the update sites are added, set [i]work with[/i] to all available sites and select the following packages:
[bullets]database development -> data tools platform enablement extender sdk subclipse → subclipse subclipse → subversion client adapter web, xml, and java ee development → php development tools (pdt) sdk feature[/bullets]
the last one is already installed if you're starting from the php developers’ eclipse, which i do on windows.
ubuntu 11.04 has fancy narrow scroll bar replacements most places, but they don’t quite work in eclipse (you see them, and they respond to scroll wheels, but there’s no click and drag). to revert just eclipse to the old scroll bars, make a file with the following contents:
[code]#!/bin/bash LIBOVERLAY_SCROLLBAR=0 eclipse[/code]
chmod it to 755 so it's executable, then edit the main menu (power icon -> system settings) and find eclipse under programming. edit it with the properties button and change it to the path to the file you just created.
set gmail as preferred mail program
this would be a lot simpler, but gnome-gmail doesn’t show up in the list of mail programs, and there’s no longer an option to use a custom one. see above to install gnome-gmail if you haven’t already, since otherwise you need to create a script. edit the file [code]~/.local/share/applications/mimeapps.list[/code] (or create it if you already removed evolution) and give it the following contents:
[code][Default Applications] x-scheme-handler/mailto=gnome-gmail.desktop
[Added Applications] x-scheme-handler/mailto=gnome-gmail.desktop[/code]
this will use a gmail icon for the check email item in the unity dash and should also open mailto: links in gmail.
synaptics touchpad multitouch support
i find two-finger scrolling very useful, so if your laptop supports it (my netbook does but my laptop doesn’t), here’s how to enable it on ubuntu:
set up screenlets
go to [i]applications -> accessories[/i] -> screenlets to bring up the screenlets manager. find a screenlet you want and double-click it to start it up and put it in the upper left. you can move it and normally set a number of options once it’s running. i like to run clearweather, clearcalendar, and slideshow on tesla or mount on galileo. to make sure a screenlet comes up every time, check the [i]auto start on login[/i] box in the screenlets manager when that screenlet is selected.
to customize screenlets, first set the “zip code” for clearweather by right-clicking it and choosing [i]zip code[/i]. i like to go to weather.com and enter my city, then copy the code from the url and use that instead of the zip code so that the screenlet displays the right city (my zip code is shared with another city). now to set the options, right-click it again and choose [i]properties[/i]. on the options / screenlet tabs, set scale to 1.25 and opacity to 0.75. check [i]stick to desktop[/i] and uncheck [i]keep above[/i]. on the options / weather tab, uncheck [i]use celsius temperature[/i] unless you prefer to see temperatures in celsius.
clearcalendar's options / screenlet tab should set scale to 0.75, opacity to 0.80, check [i]stick to desktop[/i], and uncheck [i]keep above[/i].
slideshow got much better in 11.04 — no need to adjust scale, and keep opacity at 1.00 since it’s showing photos, with [i]stick to desktop[/i] checked and [i]keep above[/i] unchecked. on the options / image loading tab, set [i]select engine[/i] to folder (click apply), [i]update interval[/i] to 30, [i]image folder[/i] to the directory with photos, and check [i]folder recursion. on the options / appearance tab, set [i]bounding x[/i] to 150, [i]frame width[/i] to 0, and [i]shadow width[/i] to 2.
mount wasn’t there by default starting in 11.04, but can be added by installing the mount-screenlet package. scale to 0.80 but leave opacity alone (it’s partially transparent by default). check [i]stick to desktop[/i], and uncheck [i]keep above[/i]. on the options / options tab, uncheck [i]show shadow[/i] to make it look more like the others, then update the drives blacklist to hide any mounts you don’t want to accidentally unmount. i had to remove /home from the blacklist since i have an nfs-mounted home that’s only available on my home network. also it showed /sys/fs/fuse/connections (not sure what that is), so i got rid of that by adding /sys/* to the blacklist.