Archive for April, 2007

My impression of Suse 10.2

Recently, I installed Fedora Core 6, but I decided to erase it after I fail to install RadRails on the it. In addition, Fedora wasn’t a easy distro to install. Even though the machine I install it on was an older machine, Fedora had problems detecting the graphical card and display. I decided to try Suse 10.2.

My impression of Suse 10.1 was not good. YAST took 10 minutes to update its listing and failed constantly. AppArmor constantly did strange things. Much to my suprise, Suse 10.2 was a huge improvement.


Installation was straightforward compare to Fedora. Everything was detected properly. The only warning is that the DVD doesn’t prompt you if you want to wipe out your existing LVM partition. When I click on install, it wiped out the LVM partitions setup previously by Fedora. Yes, this is what I wanted, but perhaps you should ask first!


Suse 10.2 is noticably faster than Fedora Core 6. Its boot time is faster. Application loads faster than Fedora.

Graphical Interface

When you install, you can choose between Gnome and KDE. I picked Gnome because Suse had been traditionally associated with Gnome. One annoyance, the application menu only holds a few applications. You can click on more application button, which takes you to a window with a list of applications.

One bit of warning. While the 3dfx driver (tdfx) is supported, 3D support for it has been depreciated since Suse 10.1. There are no libglide3 RPM for 10.2. so you’ll be out of luck if you plan to play 3D games on 3dfx unless you want to compile your own libglide3 module.

Package Management

Open Suse 10.2 uses YAST. YAST is a very good all-in-one package management. Unlike Suse 10.1, YAST did not crash or take half an hour to load the repository list.


Open Suse’s community is lacking. I wanted to install RadRails on Suse, but I can find not a single post about how to do this.

I am going to keep Suse on my machine for a while. I report back if there are any issues.

April 24, 2007 at 8:26 pm Leave a comment

My Install Experience with Fedora Core 6

I haven’t use Red Hat since Red Hat 4, so when I got a Linux magazine recently with Fedora Core 6 on DVD, I decided that it was time to give Red Hat another try. I have an ancient Asus K7V machine that has Open Suse 10.1 on it. I have been itching to erase it since I had so much trouble with Suse’s package manager YAST.

Booting the install disc

The DVD boots into a text prompt. The default option is the graphical install. The installer nicely give you an option to check your media. I wish that all distro do this, since there’s nothing worse than having an install died half way through. The media check only took a few minutes.

Problems with Graphical Install

Much to my surprise, the graphical install failed. Linux hardware detection often work really well for older hardwares. The installer detected the 3dfx Voodoo 3 card, and launches X. X appears to work since I could move my mouse cursor around, and then the screen goes totally white and lock up. Attempts to boot using a different resolution or skipping the monitor detection fails. I tried using noprobe, but then I had to manually specified each device. Finally, I decided that graphical install was not going to happen.

Continue with Text Install

Rebooting the DVD, I used the text option instead. I used all of the default options, but specified a GRUB password and root password. Since I didn’t need to keep any data, I had the installer erase the hard disk and use the default partitions. By default, Fedora setups a LVM partition so you can add drives to expand the storage later. The installer then install the files in about 30 minutes and then reboot the machine. When the machine prompt to change any of the setup agents, I selected the exit option since all of the setup settings looked correct. I was then given a text login. I login as root and attempted to startx. The graphics and menu bar displayed but then the machine locked up. I had to reboot the machine to get out. The machine always lock up when I startx.

Fixing the problems with X window

What could be the problem? Obviously, the same problem that crash the graphical installer is affecting the post-install machine. I checked dmesg and /var/log/messages but could find nothing wrong. Checking /var/log/Xorg.0.log reveal that tdfx DRI is not supported in 32 bit mode. The driver tdfx is the driver for 3Dfx cards. On a Voodoo3, direct rendering only works in 16-bit mode. However, just because the driver can’t direct render does not explain why the X-window crashes. Running system-config-display, the display config program, also crash the machine.

Finally, I manually edited the /etc/X11/Xorg.conf directly and change the driver from tdfx to vesa. This seemed to get the display, so the problem appears to be with the tdfx drivers. This is strange since the tdfx driver has been around forever.

Updating Fedora Core 6 Software

Once you get X working. Yum, the package manager will run and locate update packages to install. This can take 5 or more minutes. There is no visual indicator that Yum is running, except that the cpu utilization is really high and if you run Yum, you’ll get a messages that Yum is already running.

Once Yum finishes, you will get a popup message that security update is ready (in my case, it listed 253 patches). Press the apply update button. Yum will give you a list of the packages. Press Apply update. This will take several hours to install and in the middle, so plan to run this overnight. Near the end, you are prompted to import a key. Press yes and continue and wait another hour. Finally, Yum prompts you to reboot your machine.

Fixing the problem with the Voodoo3 (tdfx) driver and getting Direct Rendering to work

