Archive for April, 2009


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, 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/ /usr/lib32/
sudo ln -s /usr/lib/ /usr/lib32/
sudo ldconfig