Software

This is all free software that I have written from scratch over the years or that I have adopted from others. There is also a list of projects that I've subsequently abandoned and which is up for adoption.

Mature projects have their own web site, git repositories and released tarballs. Less mature ones, might have no web site (besides this one), nor published git repositories, but should have at least tarball releases. Projects hosted here should have artifacts in one of the following places:

Over the years I have contributed to many other software projects, and have prepared software patches fixing issues or adding new features. Some of those software contributions can also be tracked at OpenHub (was Ohloh). Or in one of the following external hosting sites:

Debian

Software related to the Debian project, most of it packaged in Debian itself, some of it just provided as released tarballs and/or git repositories.

dpkg suite
The Debian Package Manager suite, composed of dpkg, dpkg-repack, dpkg-www, debsig-verify, dupload and dlocate.
update-inetd
A program to manage the inetd.conf file.
debtakeover
A tool to migrate a running distribution to Debian. To take over the world one system at a time.
mini-dak
A partial and lightweight reimplementation of dak (Debian Archive Kit), which was initially created to host the Debian ports on ftp.gnuab.org, now currently running as a forked version on https://ports.debian.org/.
l10n-bot
The localization bot currently used by the Debian Catalan team to coordinate translations. It listens on a mailing list address and gives a global overview of the current status on a web interface (here is the web interface for the Debian Catalan team).
git-hooks
A set of git hooks for Debian related projects.
fakecross
A fake multiarch cross-toolchain via a multilib toolchain.
gcc-on-diet
A package to strip the programs from the gcc-* Debian packages when they are unpacked (due to 783876).

Shared libraries

A collection of system shared libraries, to ease portability, or provide interfaces present on BSD-based systems back lacking on other systems such as GNU-based ones.

libbsd
A library with utility functions from BSD systems, which I maintain upstream and the libbsd Debian package.
libmd
A library with Message Digest functions, to provide the BSD interfaces on other systems, which I maintain upstream and the libmd Debian package.

Graphics

Graphics related software, including X11 and 3D.

glide
The 3Dfx Voodoo Graphics collection of rendering libraries, which I co-maintain upstream and maintain the glide Debian package.

Games

4inline
A «Connect Four» style game, with pluggable user interfaces, but no AI yet. Written long time ago to try various GUI frameworks. Published only as a tarball release for now.
hex-a-hop
A puzzle game based on hexagonal tiles. Became a maintainer in 2023.

System

mini-utils
A collection of some random miniature utilities, distributed based on theme. Composed of: mini-dos — a set of miniature BIOS and DOS programs, written many years ago in x86 assembler or C for PC-BIOS or MSDOS, because the environment was lacking such tools; mini-blk — a set of miniature block device utilities, little quick night hacks I wrote to recover the partition table of my main work station; and mini-math — a set of miniature math utilities to mess with numbers, some of which I wrote while at high school to help resolve exercises.
sfile
A sub-file or structured-file identifier and dumper. This program opens a file and analyzes its contents recursively, looking for any other embedded or nested sub-files, and prints out its headers or an hex dump if the header dumping has not been implemented yet. Very useful for debugging purposes.
3d-os
Of course, I also started an operating system, got engrossed and entangled in the early booting, CPU detection and initial setup, and got bored when having to duplicate much of what had already been done countless of times before.

Unmaintained Software

libpmount
A portable mount(2) library, which I adopted and maintained upstream and in Debian (see libpmount). It never had any known usage, and its API was not well thought out.
maemo-launcher
A daemon to speedup applications startup time and memory sharing between processes. It supports booster modules, which are the ones in charge of preinitializing and keeping the interesting state. I wrote and maintained this while at Nokia, but have not really touched it since.
device3dfx
An out-of-tree 3Dfx Linux device driver, which I maintained upstream and in Debian (see device3dfx).
xf86-video-glide
The X.Org 3Dfx Glide driver, which I maintained upstream, although the Debian package was maintained by the Debian X Strike Force.
xfstt
An X Font Server for TrueType fonts, which I maintained upstream and in Debian (see xfstt).