Since everyone is posting how they do it I'll add mine. I only have a few Bitcoins so I think this is adequate.
I'm using Ubuntu and gnupg to encrypt the wallet file automatically when I start the client. I'll share my small script for this below. I just edit my Bitcoin menu item and replace it with the name of my script and my personal key id (either name or number but name may need quotes).
eg. script saved as /usr/local/bin/gpgbtc then I call it with "/usr/local/bin/gpgbtc 249AD24C"
Gnupg is already installed by default but for my script you need two more packages. I use "srm" to make sure the non-encrypted version is toasted nicely and I use gnome-gpg so that I can get a gui password prompt.
sudo apt-get install secure-delete gnome-gpg
/usr/local/bin/gpgbtc (be sure to chmod +x so it can be run)
chmod 600 ~/.bitcoin/wallet.dat
mv -f ~/.bitcoin/wallet.dat.gpg ~/.bitcoin/wallet.dat.gpg.bak
gnome-gpg -r "$1" -e ~/.bitcoin/wallet.dat
chmod 600 ~/.bitcoin/wallet.dat.gpg
if [ "$?" == "0" ]; then
srm -fllz ~/.bitcoin/wallet.dat
This script prompts for your gpg key password, decrypts the wallet file, runs Bitcoin. After you close Bitcoin it makes a backup of the last wallet version, just in case something happened, re-encrypts the wallet, and securely removes the decrypted version. If Bitcoin doesn't close properly then it tries to detect that and leave the wallet file for you to check manually.
So far this has been working fine for me and I keep several back up copies of the encrypted wallet (and my gpg stuff too). But if you choose to do like this do so at your own risk. No guarantees from me or anyone else.
This is just for those who may want to do like this but not re-invent the wheel.