Warning - this page is horribly out of date. More recent contributions are listed in my "resume" page. The rest of this page gives, mostly, historical information.
This page holds some free software packages I'm directly releasing. In addition to the software packages maintained directly on this site, I have also contributed code to other projects.
My main contribution is adding bidirectional (BiDi) support to the Win32 API implementation of Wine. So far only two of the rules set forth by the Unicode's BiDi algorithm have been implemented, but this is already enough for most applications to be readable, even if not flawless.
My other major contribution to Wine was the implementation of wineboot, which implements the delayed actions performed by Windows when the system restarts.
I prepared the spec file, and generated the RPMs, for XParam 1.21. I also submitted the RPM to rpmfind, an action for which I was rewarded by an endless stream of spam.
I have contributed two lines of code, fixing an argument parsing mistake. The author has added me to the Authors list of the CVS version anyways.
A GPL implementation of the most important productivity tool ever, now for the Windows platform. The program implements a transparent window and hook programing, as well as a convenient registry wrapper.
Version 1.0 can be downloaded (sources and binaries in the same package) here
We all know netcat, the TCP/IP connection swiss army knife. While INET sockets have all sorts of tools handling them, Unix sockets have none (that I could find). That is, none until this tool came along.
The original motivation for developing it was to access a serial console of a VMware hosted machine. VMware can direct the console to a Unix socket of your choosing, but from there on, it is up to you to do anything with it. Unixsock can direct the Unix socket to a listening INET socket, and add telnet options to allow a standard telnet to connect to the serial console on the guest machine.
Unfortunately, due to the fact that this is an ad-hock utility, its code is currently a tangled mess. I am (soon) releasing it as is, so that people that need it can utilize it, but it begs for a major cleanup.