Recently in Linux Category

There have been a couple things about Fedora 12 that haven’t been as nice as I would have liked. I finally solved one of them tonight.

My laptop, a Dell Latitude D830(N), has an NVidia Quadro NVS 140M video chipset in it. Fedora 12 worked out of the box with the open source nouveau driver which is an experimental reverse-engineered driver for NVidia chipsets. It works pretty well and I probably would have kept using it if I could get my laptop to hibernate properly. Instead, I could never get the laptop to come back to life after it went into hibernation.

Meanwhile, the RPMFusion folks (a popular third-party repository) usually have the kmod-nvidia package available to install which gives you everything you need to run the proprietary NVidia drivers (Fedora doesn’t include this because they adhere to an all-open, non-patent-encumbered package policy). However, the kmod-nvidia package wasn’t available for Fedora 12.

When it did show up on rpmfusion, there were some caveats. Fedora had done some work to make the nouveau driver work as seamlessly as possible and, as a result, made it a little more difficult to install the proprietary driver. The RPMFusion folks have some errata info on how to get the proprietary driver working. I’ll summarize the process here since it’s a little tricky to execute and understand.

Before you do anything the RPMFusion information says to do, you should obviously install the kmod-nvidia package. Then, run:

nvidia-system-config enable

(I usually do this with sudo.)

Then, reboot into runlevel 3 and proceed with the commands RPMFusion’s page recommends.

The first commands the RPMFusion info indicates should be run are these:

mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img
dracut /boot/initramfs-$(uname -r).img $(uname -r)

The initramfs-blahblah.img file is a replacement for the old initrd-blahblah.img file. So, we’re making a backup of the original initiam ramdisk image file for the running kernel and adding nouveau to its name so we know this is the initial ramdisk image that contains the nouveau driver (Fedora added the driver to the initial ramdisk so the graphical bootloader can take advantage of the NVidia chipset’s capabilities).

Then, running the dracut command creates a new initial ramdisk image for the running kernel. The dracut command replaces the mkinitrd that has been used traditionally. For more information about dracut check out the Fedora Project’s wiki page on dracut.

Finally, run the setsebool command RPMFusion’s page mentions:

setsebool -P allow_execstack on

If you’re like me, however, you probably have SELinux set to permissive because RPMFusion’s nonfree codec packages have already broken some SELinux stuff. Hopefully that will be fixed soon.

Then, reboot again into runlevel 5 and enjoy.

UPDATE: Read below!

Soon after getting kmod-nvidia installed, I noticed some weird issues in KDE. Whenever I would press ALT-F2 to run a command, the UI would freeze for about 10 seconds. I did some searching and found this was a reported bug. I’m guessing a forthcoming xorg-x11-server-* package update will include this, but in the meantime, I installed new xorg-x11-server-Xorg and xorg-x11-server-common packages from this 1.7.1-12 Koji build. Pressing ALT+F2 does not freeze the system anymore.

I’m almost a text-based e-mail purist. I used to use Mutt as my primary e-mail client application, but decided to go with a graphical client such as Mozilla Thunderbird or KMail so that I could at least effectively read HTML-formatted messages.

I’ve been happy with KMail. I’ve had it configured to prefer text-based e-mail and aside from the fact I don’t use my preferred text editor (vim) inside it, it’s been a good e-mail client. Now, my dad is a more typical e-mail user. While he probably doesn’t care that much about composing original HTML messages, he does receive a lot of them that he wants to forward onto other people that he feels may be interested. He’s on lots of political and family mailing lists that swap HTML messages complete with embedded images, etc.

He has been using Thunderbird at his home and KMail (an old version running on a Fedora Core 6 desktop) at his office. He mentioned to me that KMail runs noticeably faster on his work system than Thunderbird does on his home system. I suggested that we could standardize him on KMail and upgrade his office desktop to a more recent version of Fedora Linux.

Things got more interesting when Thunderbird recently got updated on his home system in a package update to version 3.0b4. The Smart Folders “feature” threw both of us for a loop. It combines multiple Inbox, Sent, and other IMAP folders into single virtual folders containing an aggregate of messages from each corresponding folder. I really have no idea who would want this feature. My parents each have their own e-mail accounts and I had Thunderbird configured so they could check mail for both accounts. The new version of Thunderbird combines both inboxes into one virtual “Smart” folder and subsequently confused the heck out of my father.

I figured out how to disable the “smart folder” behavior (View->Folders->All), but Thunderbird was still hiding other IMAP folders like Sent and Trash that my parents often need to access messages in.

So, KMail. KMail works great for almost all things, but my father noticed right away when he tried to forward an HTML message with embedded images that KMail wasn’t letting do what he was used to doing: Editing the forwarded message to remove the annoying gazillions of e-mail addresses the original message(s) were addressed to.

KMail has two methods of forwarding a message: First, you can forward a message as an attachment. This preserves everything about the original message, but KMail doesn’t let you edit anything within the attached message. Alternatively, you may forward a message “inline”. This lets you edit the message, but it only gives you the text portion of the message to edit and completely omits the HTML attachment altogether.

