[Main]   [About]   [ChangeLog]   [Compatibility]   [Links]   [Notes]



About Me
About This Site
About The Development Machine
About The Test Machines
Some Background
Applications



About Me

Hello. My name is Paul Schuurmans. I was born in Indonesia, grew up in the USA, and now live in The Netherlands. Although I do a bit of programming every now and then, it's basically just a hobby. One of my other hobbies is playing
racing games.


About This Site

Although I've had an Internet account since around August 1998, my first attempts to create a homepage started sometime in 2001. The main purpose of this site is to make my programs available to the general public. I hope they will be useful, but I give no guarantees as to their fitness for any particular purpose.


About The Development Machine

For the current development machine, the old multi-boot was replaced with a dual-boot system. The original 3 OSes from the old system now run on QEMU virtual machines. So, although the physical machine has changed, the programming environments (running on VMs) have basically stayed the same.

 For programs dated after 2008.02.29
Machine
Physical:AMD Sempron 3000+, 4G RAM, dual-boot
Virtual:Intel Pentium II, 256M RAM
OS
Physical:Debian 4.0 (main OS), Debian 3.1
Virtual:Debian 3.1, Mandrake 9.1, Slackware 8.1, Slackware 10.0
GUI Debian 3.1: KDE 3.3.2
Debian 4.0: KDE 3.5.5
VM Debian 3.1: Fluxbox 0.9.11-1
VM Mandrake 9.1: IceWM 1.2.6-1
VM Slackware 8.1: Xfce 3.8.16
VM Slackware 10.0: Fluxbox 0.1.14
Tools Debian 3.1: Anjuta 1.2.2, Glade 2.6.8, GTK+ 2.6.13, ncurses 5.4
Debian 4.0: Anjuta 1.2.4, Glade 2.12.1, GTK+ 2.8.20, ncurses 5.5
Mandrake 9.1: Anjuta 1.0.2, Glade 0.6.4, GTK+ 1.2.10, ncurses 5.3
Slackware 8.1: Anjuta 0.1.9, Glade 0.6.4, GTK+ 1.2.10, ncurses 5.2
Slackware 10.0: Anjuta 1.2.1, Glade 2.6.0, GTK+ 2.4.3, ncurses 5.4
 For programs dated between 2006.02.14 - 2008.02.29
MachineAMD Athlon XP 1600+, 512M RAM, multi-boot
OS Debian 3.1 with 2.4.27-2-k7 kernel (main OS for GTK2 programming/prototyping)
Mandrake 9.1 with 2.4.21-0.13mdk kernel (for GTK1 programming)
Slackware 10.0 with 2.4.26 kernel (for GTK2 programming/testing)
GUI Debian 3.1: KDE 3.3.2
Mandrake 9.1: KDE 3.1.0
Slackware 10.0: KDE 3.2.3
Tools Debian 3.1: Anjuta 1.2.2, Glade 2.6.8, GTK+ 2.6.13, ncurses 5.4
Mandrake 9.1: Anjuta 1.0.2, Glade 0.6.4, GTK+ 1.2.10, ncurses 5.3
Slackware 10.0: Anjuta 1.2.1, Glade 2.6.0, GTK+ 2.4.3, ncurses 5.4
 For programs dated between 2003.05.03 - 2006.02.14
MachineAMD Athlon XP 1600+, 256M RAM
OSMandrake 9.1 with 2.4.21-0.13mdk kernel
GUIKDE 3.1.0
ToolsAnjuta 1.0.2, Glade 0.6.4, GTK+ 1.2, ncurses 5.3
 For programs dated between 2002.04.30 - 2003.05.03
MachineAMD Duron 800MHz, 256M RAM
OSMandrake 6.1 with various 2.2 kernels
GUIKDE 1.1.2
ToolsKdevelop 1.1, Glade 0.5.9, GNOME 1.4, GTK+ 1.2
 For programs dated before 2002.04.30
MachineAMD K6-2   500MHz, 192M RAM
OSMandrake 6.1 with various 2.2 kernels
GUIKDE 1.1.2
ToolsKdevelop 1.1, Glade 0.5.9, GNOME 1.4, GTK+ 1.2


