Top Five Must-Have Ubuntu Apps

3 May, 2009

So, it’s May. I’ve gotten quite a bit of sun in the past few days, so I’m feeling pretty good- I might be able to get rid of this pasty Alaskan vampire anti-tan. But enough about me, on to the exciting stuff.

In celebration of May, the fifth month of the year, I’m listing my top five “killer apps” for Ubuntu- some of them you may already have but those you don’t you should download immediately. That’s an order, private.

1. Gnome-Do
There are not words to describe how truly awesome this app is. Pressing Super+Spacebar activates gnome-do, then you type in the first few letters of the program you want to run. It learns your most used apps and brings them up sooner, i.e. for me all I have to type is super+spacebar then F and enter to run firefox. T gets me the terminal and W gets me Open Office Writer. So on and so forth. It’s unobtrusive, highly customizable and extensible, and significantly speeds up your workflow. One skin, termed “docky” adds an OSX style dock. Bloody brilliant, old chap!
Get It: An older version of gnome-do is in the repos and can be installed via Add/Remove. For the newest and imho best stable build, you’ll need to download the .deb from here.
The gnome-do screen, showing firefox

2. Handbrake
Handbrake is a really powerful, at least somewhat intuitive DVD ripper and decrypter. Out of the box, Handbrake can digitize non-encrypted DVDs, which is pretty cool. Need to make a few copies of your daughter’s dance recital or that vid of you making a fool of yourself at the office Christmas party? No worries, just pop in the dvd, open Handbrake, select the source, choose from a list of presets that determines video size, quality, aspect ratio, etc, and hit start. It takes a while, but it’s actually faster than a lot of other ripping software I’ve used.
If you like to live life on the edge, installing libdvdcss from the medibuntu repos will confer upon you the magic ability to rip encrypted commercial dvds. Now, let me be very clear here, I am a pre-med student, not a lawyer, and the DMCA is very clear about copyright infringement. You can get in a serious amount of trouble for pirating digital media. That said, to the best of my knowledge it IS legal to make personal archival copies of digital media, including DVD’s, that you own. This would include probably the most common use of Handbrake: to transfer your dvd’s to an iPod. Handbrake has a few presets for various aspect ratios used by the different iPod models and uses the .mp4 file format which is fully compatible with iTunes. For movies, Handbrake automatically selects the longest title, for television episodes and the like a little hunting through the titles may be necessary to find the one you want. Ripping iPod copies is also significantly faster than full sized copies- it takes just a smidgen longer to rip than it would take to watch it.
Get It: .deb files are available here.
Handbrake main screen showing the ripping of a House episode

3. Conky
I’ve talked about Conky in the past, but it’s such a neat little app it deserves mention as often as possible. Conky is a “light-weight system monitor for X.” Conky is highly customizable and extensible via a file called the config file, which allows you to display pretty much any bit of information about your computer in any font, color, and layout you want. It’s pretty much conkitastic.
Get It: conky is in the Ubuntu repos. To install it, type:
sudo apt-get install conky
zcat /usr/share/doc/conky/examples/conkyrc.sample.gz > ~/.conkyrc

The config page is located at ~/.conkyrc and using the text editor of your choice you can customize it to your heart’s content. Check out the documentation page for help.
My Conky Design

4. Boxee
I know I’ve talked about this one before too, but I really can’t emphasize enough what a cool program this is. It allows you to play pretty much all the videos, movies, television shows, pictures, and radio stations the interwebz has to offer, all wrapped up in a slick interface that transfers beautifully to a tv. Boxee is just plain my favorite new toy and I can’t get enough of it. Yesterday, I discovered a free app for my iPod touch that turns it into a boxee remote control via wifi, and the best part of it is that it just worked. Suffice to say I’m pleased as punch.
Get It: Boxee is a available as a .deb from their website. You need to sign up for an account, but it’s both money and spam free. The Boxee remote is in the iTunes app store.
hulu on boxee

