Friday, August 31, 2007

Ubuntu: On the right path to becoming a decent distro

One of my oft quoted grips with Ubuntu is it's apparent lack of decent configuration tools. The most glaring omission is a proper X configuration tool. But finally Ubuntu is planning to fix that with the next release of Gutsy Gibbons (7.10).

Ubuntu 7.10 will feature a new X configuration tool called gtk-displayconfig and a script to manage X startup recovery called bulletproof-X. It's about time, since distros like Suse, Fedora & Mandriva has had this feature for the last 3 years.

Next on their list should be a proper Grub configuration tool & a decent Grub theme. Followed by a properly working Device Manager.

Maybe it won't be long now. I'm looking forward to Hardy Heron. Maybe that will be the first decent Ubuntu...

Ready / Capable / Powered by...

Have u always wanted a have a nice Linux Logo on you laptop instead of the usually affixed Windows Ready Logo. Well here are some great ideas from the people at kde-look.org:



Now all I have to do is find some way to print them onto stickers & I'm set.

Thursday, August 30, 2007

Off-Topic

Taking a rest from the ordeal of making the Toshiba work. Here's something off-topic. Found these rather interesting small pictures from somewhere & I thought I'd share them.

Tuesday, August 28, 2007

Return of that blasted Toshiba

After wasting several hours of tearing apart the notebook and putting it back together to no avail. It just doesn't feel right for this damn thing to just work again the next morning. What is wrong with this lemon that Toshiba has given me?

Since it's working again. I'm back to tinkering with the acpi to get the LCD brightness working. I figured out that if you write 2 different values into the 2 /proc entries you'll get the that "TBX error" issue when you reboot.

Here's the output of that file:
[terrorsomemore@Terrors-PC ~]$ cat /proc/acpi/video/GFX0_PCI0/LCD/brightness
levels: 75 35 10 25 35 50 60 75 90 100
current: 0

The levels are the different setting available. Don't understand why the numbers are jumbled up. Tested the setting, the numbers between 10 -> 90 worked. The 0 & 100 did not work.

So here's my solution:
I wrote a script lcd-dim.sh with the contents:
#!/bin/bash
# Minimum Brightness
echo 10 > /proc/acpi/video/GFX0_PCI0/LCD/brightness
echo 10 > /proc/acpi/video/VGA_PEGP/LCD/brightness

Another script lcd-bright.sh
#!/bin/bash
# Nice Brightness
echo 50 > /proc/acpi/video/GFX0_PCI0/LCD/brightness
echo 50 > /proc/acpi/video/VGA_PEGP/LCD/brightness

Gave them execute permission: chmod 755 *.sh

To make the LCD dim when using battery.
I copied lcd-dim.sh into /etc/laptop-mode/batt-start/

To make the LCD bright when plugging in AC.
I copied lcd-bright.sh into /etc/laptop-mode/batt-stop/

To make the LCD bright at the desired level on power-up with AC.
I copied lcd-bright.sh into /etc/laptop-mode/nolm-ac-start/

If you wanna go further, you could add 2 icons into your panel & link that to your scripts so you get buttons for changing the brightness. I didn't bother because these needed root privileges that meant u had to type the root password every time you click the icon.

So all in all, I needed 3 hacks to make this laptop work decently.
1. The script I just explained above.

2. To make the Bluetooth & Wifi on/off switch work. I compiled & installed the latest omnibook module. Forcing module load using option ectype=12. Every other features of the omnibook module didn't work, only the switch worked.

3. To make Mandriva's KDE utilize the Media playback & volume control buttons, I installed lineak. Klineakconfig just segfaulted, so I had to configure it by hand. This was done basically using 'xev' to capture the keycode & writing my own custom keyboard type, then mapping these to the necessary plug-ins or DCOP commands. I managed to configure the Play, Stop, Next, Prev and VolumeUpDown buttons all this way.

I contrast, I recently installed Mandriva & Ubuntu into a Dell Inspiron 1520 notebook which has pretty much the same specs as this Toshiba. The Inspiron did not require any hacks whatsoever, it just worked. That's because Dell properly builds all the Fn+ hotkeys into the BIOS the way they should be.

That blasted Toshiba

Last night the Toshiba decided to go ape shit on me. After I messed around with the acpi setting in /proc I've discovered that I can control the brightness of the LCD through:
/proc/acpi/video/VGA_EGEP/LCD/brightness
and also
/proc/acpi/video/GFX0_PCI0/LCD/brightness

Somehow, these 2 settings both work for setting the brightness, but changing 1 file doesn't reflect in the other. I changed 1 file & rebooted.

On reboot, the system froze at the BIOS with a helpful error on the top left that says "TBX error".

For the next 2 hours I couldn't revive the system. I almost disassembled the machine.
After leaving it alone for a while. I tried again. This time, it booted up & I was able to get into the BIOS. But the HDD was not detected, I reseated the HDD & tried again, "TBX error" again.

I removed the HDD & tried, still "TBX error". Some research revealed that TBX error comes from the TPM system that checks the Hardware Integrity. But whatever I tried, I can either bootup with the HDD not detected or it will freeze at BIOS with "TBX error". I thought it was royally screwed. I was getting ready to call Toshiba & make up a story about what happened.