I did some research online to see if there was a way to get the desired functionality out of KMail, but it doesn’t look like it’s possible. If it does ever happen, it’s a couple versions out at least. It may never happen because it seems there are voices within the KMail community that feel KMail should never take on these types of features because it risks KMail becoming “another Outlook/Thundebird clone.”

Has anyone found other solutions to this problem for a Linux user?

I recently encountered a problem when I plugged in my Sprint USB aircard (A Sierra Wireless USB 598) into my laptop running Fedora 12. When I clicked on the NetworkManager applet running in my system tray and selected the mobile broadband (CDMA) device to connect to, it appeared to connect and, then shortly after, disconnect.

I watched the messages sent to the /var/log/messages file to see what was going on and sure enough, NetworkManager was successfully making a PPP connection to Sprint’s service and then PPP was terminated and the connection was closed.

I did some quick searching online but didn’t find anything definite about this. There were lots of links to the Fedora 12 release notes which claimed Fedora 12 had better support for mobile broadband cards than previous releases. That made me wonder if their improvements were actually breaking things for me.

I decided to explore the options dialogs. I right-clicked on the NetworkManager applet and chose Edit connections..., selected the Mobile Broadband tab, selected my adapter and clicked Edit.

Under the PPP Settings tab there is a button labeled Configure methods in the Authentication section. This lets you choose which authentication methods PPP should try. A list of checkboxes next to possible methods appears with EAP, PAP, CHAP, MSCHAP, and MSCHAP v2 as possible selections.

I knew Sprint doesn’t use anything fancy. In fact, you don’t even need to provide a user or password. It authenticates using the device ID or virtual phone number of your device. So, I wondered if disabling some things might work. I figured if it was using anything it was probably CHAP or PAP. I disabled everything else.

Lo and behold, the next time I tried to connect, it connected and stayed connected!

I hope this is useful to someone else.

Mobile Broadband connection dialogs

The ffmpeg package that is available for Fedora 12 via the rpmfusion.org respository does not include faac support. This can be a problem when you want to create H.264 video content that incorporates the AAC (Advanced Audio Codec).

The most straightforward way I’ve found to rectify this situation is to build a new package from the source RPM.

First, download the source RPM using yumdownloader.

yumdownloader --source ffmpeg

This will download the .src.rpm file to the current directory. Install it using the rpm command. (This assumes you have a person RPM build environment set up. This blog post provides some good information on that.)

rpm -ivh ffmpeg-0.5-5.20091026svn.fc12.src.rpm

You probably want to indicate some sort of difference in the version numbering since this version is a modification of the upstream. Edit ~/rpm/SPECS/ffmpeg.spec and modify the Release: line by adding something to the end of it.

Release: 5.%{svn}svn%{?dist}_fozz

Now, you can try building the package with rpmbuild. Unless you’ve already installed all the development libraries and other dependencies ffmpeg relies on, you’ll get some dependency messages. Use yum to install those dependencies and then try building again.

rpmbuild -ba ~/rpm/SPEC/ffmpeg.spec --with faac

This will create RPM packages for you under ~/rpm/RPMS/. Use rpm to install the ffmpeg and ffmpeg-libs packages.

rpm -Uvh ~/rpm/RPMS/x86_64 ffmpeg-{libs-,}0.5-5.20091026svn.fc12_fozz.x86_64.rpm

I installed Hulu Desktop for Linux recently, but could not get it to work. When I ran huludesktop, a dialog box would display saying that the Flash plugin could not be found and that I should edit ~/.huludesktop.

The ~/.huludesktop file has a INI-style syntax and has a section for Flash settings:

[flash]
flash_location = (null)

It’s not obvious whether the flash_location variable needs to be set to a directory or a full path. I tried both /usr/lib/flash-plugin/ and /usr/lib/flash-plugin/libflashplugin.so. Neither of these worked. I didn’t find much help via Google, but kept experimenting until I found a solution that worked:

flash_location = /usr/lib64/mozilla/plugins-wrapped/nswrapper_32_64.libflashplayer.so

When the 64-bit Flash plugin is officially released, this will probably become unnecessary. In the meantime, Hulu Desktop works!

Palm Pre: The Missing Manual Palm Pre: The Missing Manual by Ed Baig

My rating: 4 of 5 stars

I'll start by saying that this book-- Palm Pre The Missing Manual-- is a must-have for any new Palm Pre owner. Sure, the pamphlet that comes with the Palm Pre is adequate for getting you started and on your way, but there are so many figurative nooks and crannies in the operation of the Palm Pre that you won't even know about unless you've happened across them by accident or you've read this book.

I've owned a Palm Pre since the first week it was available. A long-time user of older Palm smartphones such as the Treo line and Centro, I enthusiastically and anxiously followed the the technology news about the forthcoming Pre. The concept of Synergy -- the Pre's software mechanism for collecting data from various online sources such as GMail and Facebook into centralized databases on the phone -- was incredibly appealing and frightening at the same time. I often wondered if Palm really could pull it off or if the Pre was going to be Palm's dying gasp and I would be left to the mediocrity of Windows Mobile or Blackberry or the cult of conformation using Apple's iPhone.