5. Compiz Fusion
Okay, okay, I know Compiz Fusion isn’t technically an application, but if you don’t have it already, trust me: you want it. Compiz Fusion is a compositing window manager, which is geek-speek for super-neat-eyecandy-maker. For Compiz to work, you need a video card capable of 3D acceleration- which is most modern cards. (To check if your card is working properly, “run glxinfo | grep rendering” in a terminal, it should spit out “direct rendering: yes”)
Effects provided by compiz-fusion include wobbly windows, desktop cube, and an exposé-like desktop wall. Try it: you’ll like it.
Get it: Compiz comes with all the recent Ubuntu installations, you just need to enable it:
sudo apt-get install compizconfig-settings-manager
Then run it (it’s in the system preferences menu) to choose your desired effects.

And that’s all she wrote, folks! If you have questions about any of the programs here, feel free to leave a comment or e-mail me. Later this month I will post a list of my top five favorite applets for gnome panel.
Happy May!


The Future has Arrived (and Apple Didn’t Make it!)

26 April, 2009

So, next week is finals week for me which means it’s my job, as a responsible student taking charge of her own education, to slack off as efficiently as possible. I have been having issues upgrading to Jaunty, so I couldn’t toy around with that. Instead, I decided to haul back out my copy of Boxee and give it a second chance.

I first read about Boxee about a month ago in a Wired article. It’s basically a glorified browser that allows you to access a variety of online multimedia sources like pandora radio, youtube, flickr, and sometimes hulu (more on that later). It can also play the media on your hard drive, including your music, movies, television shows, and pictures. What really sets Boxee apart, however, is the integration of an excellent social networking concept that allows you to register friends and share your faves with them. You can rate pretty much every piece of media you see or hear, and your high rated media shows up in your friends’ browsers under a dedicated column. You can also recommend media for one specific person. Did I mention that its UI is hella’ cool??

Now, before you get too excited, there are a few gotchas and some of them are BIG. Boxee is alpha software, even less polished than a beta release. It’s surprisingly stable for an alpha release and once you learn the things that piss it off, you can devise workarounds. But there are definitely things that piss it off- if you’re looking for rock-solid stability you’ll probably develop a tick if you use this program for too long. But heck, you’re a linux user, rock-solid stability isn’t even in your vocabulary, right?

The other major gotcha isn’t actually Boxee’s fault. Because the idea of a centrally located media center is fairly new, content providers haven’t quite figured out how to handle this brave new world. Some have jumped in headfirst, like youtube, while others, like netflix, have been less than eager to leave the shallow end of the pool and swim with the big kids. Thus, the online media menu is a bit spastic though there is a net gain in content over time.

Perhaps an example of how to totally screw it up is Hulu. I love hulu, don’t get me wrong. It was hulu that allowed me to drop kick my cable box into the Pacific. But the folks at hulu have been real bitches about this Boxee thing. Not too long after boxee went public, hulu demanded they remove its content. Then they made a blog post explaining that while they thought boxee was a good idea, their content providers were raising hell. What apparently they thought their readers didn’t know is that hulu is the content providers- it’s a joint venture between Fox and NBC. Because if cutting out a notable portion of your userbase doesn’t disgruntle them, being condescending should do it! In any case, it’s turning into an all out slugfest between boxee and hulu. Sometimes hulu programming is available (as it is when I write this) and sometimes it’s not (as it was when I first downloaded boxee) so don’t switch to boxee just for a slicker hulu interface.

Gotcha’s out of the way, I have to admit that I’m am extraordinarily impressed with boxee, and especially the how far it’s come from extraordinarily humble beginnings. When I first downloaded it three weeks ago it was essentially a very cool looking interface with no actual substance. None of the videos worked, hulu was down, there was a gorgeous and incredibly tempting netflix button that did absolutely nothing, and it froze if you so much as thought about playing music.