About The Test Machines

The distros listed on the
Compatibility page were tested on various machines, some of which are now defunct. The current test machines are listed below. Each of these includes HDD mobile racks for interchangeable HD trays. The monitor is an Asus LCD that's shared (along with keyboard and mouse) via a NewStar NS-411K KVM switch. Note that, as of February 2008, most of the testing is done on QEMU virtual machines rather than on real hardware; the exceptions being 64-bit distros and distros that don't run well (or at all) under QEMU.

 QEMU VM running on sys5 (see below)
CPUIntel Pentium II
MainboardIntel i440FX
RAM128M, 256M, 512M, or 1G
VideoCirrus Logic GD 5446 PCI VGA
 sys5 (primary testbox / secondary production machine)
CPUAMD Athlon64 X2 4600+ (2400MHz, dual-core)
MainboardAsus M2V
RAM4G DDR2
VideoAsus EN7600GS, 512M PCI Express
 sys4 (production machine / secondary testbox)
CPUAMD Sempron 2800+ (1599MHz)
MainboardAsus M2V
RAM4G DDR2
VideoAsus EN6200TC, 256M PCI Express
 test1 (testbox-only, non-production machine)
CPUAMD Athlon XP 1800+ (1532MHz)
MainboardASRock K7VT2
RAM384M SDR
VideoXFX GeForce 6200, 128M AGP

The interchangeable hard disks are listed below. Each of these has a pub partition where the C source tarballs are stored. Live distros are tested by mounting pub and compiling the code there; installed distros are tested in the usual way (by copying the tarballs from /pub to /usr/local/src). The list below is in the order of most often used.

QEMU VM diskshda with 3 partitions (root, swap, and pub of varying sizes)
Maxtor 120Ghda with 10 partitions (7x12G root, 8G swap, 20G pub)
Maxtor 120Ghda with 13 partitions (10x10G root, 4G swap, 16G pub)
Maxtor 10Ghda with 3 partitions (6G root, 512M swap, 3G pub)
Seagate 120Ghdb with 16 partitions (13x6G root, 512M swap, 35G pub)


Some Background

I started using Linux in January 1999 (Slackware 3.5 at first, and RedHat 6.0 a half year later). Then, at a computer show in February 2000, I came across a boxed set of the Mandrake 6.1 Gold Pack distro and well... I've been hooked on Linux ever since.

It was sometime later that I started writing programs using KDevelop 1.1 and the KDE/Qt libraries (coming from a Windows background, it came closest to what I was doing before, i.e., using Borland C++). When KDE2 came out, the development libraries had changed so much that my programs no longer compiled or ran without major modifications to the source code. So, I stopped using the KDE/Qt libraries and started using the GNOME/GTK+ libraries.

Sometime around the beginning of 2002, I wrote a program called gHTTrack and created my first homepage (this website) to make it available to the general public. Later, I decided to add other programs to the page. Since these programs were now available to anyone with Internet access (and because I myself use different distros on different machines), portability became an important issue. I started testing several other Linux systems and soon came to realize that a lot of distros don't include the GNOME/GTK+ development libraries.