The next morning, suddenly the system worked fine again. Like last night never happened. WTF!!!

Saturday, August 25, 2007

Toshiba Satellite M200 Notebook

I recently got a new notebook, a free gift that came with the car i bought. It's just a cheap local car, so I was rather surprised to a get a RM3K free gift. I was delivered 6 weeks after the car, was supposed to be an M100, but was upgraded to M200 because the M100 is obsolete.

Here's the spec sheet:
Intel Centrino Duo (1.86Ghz)
Intel GMA950 Video
512MB DDR2-667 RAM (Upgraded to 1536MB for RM150)
80GB SATA Hard Drive
Intel Pro Wireless 3945a/b/g
Bluetooth 2.0
1.3 MP webcam

Not exactly high-end, but pretty decent notebook.

I quickly tested both Ubuntu and Mandriva on it. Both worked well. Ubuntu even picked up & setup all the hotkeys. Mandriva needed lineak to make use of the hotkeys.

A couple of things expectedly did not work out.
- The webcam worked but has poor color correction. (It was gray most of the time & tweaking had no effect)
- Some of the hotkeys are not working. Most notably, Brightness control, Touchpad toggle, Lock System, Hibernate, Media & Wireless radio on/off button.
- The ones that did work are: Mute, Volume, Wireless device on/off switch, Web, Play/pause/stop/prev/next, Suspend and Toggle Display. (These all worked out of box in Ubuntu & Mandriva's GNOME, but required tweaking lineak in KDE + the omnibook module)
- The most pressing issue with the notebook is that it's LCD is stuck at the highest brightness all the time, with the controls not working + unplugging the adapter does not dim the LCD.

Toshiba is really relying too heavily on software utilities to supply all the functionality instead of building all these things into the BIOS like they should be, heck the BIOS is just a very simplistic and completely useless Phoenix BIOS.

In the supplied Windows Vista Basic nothing worked until the ToshUtil program fully loaded-up, and that took some time as it is a seriously bloated application. I tried loading it up with WinXP SP2, then found out there were no drivers for it at all, this system ONLY works with Vista. Through some research I discovered this is one of those non-toshiba toshibas that were probably made by Compal or Quanta, one of these Taiwan Notebook ODMs.

My advice, if you're looking for a notebook to run Linux on, buy a Dell Inspiron/Latitude. Forget Toshibas, they're not worth it.

Friday, August 10, 2007

Turn your Linux box into a Media Center with Freevo

I've been playing with the notion of turning my PC into a PVR for some time now, but I never got around to it. About a month ago I got my hands on some cheap kit for this purpose & got the setup working. Just a few days later my TV blew up, it was a spooky coincidence. Fate would have it that my PC will have to be the TV until I get a new TV.

This is the kit:
- Hauppauge WinTV PVR 150 TV-Card (PCI)
- Phillips RC6 Windows MCE IR Remote Control with USB Receiver

With the hardware installed, the next step was to make sure it all worked in my Mandriva 2007 box. The PCI card was detected but the required firmware & configuration tools were missing. This was easily solved by grabbing these packages from RpmDrake:
- ivtv
- ivtv-firmware-audio
- ivtv-firmware-enc
- perl-Video-ivtv

Next the MCE Remote was detected as well, but again the required tools needed to be installed. These were:
- lirc
- lirc-remotes
- python-lirc

Now comes the crucial part, the Media Center software itself.

I looked around quite alot for what would be the best software to use. Everything seems to point me to MythTV, which I couldn't get my head around because it was a feature monster, far beyond my needs and terribly complicated.
I also tried out Elisa, which was nice but didn't work well with IR remotes (yet).
I finally settled on Freevo, a small, compact & surprisingly featureful Media Center that provided all the functionality I needed in a small footprint with good support for IR Remotes.
Freevo is installed from RpmDrake using just 1 package: Freevo

Next challenge was tying it all into a cohesive fluent interface that just works.
The Freevo wiki helped alot.

I first configured the PVR card using ivtv to tune-in to the correct frequency for my favourite TV channels TV3, NTV7 & 8TV. (This is harder than usual because NO online XML TV listings existed for Malaysian TV)

Once the TV was sorted. I worked on getting the remote configured.
I configured the remote using a downloaded copy of the lircrc.mceusb config file that had the basic bindings for working with Mplayer, Xine & even MythTV. To this I added support for Amarok through DCOP commands & used IRExec to launch Freevo when I pressed the big green MCE button.
Freevo has it's own set of lirc bindings which take effect only when Freevo is running. These can be customised to give full access to every freevo feature. (If anyone is interested in any of these config files, please let me know)

So I had my Freevo setup with these functions:
- Watch TV (Obviously)
- Play Media on the Hard Drive (or any removable drives)
- Autoplay CD/VCD/DVDs using Xine (with DVD Menu)
- Favourite RSS News Feeds

Disabled the following unused features:
- TV recording
- Radio
- CD ripping, burning & encoding
- Web Browser

As you can see Freevo is pretty damn feature rich for it's size. I might get around to setting up the other features like the web browser, but for now it's serving it's purpose as a replacement for my TV. Good thing I got myself that 22' Wide LCD monitor. ;)