I downloaded the newest upgrade today and to say they’ve made progress is a gross understatement. Netflix is still unavailable on computers that lack the silverlight engine (that means us, fellow denizens of Ubuntuland) but pretty much everything else is at least basically functional- videos play, hulu is accessible, and some of my music collection shows up in the interface. For me, that’s enough functionality to win me back. I am also deeply and irretrievably in love with the keyboard only interface: a wireless keyboard is all you need to control it from the comfort of your couch!

If you need convincing (don’t know why you would, it’s free software!) check out some screenies that I shot earlier. From the top: the internet video screen with the main menu off to the side, the music selection screen, an album review page, hulu, and the awesome pandora interface.





Last but not least, there is apparently a poll going as to what exactly the Boxee logo represents. For what it’s worth, I think it’s a frog with mental health issues.


Jaunty Lightscribe Labels

23 April, 2009

Well, Ubuntu, Kubuntu, and Xubuntu 9.04 (Jaunty Jackalope) were released today, amid joyous worldwide celebration [probably].

As we all know, one of the best parts of being a linux user and surely the best part of a new release is handing out liveCDs to hapless onlookers during airplane trips. See someone looking interestedly at your computer? Engage them in conversation! Extoll the virtues of an open source operating system! Convince them that they will surely go to hell unless they repent their proprietary sins and bask in the warm neon glow of a GNOME desktop!

But let’s face it, the average person off the street might be won over by your preaching, but the minute you hand them that memorex cd with sharpie scrawlings on it, they’re thinking “holy hell, these people are cheap!”

Well, we are. And that’s okay, it works for us. But people who are used to flashy microsoft boot disks may have a hard time taking a hand-burned liveCD seriously. Enter LightScribe, a neat bit of hardware that comes with a lot of computers that allows to you burn decorations on your cds. If your cd-rom drive isn’t LightScribe enabled you can get an external drive that is. You also need special media that tend to be a bit more expensive and difficult to find. The result is pretty cool, though.

So, without further ado, the labels I designed for the Jaunty, in Ubuntu, Kubuntu, and Xubuntu flavors. For more information on using lightscribe with Ubuntu, check out my previous post “Lightscribe for Ubuntu.”

Enjoy, and Happy Clicking!


How to Fix Conky Flickering, Borders, and Drop Shadows

15 April, 2009

Conky is an awesome little program that displays a wide variety of system stats and is both lightweight and highly customizable.

I love Conky a lot, but it is known to have a bit of a temperament and if your script doesn’t contain some very specific commands it will fight with your window manager (compiz, metacity, etc) and nautilus, causing a wide variety of oddities, including but not limited to strange borders, flickering, disappearing desktop icons, and drop shadows where no drop shadows should be.

This quick how-to will explain how to fix these problems. It assumes that you have a basic working knowledge of how to edit the .conkyrc (aka conky config) file and how to restart conky. I’ve also included a copy of my personal .conkyrc for comparison or for your use should you wish.

There are two main causes of Conky malfunctions, conky conflicting with the window manager and conky conflicting with nautilus. You may have one or both, but luckily the solutions are quite easy.

If conky is repeatedly flickering, that means that it’s conflicting with nautilus. Add this string to the top section of your conky config to fix it:
# Use double buffering (reduces flicker)
double_buffer yes

If strange borders are appearing around conky, the desktop icons disappear, or conky casts a drop shadow, it means that conky is conflicting with your window manager. Add this string to the top section of your conky config to fix it:
# Create own window instead of using desktop (required in nautilus)
own_window yes
own_window_transparent yes
own_window_type override
#own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

You should also go through your config page and make sure none of these options are already present and set to different values. If so, delete them so only the ones above remain. Save the config file and restart conky!

I’ve found in 99% of cases, this fixes it. However, if you continue to have trouble, consult the conky man file for more troubleshooting tips. Conky also has it’s own irc channel on freenode, #conky, populated by people who are significantly more knowledgeable than me.

Now, here’s my conky config file, for your enjoyment.

