Analytics Tracking Code

Monday, December 10, 2007

Dual monitor goodness

About 2 years ago I purchased two monitors for a dual monitor setup on my home workstation. Unfortunately, I was thoroughly disgusted with the image quality of my mythtv system when I was using my traditional CRT as a monitor. So I sacrificed my second monitor and have been using it as my television for the past long while.

That all changed this week when I purchased a new 26" LCD television to use and the monitor for my mythtv media server.

Now that I finally got my second monitor out of so called bondage, I took the time to configure a dual monitor setup on my main workstation.

I was surprised at how straightforward this was with OpenSUSE 10.3. Originally I had expected that I would need to do at least a little bit of manual configuration inside my xorg.conf. Well, it turns out that dual monitors was far easier than I had expected and I am now working on httperf across the dual monitor set-up.

As a side note, I am using an nvidia 7800GS with the proprietary driver.

Thursday, September 13, 2007

OpenSUSE 10.3 Package Management and some other stuff

Well, I have been using the development versions of OpenSUSE 10.3 since alpha 5. The operating system has certain stabilized quite a bit now at Beta 3.

In one week (Sept 20) the first release candidate will be pushed out the door. I am expecting only a few changes between now and then.

One of the real big *Behind the Scenes* changes, has been with the package management system. If you have been following the development of the OS since 10.1, you will surely have heard that there have been numerous complaints with the system.

Primarily the complaints have been associated with the the integration of the red carpet technologies into the software management stack.

Essentially in 10.1 and 10.2, there were two package managers. The traditional yast stuff, and the newer red carpet stuff (zmd/rug). I personally blame a lot of the problems on the necessity to synchronize (and failure thereof) between the two technologies.

Anyways, with 10.3 looming in just under a month, the *new* package management stuff seems to have more or less hit its stride.

ZMD has been removed from the OpenSUSE distribution and the old yast and red carpet packaging stacks can finally be said to have a full grown healthy child. zypper. So far, I have no major complaints here at all, although some of the error messages are somewhat oblique.

Also in the news is that the people at AMD have released a good chunk of the specifications for the ATI R500 graphics chips. Currently the documentation (894 pages so far) mostly reflects the necessary information for implementing proper two dimensional support for applicable cards. Supposedly, the three dimensional register information will be available some point next week.

I am by no means an expert at graphics driver implementations, but from what I have read, this seems to be fairly promising. One could certainly hope that it will be possible to make the applicable cards *less evil* as time moves along.

Anyways, I won't be making any purchase in the graphics card domain for the foreseeable future.

Keep on swimming :)

Wednesday, September 12, 2007

My iriver clix gear - Oh the joy

So I recently gave away my iriver clix cradle because it was never really mine to begin with... Does that make sense? Anyways, whatever.

So last sunday I was moping around with no way to listen to music without an external set of speakers or headphones and feeling generally sorry for myself. To rectify it, I hopped onto eBay to search for a new cradle to call my own. Sure enough, I found someone in Canada selling one of these rare beauties and put a bid down on it. Not even a minute later, I discovered that this seller also had a matched FM Transmitter (AFT-200) up for auction as well. So I bid on it too!

Anyways, a few minutes ago, they both arrived safe and sound, and now I am relaxing with blissful tinny (is this a word?) music echoing around my apartment.

Thumbs up for the iriver clix, a great product.

Thought you should know.


OpenSUSE 10.3 and mythTV and how to do it

I was recently passed a link as to how to install mythtv on OpenSUSE 10.3. As I migrate from my current SUSE Linux 10.1 setup to a shiny new 10.3 installation I will be submitting contributions to that page.

Come to think of it, I had better migrate to the schedules direct tv listing service pretty quickly here because I only have scheduling information left for 3 more days... eep!


Sunday, August 12, 2007

openSUSE bug slashing weekend wraps up

So the opensuse bug slashing weekend has wrapped up. The original purpose of the exercise was to get a lot of community involvement into addressing persistent older defects in earlier editions of the distribution. However, since the release of opensuse 10.3 beta 1 was on friday, the weekend also focused on testing.

