Zen Cart vs osCommerce

Obviously we should have looked at SourceForge statistics before deciding which software to use instead of basing my decision exclusively on Google page count so here we go:

Zen Cart

  • Development Status: 5 - Production/Stable
  • Developers: 5
  • Activity Percentile (last week): 99.85
  • Latest Release: August 21, 2005
  • Google Hits: 2,110,000


  • Development Status: 4 - Beta
  • Developers: 3
  • Activity Percentile (last week): 92.80
  • Latest Release: July 12, 2003
  • Google Hits: 13,500,000

Initially, based on pure Google hit count I decided to try osCommerce first, however after having lots of troubles with PHP5 and internationalization and also checking out SourceForge statistics I decided to abandon osCommerce in favor of Zen Cart. In addition, Zen Cart seems to be actively developed unlike osCommerce, whose development seems to be completely frozen right now.

oscommerce SQL errors on Fedora Core 4

Several parts of admin section shouldn’t not work in oscommerce-2.2ms2 installation on Fedora Core 4 due to some issues with MySQL 4.1 In order to fix them the following lines in _admin/includes/classes/split_pageresults.php:

$offset = ($max_rows_per_page * ($current_page_number - 1));
$sql_query .= " limit " . $offset . ", " . $max_rows_per_page;

should be changed to:

$offset = ($max_rows_per_page * ($current_page_number - 1));
if ($offset < 0)
$offset = 0 ;
$sql_query .= " limit " . $offset . ", " . $max_rows_per_page;

oscommerce on Fedora Core 4

For those having problem with Step 2 installing oscommerce-2.2ms2 on Fedora Core 4 here is the solution:

  1. Edit _/etc/httpd/conf/httpd.conf _replacing:

    <Directory "/var/www/html">
    AllowOverride None
    <Directory "/var/www/html">
    AllowOverride Options
  2. Create .htaccess file in _/var/www/html_with the following contents:

    php_flag register_globals on
    php_flag register_long_arrays on

More on Jikes RVM on Linux PPC64

Finally we got Fedora Core 4 installed on one of our G5 at UNM. Alas it didn’t solve a problem with host IBM Java crashing. CVS HEAD build still crashes on Linux PPC64 with all latest IBM Java Development Kits including 1.4.1, 1.4.2 and 1.4.2 64-bit. I don’t really see when and how this can be solved. Seems like IBM’s Java is just too buggy.

Blojsom on Tomcat 5.5.9 with mod_jk

It looks like it is impossible to have permalinks (and comment and who knows what else) working in Blojsom, which runs on port 80 through mod_jk on Tomcat 5.5.9 (in my case).

All permalinks work from localhost only when they look like this:


instead of


In this second case I end up with “File not found” Apache error.

I tried to play with a number of things, including changing host name in Tomcat server.xml, but nothing helped. It looks like either Apache or Tomcat (or mod_jk) fail to pick up the right virtual host name for some reason and settle for localhost instead.

Anyway, in the end I settled for mod_proxy and left mod_jk problem be. Of course the question is why would I want mod_jk in the first place…

Promise SATA300 TX4 on Fedora Core 4

After installing Promise SATA300 TX4 into FC4 box, we’ve discovered that it is not supported out of the box as of kernel 2.6.12. After some research on the Internet, we’ve found a solution to this problem compiled from here and here. Basically you need to add one line to file sata_promise.c and recompile the kernel. After this, the kernel will be able to pick up Promise SATA300 TX4 adapter.

  1. Install fedora-buildrpmtree

    yum install fedora-buildrpmtree
  2. Create rpmbuild directory

  3. Download the latest kernel sources

    wget http://download.fedora.redhat.com/pub/fedora/linux/core/development/SRPMS/<kernel-name>.src.rpm
  4. Install it

    rpm -ivh <kernel-name>.src.rpm
  5. Patch the kernel with Fedora patches:

    cd ~/rpmbuild/SPECS/
    rpmbuild -bp --target=<your_arch> kernel-2.6.spec
  6. Patch sata_promise.c

    cd ~/rpmbuild/BUILD/kernel-<version>/linux-<version>
    vi drivers/scsi/sata_promise.c
  7. Add the following code:

    { PCI_VENDOR_ID_PROMISE, 0x3d17, PCI_ANY_ID, PCI_ANY_ID, 0, 0, board_20319 },
    { PCI_VENDOR_ID_PROMISE, 0x3319, PCI_ANY_ID, PCI_ANY_ID, 0, 0, board_20319 },
    { PCI_VENDOR_ID_PROMISE, 0x3d18, PCI_ANY_ID, PCI_ANY_ID, 0, 0, board_20319 },
  8. Build the new kernel

    make menuconfig
    make rpm
  9. Install the new kernel

    cd ~/rpmbuild/RPMS/
    rpm -ivh <kernel-name>.rpm
  10. Check Grub configuration

    sudo vi /boot/grub/grub.conf

    If the new kernel is not there, edit grub.conf to add it manually

  11. Reboot into the new kernel

    sudo /sbin/reboot


HighPoint Rocket Raid 1640 and fakeraids

I just found some interesting info about RAID’s. It appears to be that almost all cheap (below $300) RAID controllers are so called fakeraids. Meaning they don’t have any RAID hardware onboard. They are just plain PATA/SATA disk controllers that have no RAID features plus some proprietary software that does all the RAID-related calculations. Because the software is proprietary, it is usually hard to make these things work in Linux.

My friend has HighPoint Rocket Raid 1640. He paid around $100 for that, which was more than some other offerings. He believed he is getting something better by paying more, but it appears it was not the case at all.

Real RAID controllers usually have their own processors (some are old and slow but some are modern and fast) and (upgradeable) memory, which makes them expensive.

The conclusion is that if you want a cheap RAID in Linux, just use plain PATA/SATA controllers and open-source software RAID. If you want real hardware RAID, prepare to pay several hundred dollars.