# Use Xft?
use_xft yes
xftfont Gentium:size=8
xftalpha 0.8
text_buffer_size 2048
# Update interval in seconds
update_interval 1
# This is the number of times Conky will update before quitting.
# Set to zero to run forever.
total_run_times 0
# Create own window instead of using desktop (required in nautilus)
own_window yes
own_window_transparent yes
own_window_type override
#own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
# Use double buffering (reduces flicker)
double_buffer yes
# Minimum size of text area
minimum_size 180 0
#maximum_width 200
# Draw shades?
draw_shades no
# Draw outlines?
draw_outline no
# Draw borders around text
draw_borders no
# Stippled borders?
stippled_borders 0
# border margins
border_margin 5
# border width
border_width 1
# Default colors and also border colors
default_color white
#default_shade_color black
#default_outline_color white
own_window_colour white
# Text alignment, other possible values are commented
#alignment top_left
alignment top_right
#alignment bottom_left
#alignment bottom_right
# Gap between borders of screen and text
# same thing as passing -x at command line
gap_x 35
gap_y 50
# Subtract file system buffers from used memory?
no_buffers yes
# set to yes if you want all text to be in uppercase
uppercase no
# number of cpu samples to average
# set to 1 to disable averaging
cpu_avg_samples 2
# number of net samples to average
# set to 1 to disable averaging
net_avg_samples 2
# Force UTF8? note that UTF8 support required XFT
override_utf8_locale yes
# Add spaces to keep things from moving about? This only affects certain objects.
use_spacer none
${font Unnamed Melody:size=16}S${color B8A0C8}tatus${color}${font}
Operating System: ${alignr}Ubuntu 8.10
Kernel: ${alignr}${kernel}
CPU1: ${alignr}${cpubar cpu1 8,60}
CPU2: ${alignr}${cpubar cpu2 8,60}
RAM: ${alignr}${membar 8,60}
SWAP: ${alignr}${swapbar 8,60}
HDD: ${alignr}${fs_bar 8,60 /home}
Battery: ${alignr}${battery_bar 8,60 BAT0}
Temp: ${alignr}${acpitemp}°C
Uptime: ${alignr}${uptime}
${font Unnamed Melody:size=16}T${color B8A0C8}op${color} P${color B8A0C8}rocesses${color}${font}
1. ${top_mem name 1} ${alignr}${top_mem mem 1}
2. ${top_mem name 2} ${alignr}${top_mem mem 2}
3. ${top_mem name 3} ${alignr}${top_mem mem 3}
4. ${top_mem name 4} ${alignr}${top_mem mem 4}
5. ${top_mem name 5} ${alignr}${top_mem mem 5}
${font Unnamed Melody:size=16}N${color B8A0C8}etwork${color}${font}
${if_existing /proc/net/route wlan0}
Up: ${alignr}${upspeedgraph wlan0 8,60 8434A4 A672CF}
Down: ${alignr}${downspeedgraph wlan0 8,60 8434A4 A672CF}
Upload: ${alignr}${totalup wlan0}
Download: ${alignr}${totaldown wlan0}
Signal: ${wireless_link_qual eth1}% ${alignr}${wireless_link_bar 8,60 eth1}
Local Ip: ${alignr}${addr wlan0}
${else}${if_existing /proc/net/route eth0}
Up: ${alignr}${upspeedgraph eth0 8,60 8434A4 A672CF}
Down: ${alignr}${downspeedgraph eth0 8,60 8434A4 A672CF}
Upload: ${alignr}${totalup eth0}
Download: ${alignr}${totaldown eth0}
Local Ip: ${alignr}${addr eth0}
${endif}${else}${if_existing /proc/net/route eth1}
Up: ${alignr}${upspeedgraph eth1 8,60 8434A4 A672CF}
Down: ${alignr}${downspeedgraph eth1 8,60 8434A4 A672CF}
Upload: ${alignr}${totalup eth1}
Download: ${alignr}${totaldown eth1}
Local Ip: ${alignr}${addr eth1}
Network Unavailable
${font Unnamed Melody:size=16}W${color B8A0C8}eather${color}${font}
Station: ${alignr}Auke Bay, AK
Current: ${alignr}${execi 600 conkyForecast --datatype=CC --location=USAK0024 --imperial --night}
Temp/Chill: ${alignr}${execi 600 conkyForecast --datatype=HT --location=USAK0024 --imperial --night}/${execi 600 conkyForecast --datatype=LT --location=USAK0024 --imperial --night}
Wind: ${alignr}${execi 600 conkyForecast --datatype=WD --location=USAK0024 --imperial --night --hideunits} ${execi 600 conkyForecast --datatype=WS --location=USAK0024 --imperial --night}
Sun: ${alignr}${execi 600 conkyForecast --datatype=SR --location=USAK0024 --imperial --night}-${execi 600 conkyForecast --datatype=SS --location=USAK0024 --imperial --night}
${voffset 0}${alignc 43}${execpi 600 conkyForecast --location=USAK0116 --datatype=DW --startday=1 --shortweekday --imperial --night} ${alignc 8}${execpi 600 conkyForecast --location=USAK0116 --datatype=DW --startday=2 --shortweekday --imperial --night} ${alignc -29}${execpi 600 conkyForecast --location=USAK0116 --datatype=DW --startday=3 --shortweekday --imperial --night} ${alignc -64}${execpi 600 conkyForecast --location=USAK0116 --datatype=DW --startday=4 --shortweekday --imperial --night}
${voffset 0}${alignc 75}${font ConkyWeather:size=28}${color BEA3EF}${execpi 600 conkyForecast --location=USAK0116 --datatype=WF --startday=1 --endday=4 --spaces=1 --imperial --night}${color}${font}
${voffset 0}${font Gentium:size=7}${alignc 48}${execpi 600 conkyForecast --location=USAK0116 --datatype=HT --startday=1 --hideunits --centeredwidth=3 --imperial --night}/${execpi 600 conkyForecast --location=USAK0116 --datatype=LT --startday=1 --hideunits --centeredwidth=3 --imperial --night} ${alignc -14}${execpi 600 conkyForecast --location=USAK0116 --datatype=HT --startday=2 --hideunits --centeredwidth=3 --imperial --night}/${execpi 600 conkyForecast --location=USAK0116 --datatype=LT --startday=2 --hideunits --centeredwidth=3 --imperial --night} ${alignc -40}${execpi 600 conkyForecast --location=USAK0116 --datatype=HT --startday=3 --hideunits --centeredwidth=3 --imperial --night}/${execpi 600 conkyForecast --location=USAK0116 --datatype=LT --startday=3 --hideunits --centeredwidth=3 --imperial --night} ${alignr 6}${execpi 600 conkyForecast --location=USAK0116 --datatype=HT --startday=4 --hideunits --centeredwidth=3 --imperial --night}/${execpi 600 conkyForecast --location=USAK0116 --datatype=LT --startday=4 --hideunits --centeredwidth=3 --imperial --night}${font}
${font Unnamed Melody:size=16}N${color B8A0C8}ow${color} P${color B8A0C8}laying${color}${font}
Title: ${alignr}${exec conkyRhythmbox --datatype=TI}
Artist: ${alignr}${exec conkyRhythmbox --datatype=AR}
Album: ${alignr}${exec conkyRhythmbox --datatype=AL}