The builtin reporting abilities of bugzilla are unfortunately quite dismal so producing accurate reports on the number of bugs opened and closed is a little difficult. However, I estimate that approximately 200 new bugs were filed, and about 160 were closed against all products since 10.0. Pretty good if you ask me.

Hopefully we can do this again before the release of 10.3.

Wednesday, July 25, 2007

How soon is too soon?

I have a small confession to make.

I am unfortunately one of those folks that rather likes new features in their software...

Since I have been developing httperf, I been trying to find the balance between modern and historical features that I should reliably be able to depend on.

The httperf tool was primarily written in the late 1990's and probably was developed against the GCC 2.7 or some version of EGCS, in conjunction with the HP C compiler. Obviously, things have moved quite a bit since those days, with the EGCS/GCC merge, and now the most recent release of GCC 4.2.1. Moreover the auto-tools have taken big steps since those times. New elegant features abound, and I am very much tempted to use them.

But should I?

While openSUSE doesn't mind the bleeding edge of gcc 4.2.1 for the upcoming 10.3 release, the OpenBSD project will be sticking with the gcc 3.3.x compiler for a while. Moreover, some prominent users of httperf are still using FreeBSD 4.x with gcc 2.95.x.

This puts me in a vaguely tough position. For one, I believe that more modern compiler features can dramatically improve httperf on a whole. But this is counter balanced with the need to not alienate existing users that are locked to an older platform for the time being.

So my decision? No change... Sort of.

For the time being I will commit to maintaining existing (working) code enclosed in conditional compilation flags to make sure existing users can still use the software. Along side with this I am developing new functionality which I will try to integrate into the old code base as feature compatibility permits.

Check out httperf cvs


Sunday, June 17, 2007

3d Graphics Drivers and Open Source

I am constantly frustrated with the lack of open source drivers for my 3d graphics cards. My main workstation includes a GeForce 7800 GS which can be leveraged properly with only the proprietary nvidia driver. I am frustrated about this because of the implicit maintenance chores associated with this type of driver.

I am definitely not an open source zealot who will not use software just because it is proprietary (RMS for instance).

To really understand my grievance here, I'll relate a small tale of woe.

Like many other technical people, it is my ordained duty to help maintain the computers of my friends and family. For a variety of reasons and almost without exception, Windows XP is the operating system of choice. Almost without fail however, I am called in every 8 to twelve months to resolve the latest in a string of maintenance problems that my friends and family are experiencing. Typically, they will have downloaded some malevolent piece of software that is running amok on their computer. The only solution that I truly trust in this situation is to wipe the system drive and start over again.