Thankfully, my experience with the Pre has given me hope. Being an early adopter, I've had my shares of bumps along the way, but generally, the Pre is an awesome device. Now that the Palm App Catalog is filling up with new, exciting applications and there's talk of more operating system updates on the horizon, I'm really enjoying myself with the Pre.

Let's get back to the book. Ed Baig's book seems fairly typical for a "Missing Manual" book. It is fairly short, witty, funny, and packed full of valuable information interspersed with plenty of callouts to "tips" and "notes" along the way.

The book is extremely easy to read and shouldn't intimidate those who are nowhere nearly as geeky as me. My daughter was easily digesting the book before I started reading it she's nine years old.

Had I had this book the first week I owned a Pre, it would have saved me some frustration figuring out the best way to get my contacts and calendar data onto the Pre.

Palm Pre, The Missing Manual is available directly from O'Reilly and Associates and probably from any of your favorite online booksellers. The MSRP is $24.99. $24.99 seems a bit much for this book, even if you're probably never going to pay full price. For what you get, I would think $10 less would be more reasonable.

I think I have finally, really arrived.

I’ve been doing contract work for a company in Provo that is launching a new website called YoManSports.com, which is in beta right now. At first glance, the site may appear to be a “YouTube for sports,” but it so much more than that. The concept is centered around video sharing, but includes familiar social networking elements you’d find on sites like Facebook or MySpace. In addition, there are several applications within the site that are sports-related — things like competition bracketing, scorecards, and groups. Perhaps the coolest feature that rounds out the list is the broadcast feature. This lets a person go to a sporting event with a video camera, even something as simple as a USB webcam, and set up a live web broadcast that anyone with a web browser can watch. The person managing the broadcast can mix prerecorded video, pictures, and even live video from other users into the broadcast. There’s even a news ticker for embedding clickable URL links into the broadcast. It’s pretty cool stuff.

Now, I said at the beginning of this post that I have arrived because we’ve been asked by management to blog regularly about the site and what we’re doing with it as part of our marketing plan. So, yeah, it’s cool to be able to do this and not be wasting my time at work.

My job has been designing and building the server architecture that sits behind the scenes and makes it all work. I was brought in late 2008 when the site was pretty much in a prototype stage. All the code was running on a single server and it really wasn’t designed to scale beyond that one server. So, one of the first things I did was figured out what we’d need to do split things like streaming video, web services, and database services onto their own dedicated servers.

After that, I went through and figured out how we were going to accomodate loads higher than we could with individual servers. In a nutshell: load balancing. That has now been implemented.

Another thing I’ve had a big hand in is offloaded encoding and conversion. The developers had created routines to do all the video encoding in PHP on the frontend of the website. Of course, doing video encoding on the same server Apache is running on can be detrimental to the experience of other website users. I developed a distributed encoding system that handles all the video conversion and encoding on a separate set of servers. I did it with Perl, of course.

I’m pleased with the technology being used on the site. I’m not a fan of PHP, but it’s doing the job well for frontend development. We’re making use of a lot of open source technology in dealing with videos. For example, all our transcoding is being done with the formidable FFMPEG software along with libraries like x264 and FAAC.

We’re leveraging Flash pretty heavily pretty heavily to make the site work so it’s fortunate that Flash support has nearly ceased being a problem for cross-platform compatibility. YoManSports.com works almost seamlessly across Windows, Mac OS, and Linux.

Watch this space for more info to come.

KDE 4.2 came down in the latest batch of updates for Fedora 10 last night. Resource settings were automagically migrated and it seems to have worked pretty well. Wikipedia has a decent summary of what's in KDE 4.2.

I’m still a little miffed I can’t sync my Centro with my KDE PIM suite, but I did just today find a reason to increase my love for the Fedora Project.

With previous versions of Fedora (and RHEL/CentOS), I’ve had to manually build some Perl modules like DBIx::Class and Catalyst. Lo and behold, there exists a handy-dandy perl-DBIx-Class package in the standard Fedora repositories.

What a complete and awesome joy it was to watch perl-DBIx-Class download and install along with the 45 or so dependencies it required. It’s so nice to not have to build that manually with cpan2rpm anymore!

I've been pretty happy with Fedora 10... until last night. That's when I hooked up my Palm Centro and tried to sync it with the kdepim apps.

It seems the usually-reliable kpilot has been replaced with a synchronization system based on opensync. I only wish it worked half as well as kpilot did.

So, I am at a crossroads, of sorts. I can either roll back to Fedora 8 and run KDE 3.5 where kpilot works nicely or I can get involved with the opensync.org folks and get the Palm synchronization code fixed/finished.

About this Archive

This page is an archive of recent entries in the Linux category.

Hardware is the previous category.

Music is the next category.

Find recent content on the main index or look in the archives to find all content.