If you want it exactly as is, you’ll need to download a few things:

Font: Unnamed Melody
Font: Gentium
Script: Conky Weather
Script: Conky Rythymbox

Make sure to follow the instructions carefully for the conky weather script, it’s a little fickle to set up.
Happy Clicking!



HP Pavillion TX series Audio

8 April, 2009

I have an HP Pavillion tx2000z, and from a fresh install the audio was completely nonfunctional. After a goodly amount of work I have gotten pretty much everything working. Here’s how:

Firstly, we need to change our sound server. Intrepid (and presumably Jaunty) uses PulseAudio as the default audio server, but pulseaudio is not properly compatible with the realtek audio card in HP’s tx series. ALSA (Advanced Linux Sound Architecture) works much better.
Open up the Sound Preferences (System>Preferences>Sound) and change all the options to ALSA. For default mixer tracks, you want HDA NVidia (Alsa Mixer). Highlight the master track.

Next, a little bit of tweaking to ensure that all of our volume controls are on the same page.
Right click the volume control icon in the status tray and select preferences. Make sure it says HDA NVidia (Alsa Mixer) and that master is highlighted. Close that dialogue box and double click on the volume control icon to open up the channel mixer. “Headphone,” “PCM,” and “Front” should all be at max. The “Master” channel is the variable, that is when you want your audio soft you turn it down and when you want your audio loud you turn it up. The volume control icon in your status tray controls the master channel.