Naturally, I have introduced my family and friends to Linux (openSUSE in my case) as a viable migration option for improved flexibility and security (I know this is debatable, but at least it's a smaller target).

Generally, their experiences with the GNOME user interface are not painful. Also, with Helix Banshee, they are able to enjoy their MP3 music collection out of the box.

For out of the box desktop usabilty, openSUSE is an exceptional migration candidate with only one glaring dilemma. Graphics drivers.

Unless an Intel Graphics adapter is being used, it is necessary to install those darned proprietary drivers to enable 3d support. The process and rationale behind this is mysteriously magical for my parents and friends. The necessity to reinstall the driver upon every single kernel security update is ridiculous, irritating, and impossible for these people to do on their own. I can't be making house calls every month to half a dozen people just to re-install the driver for them.

Nevertheless, there are a couple bright lights on the horizon.

The Intel adapters (with open source 3d drivers) have experienced dramatic performance improvements in the past several years, and can now be considered a completely viable option for a SOHO Linux workstation. Moreover, the rumors and rumblings about a discrete Intel Graphics solution are very promosing.

The Open Graphics Project also provides a light in the dark. The open specifications, drivers and hardware (Verilog) designs, should provide a very solid foundation for open 3d support in the operating system of your choice. Even OpenBSD may finally be able to introduce 3d.

Until the future is now, keep on swimming.


Saturday, June 16, 2007

openSUSE 10.3 Alpha 5 thoughts and hopes

Since my main desktop/workstation operating system is openSUSE, I have been following the development for the upcoming 10.3 release. It looks pretty certain that 10.3 will release with the 2.6.22 kernel, which is pretty good news for many mythtv users. As I have mentioned before, the the ivtv driver (for hauppauge TV tuner cards) has been integrated directly into the kernel for this release, thus removing many of the problems associated with out of tree drivers.

Alpha 5 seems to have some stability problems in the new GTK+ edition of YaST. Continually, I am receiving X warnings about missing theme elements. Also, pidgin seems to be missing from the installation DVD (although libpurple is included); thus I had to manually download and install pidgin from the Factory repository.

As usual, the latest evolutionary updates have been integrated for most packages.

Now in Factory, GCC has been updated to version 4.2. As a software developer, this is one of the most important behind the scenes changes for me. Specifically, this release finally brings support for OpenMP to C and Fortran (which I don't use). Since openSUSE is the base platform for all software that I write, I plan on taking full advantage of this technology (sorry if you're on a system that hasn't updated to GCC 4.2 yet, or otherwise doesn't support OpenMP). Essentially, this will simplify the development of paralizable code for use on multi-core processors. I hope to see all major OSS vendors migrate to at least GCC 4.2 in the next year or two, to take advantage of this new technology.

However, if I am going to be writing software that will use OpenMP, I need to be able to configure the compiler to use it with the autotools. The development version of autoconf (upcoming 2.62) has support for detecting the necessary configuration options for detecting how to tell a compiler to build with OpenMP support enabled. With any luck, the autoconf guys will be able to release the update before the software freeze for 10.3.

The only other package that I am interested in is Keith Packard has shown some pretty fancy stuff with hotplug input/output. Very cool for laptops, as well as people with USB tablets. Hope that the timing works out here with 7.3 and openSUSE 10.3 as well! Current estimates are for 7.3 to arrive in August, which may just squeeze in before the package freeze.

Anywho, I have had enough.


Saturday, June 2, 2007

openSUSE 10.3 might finally meet my requirements

I have been running openSUSE as my primary desktop OS since the 10.1 release. For the most part the experience has been positive, but definitely not for the technically challenged.

I initially started using openSUSE as the platform for my mythtv media server. That server sports a Pentium D 920, 1GB of RAM, a Hauppauge PVR 350, a 80GB system drive and a Hardware RAID 5 array using the Areca 1210 PCIe Raid Controller. Total RAID capacity is 900GB (4x300GB drives).

The first major problem that I encountered was that the arcmsr driver was not included in the upstream 2.6.16 kernel used by 10.1. This meant that it was not easily possible (believe me that I tried) to install onto the RAID array, since the driver is needed at BOOT time to configure the array.

The second problem that I encountered was the absence of the firmware for the hauppauge TV card in the default install. Moreover, the default ivtv driver was buggy and hard crashed the system whenever I attempted to change channels.

So cutting short the long story of how I manually built and installed updated drivers and dealt with multiple configuration issues we arrive at openSUSE 10.2.

Guess what....

The arcmsr is STILL not in the upstream kernel (2.6.18 this time) mostly because Erich Chen at Areca dropped the ball and didn't push the driver into the kernel (disappeared from the mailing lists for months at a time)

The ivtv driver is not yet ready for integration into the mainline due to numerous missing APIs in the V4L2 universe.

So I did not bother upgrading. Primarily I felt that I would only have to deal with those same problems all over again.

That brings us to the present day.

I have upgraded my Laptop and Desktop Workstation to openSUSE 10.2, and things are more or less totally peachy on both those systems. The MythTV Media Server is still somewhat stable at 10.1.

More or less, my present configuration is very pleasing. Except for the stability issues on the Media Server.

So what next?

openSUSE 10.3 Scheduled for October 4, 2007

Finally with enough community grumbling and pushing, the arcmsr driver was included in 2.6.19 so I can reliably install onto the RAID controller of my media center.

If the development schedule gods are in a good mood, then openSUSE 10.3 will include a shiny new 2.6.22 kernel. If they are in a slightly grumpy mood, then openSUSE 10.3 will include the old fashioned, and slightly ruffled 2.6.21 kernel.

Why am a cheering for 2.6.22? Well, the ivtv guys have done a spectacular job of integrating ivtv into V4L and also worked with intel/hauppauge to provide a very sleek firmware redistribution license!

This should make the upgrade of my media server one of the sweetest things to watch.

Now if only I could get a discrete graphics accelerator from Intel with Open Source drivers...


Thursday, May 31, 2007

Say farewell to support for 386 architecture on OpenBSD

As one of the rare users of a vanilla 386 computer, the news that the vanilla 386 will not be supported in future versions of openbsd is somewhat sad but not unexpected.

I have been very proud of my 386 (which I upgraded with a 387DX, 16MB of memory, a 4.3 gb hard disk as well as a collection network cards). However, it's days with OpenBSD are now numbered to 154 (number of days until 4.2 is released).

In the future I will migrate that particular machine to netbsd.

Thought you should know.


Tuesday, May 29, 2007

BSD Elitism a fine line

The entire concept behind the *BSD OS's are awesome. Free for any purpose. It's great.

Unfortunately, these systems are built and used by people. And as usually is the case when people get involved, a certain number of zealots creep out of the woodwork.

These zealot people (zel-people) have the irritating habit of walking over other peoples ideas, thoughts, and perspectives. This bugs me a lot; thus, this blog post.

I just finished reading the following commentary about the experience that Beranger had in using the FreeBSD operating system: Taking a very long, huge break....

I personally very much sympathize with the author of that little article/rant.

Anyways, without going into to a long justification of how my perspective is right and those other people are wrong, I'll finish up with a few thoughts that I sometimes try to live by.

  • I distrust anyone who feels strongly about anything. I feel very strongly about this.
  • People are a problem

autoconf and libtool wasting time checking for g++ and g77

While the gnu auto tools are certainly the best build system
configurators on the face of the planet, I can't help but be aggrivated
by the AC_PROG_LIBTOOL macro.

Supposedly this macro tells the build system how to configure itself to
link in libraries to a program, and for the most part it does the trick.

However, whenever I run the configure script to set up the build
environment, this macro tests for the presence and usability of a c++
and fortran compiler. It does this regardless of the fact that I am not
using c++ nor fortran and additionally not linking to a library written
in either of those two languages.

Not a big deal but it is certainly a waste of time (which becomes
readily apparent on my vanilla openbsd 386 with 16mb of ram).

Here's hoping unneccessary checks like this can be removed when libtool
2.0 roles into town.


Monday, May 28, 2007

Life the Universe and Everything

So now that I have finally graduated with my shiny new Software Engineering Bachelors degree, I supposedly have some spare time to work on my own projects.

The first thing that I have done is rip out the old comlore web design business aspect of this website and replace it with a trusty weblog. The old business had its day in the sun, but I haven't actively worked on professional web design for a number of years now. Moreover, the pages that used to be in this space were hardly well designed (I was 15 with only rudimentary understanding of web stuff at the time).

Anyways, my list of personal projects is forever growing larger. These primarily focus around two things at the moment:

  1. Open source development

  2. Website upkeep

Under first category, I am working on two important projects; httperf and a kernel space mtp driver for my iriver clix and other similar devices. The work I am doing on httperf originated from my fourth year group engineering design project. The work I am doing on the mtp driver comes from the time I spent working on the user-space mtp driver libmtp during my individual software engineering design project which also occured during my final year of school.

The libmtp project suffers from some pretty substantial deficiencies with its dependency on the libusb library (e.g., device resource sharing is impossible between applications). and really needs to be re-written completely from scratch inside the open source kernel of your choice.

The httperf tool also suffers from a couple deficiencies. Primarily, it's current implementation is a little bit slow and it doesn't scale very well in testing extremely large web systems. Currently, I am re-writing some of the core components of the tool to use the extremely spiffy libevent library. I will never use select() again!

Under my second category of personal projects are the maintenance of a number of webpages that I have written for various purposes over the past several years.

The most important is currently my record of my cross country bicycle trip in which I biked from Vancouver BC to St. Johns NFLD.

The other major project, as well as something of a future career goal of mine is creation of a fairly comprehensive guide on how to build your own home theatre.

On top of all that, I now supposedly need to maintain this here blog!

Anywho, that is just about that for now.