Now that Fedora has been updated, I wondered if the update had fixed the problem with the tdfx video driver. I edited /etc/X11/Xorg.conf and set the driver from vesa to tdfx and change all of the depth from 24 to 16 (tdfx direct rendering only works in 16-bit mode). I restarted X and notice that the screen has dropped to the 800×600 resolution, but at least tdfx was running properly. This mean there was a problem with tdfx in the Fedora Core 6 release, but was fixed by one of the patches.

To fix the resolution problem, I selected the menu System->Administrator->Display. From there, I set the resolution to 1280×1024 with “Thousands of Colors”. Clicking on the hardware tab, I select the monitor and set it to the correct monitor instead of the Generic LCD panel (apparently, the auto-detect had failed to detect a SyncMaster 730B). For reasons yet not clear to me, I had to set the resolution twice because when I log back in the first time, the resolution dropped back to 800×600. Setting it again and starting X fixed the problem.

Unfortunately, when I run glxinfo, X crashed. After some poking around, I realized that we need to download the Glide package. To do this, select the menu Application->Add or Remove Software. From there, click on the search tab and type in glide and press the search button. This will return a list of glide drivers. For Voodoo3, select Glide3 and press apply. There is another package call Glide3-lib-gl, but that is for voodoo2 or earlier. During installation, you will be prompted to import key. Press yes. Close the package manager when you are finish. After the installation of Glide3, glxgears and glxinfo no longer crash the machine.

Without direct rendering glxgears crawled at a score of 125 fps. With direct rendering, the score jumped to 1300 fps. While the card is not a speed demon, enabling direct rendering is a great improvement in the score and may allow you to play videos without skipping. Some pages on the net indicated that direct rendering only works at 1024×768 or lower, but I was able to get direct rendering to work at 1280×1024. However, direct rendering only works at 16 bit (thousands of colors).

Even with the 3D effect enable. I was unable to get Compiz to work, so you can’t get 3D desktop effect using the Voodoo3 card.

Enabling the Graphical Login

If you use the text installer, Fedora will boot into a text login. To correct this, you can change the run level of linux. The run level specifies which mode Linux is in on startup. When you use text install, it sets the run level to 3 (multiuser). You want to set the run level to 5 (Multiuser and X11). To set this edit the file /etc/inittab. Edit the following line:


Change the 3 to a 5 (WARNING: make sure you don’t enter a 6 by accident, which is for reboot). When you restart, Fedora Core will login in graphical mode from now on.

Enabling Multimedia Support

Like most Linux distros, Fedora Core 6 comes with no proprietary codec or DVD decoders. Out of the box, you cannot play mp3, flash video, and DVD’s. However, by following this Blog, I was able to add multimedia support to Fedora Core 6

At this point, you should consider creating a user instead of logging in as root.

April 14, 2007 at 11:57 pm Leave a comment

Creating a XML Document from scratch without using a file in C#

One thing that’s annoying is that majority of the XML example assumes that you are loading an XML document from a file, so here’s a simple code example for generating it entirely in memory.

// Create the xml document containe
XmlDocument doc = new XmlDocument();
// Create the XML Declaration, and append it to XML document
XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", null, null);
// Create the root element
XmlElement root = doc.CreateElement("Library");

// Create Books
// Note that to set the text inside the element,
// you use .InnerText instead of .Value (which will throw an exception).
// You use SetAttribute to set attribute
XmlElement book = doc.CreateElement("Book");
book.SetAttribute("BookType", "Hardcover");
XmlElement title = doc.CreateElement("Title");
title.InnerText = "Door Number Three";
XmlElement author = doc.CreateElement("Author");
author.InnerText = "O'Leary, Patrick";

book = doc.CreateElement("Book");
book.SetAttribute("BookType", "Paperback");
title = doc.CreateElement("Title");
title.InnerText = "Lord of Light";
author = doc.CreateElement("Author");
author.InnerText = "Zelanzy, Roger";

string xmlOutput = doc.OuterXml;

The same code but using an XMLWriter to a memory stream.

XmlWriterSettings wSettings = new XmlWriterSettings();
wSettings.Indent = true;
MemoryStream ms = new MemoryStream();
XmlWriter xw = XmlWriter.Create(ms, wSettings);
// Write Declaration

// Write the root node

// Write the books and the book elements

xw.WriteString("Door Number Three");
xw.WriteString("O'Leary, Patrick");


// Write another book

xw.WriteString("Lord of Light");
xw.WriteString("Zelanzy, Roger");


// Close the document

// Flush the write

Byte[] buffer = new Byte[ms.Length];
buffer = ms.ToArray();
string xmlOutput = System.Text.Encoding.UTF8.GetString(buffer);

April 4, 2007 at 2:15 pm 57 comments


April 2007

Posts by Month

Posts by Category