Finally, just a little bit of command line work and we’ll be ready to jam.
sudo gedit /etc/modprobe.d/alsa-base
Scroll to the very bottom and add this string:
options snd-hda-intel model=hp
Save the file and restart your computer. When it’s back in the land of the living, your built-in speakers and headset jacks will be working, and it will automatically switch between them when you plug something in. I haven’t tested the built in mic- never had a reason to use it.

Happy Clicking!


Lightscribe for Ubuntu

5 April, 2009

lightscribe labeled disk
[Photo Courtesy Wikimedia Commons]

My laptop came with a lightscribe enabled CD/DVD-RW drive. After I switched to Ubuntu I set about looking for a program that would allow me to burn labels to my discs. It took a lot of digging and several tries to find a solution that worked, so I’ll share it with you.

First, we need the lightscribe driver that allows your computer to talk with the hardware. Download it and install as you would any other .deb.

Next, we need the labeling software. After trying a few different programs I’ve settled on the LaCie labeler (download). It’s only available in .rpm format, so after it’s downloaded we’re going to need to do a little terminal work.
To convert a .rpm to a .deb, we need a program called alien:
sudo apt-get install alien
Now we can use alien to run the conversion:
cd ~/Desktop
sudo alien -k 4L-1.0-r6.i586.rpm

A .deb package will appear on the desktop and you can install it normally.

Cool, now we have our labeler installed. Just a quick test to insure everything’s ready to go, and you can start burning labels.
Run the labeler:
gksudo 4L-gui
The gksudo is important because printing disks requires root access. Watch your terminal: if, like for me, it starts to whine about libstdc++.so.5, you need to install one more thing:
sudo apt-get install libstdc++5

Finally, we need to add an icon to the applications menu so we can open the labeler easily. Right click on the applications menu and choose “edit menu”. Pick a submenu to place it (I chose graphics but it’s really up to you) then click “new item.” Think up a snappy name and enter “gksudo /usr/4L/4L-gui” in the command box. Hit close and then exit out of the menu editor.

Now you’re ready to start burning labels! A few hints to make your labeling as smooth as possible:

1. Lightscribe discs are specially coded so that they always start burning in the same place. If your label isn’t quite as dark as you want, just burn it again right over the existing label- it will line up perfectly.

2. Don’t leave lightscribe discs out in the sun or in excessive heat or they may fade. Because of the heat generated by computers, it may not be a good idea to use lightscribe for discs that are going to be sitting in your computer for long times, like music cds or dvds: nothing bad will happen to them except fading, though.

3. You can use any picture you want for a label but remember it’s grayscale only and the resolution isn’t great, so it’s best to use as simple an image as possible.

4. Hewlett-Packard (the kind corporate folks who make lightscribe) has a massive amount of disc designs for you to download free of charge in their Ideas and Design Center. Pick a theme pack and download the linux version, which is essentially a collection of image files that fit on a disc perfectly. Très magnifique!

COMING SOON: Lightscribe Labels for your Jaunty Jackalope LiveCDs!

UPDATE: If, after having followed the instructions above your lightscribe drive is not recognized, enter the following into your terminal:
sudo ln -s /usr/lib/liblightscribe.so.1 /usr/lib32/
sudo ln -s /usr/lib/liblightscribe.so /usr/lib32/
sudo ldconfig