In May 2003, after a year-long break from programming, I decided to try using the ncurses libraries. The idea was that ncurses programs would be able to compile and run on any GNU/Linux system (even those that don't include a GUI environment). Well... much to my dismay, I came across several distros that don't include the ncurses libraries, many of which don't even include make or a C compiler. But, the ncurses programs do compile and run on quite a few more systems than their GNOME/GTK+ versions do, so I've decided that most of my future projects will include both (ncurses and GTK versions).

In October 2003, it came to my attention that some distros, even if they don't include GNOME, can still run The Gimp. This got me thinking, and I started doing some experimenting. I put together a test project using only the GTK+ library (no GNOME support) and tried it on a few distros. Much to my surprise, it ran on two distros that earlier projects didn't run on. Since GNOME doesn't seem to be supported in most recent distros, I've decided to only use the GTK+ library in future g* projects. The removal of the GNOME library dependancy should make them easier to install on non-RedHat-based systems.

In February 2006, I switched from Mandrake 9.1 to Debian 3.1 as my main OS. Shortly after, in March, I opened my first broadband Internet account. And shortly after that, in April, I suddenly found myself with a renewed interest in programming. May marks the completion of my first GTK2 project; I chose gFnRename because of its simplicity. With that project finished, the focus shifted to a more complicated one. June marks the completion of gHTTrack 0.4 and 0.5 (developed simultaneously for GTK1 and GTK2, respectively).

In January 2007, after several weeks of testing distros, I've come to realize that gettext is another issue that can cause compatibility problems. Due to the fact that it's so easy to put back in, I've decided to remove gettext support from the current GTK2 projects (gFnRename, gHTTrack, gTextCvt) and omit it from future projects.

In July 2007, it became increasingly clear that my machines were too under-powered to test some of the more recent distros. So, I decided to upgrade one of them with a 64-bit CPU and 4G RAM. Although my philosophy is usually "If it isn't broken, don't fix it", the upgrade means that I now have the ability to test 64-bit distros and other distros that require more resources than I previously had.

In February 2008, I started testing distros using virtual hard disks in QEMU sessions. I had used QEMU to test live CDs before but, until recently, didn't think it would be very practical to use QEMU for installations. Although it takes a bit longer to install a distro on a VM, there are some advantages. For distros that I've never tried before, using a VM is safer and easier. Installing on a VM also means that the physical machine isn't tied down while the installation is in progress.

In June 2010, after a 3-year long break from programming, I finally decided it was time to get back into it. I'd been looking for an easy way to purge my hard disk of the many duplicate files I'd collected over the years and, since I couldn't find a program that would provide a simple solution, I decided to write one. The program is called gDelDups and its simplicity gave me a good way to ease back into programming after being away from it for so long.


Applications

Below is a list of some of the programs that I currently use.

AcidRipFor converting video DVDs to AVI files.
AleVTFor reading TeleText pages. Works well in combination with XawTV.
AnjutaFor programming. I switched to this one a long time ago because KDevelop was too KDE-centric and created too much bloat.
ApplixOfficeFor database stuff and for writing letters. I bought v4.4.2 in 1999 and it still runs on all the distros that I use.
AvidemuxFor simple video editing.
D4XFor downloading distros and other large files from HTTP and FTP sites.
EasyTAGFor editing MP3 tags.
EmelFMFor file browsing/copying/moving.
Evince(Debian 4.0) For reading PDF documents.
Firefox(Debian 3.1) For local and non-local Web browsing.
GEditFor editing text and HTML files when there are a lot to edit (e.g., when configuring a newly-installed system).
gFTPFor uploading files to my website.
GimpFor editing images.
GQviewFor viewing images.
GTKtalogFor cataloging the contents of CDs and DVDs.
IcedoveFor reading and writing email.
Iceweasel(Debian 4.0) For local and non-local Web browsing.
K3bFor burning CDs and DVDs. I switched to this one because xcdroast couldn't do DVDs without a proprietary library.
KaffeineFor playing video clips if there are a lot to view.
KDictFor accessing the local dictionary server.
KGhostview(Debian 3.1) For reading PDF documents.
KonquerorFor file browsing.
KuickshowFor viewing images if I want a quick thumbnail view of all images in a directory.
KWriteFor writing and editing plain text and HTML files.
QEMUUsed in combination with QEMU Launcher. For running VMs, and for testing ISO and FD image files.
SynapticFor installing pre-packaged software from the Debian DVDs.
TotemFor playing video clips if I just need a quick way to check the contents.
TVtimeOccasionally used for fullscreen TV viewing if I don't plan to do anything else at the same time.
XawTVFor normal TV viewing. AleVT works well in combination with this one.
XMMSFor playing MP3s, and for converting music CDs to MP3s (via the out-lame codec).



For questions, comments, etc... see the README file.


[Main]   [About]   [ChangeLog]   [Compatibility]   [Links]   [Notes]

This page was last updated on: Saturday, July 10, 2010