Jaunder

#debian

Posts by ~mdorman
M
Michael Alan Dorman@mdorman

Happy Birthday, Debian!

Debian GNU/Linux turns 19 today.

I estimate that I did my first install some time in late 1995, perhaps early 1996. I haven't really used anything else as my day-in-day-out OS since. I've never had a Mac of any stripe, and haven't used Windows with any frequency other than for World of Warcraft since '99.

I can pin my first contribution to Debian with far more accuracy: September 3, 1996. That's the date on the first Debian changelog entry in the libwww-perl package, which was, I believe, the first package I ever made. It still exists in Debian and Ubuntu (and other derivatives) and if you have it installed, you can look at /usr/share/doc/libwww-perl/changelog.Debian.gz, and right down there at the very end, you'll find my grubby little fingerprints.

Sadly, things quickly went downhill---I am, to some extent, to blame for the fucked-up naming convention (with its poorly-sorting use of a -perl suffix) of every Perl library package in Debian, and probably by extension, the similar poor choices in the -java and -cil groups. Even the PHP guys were smarter.

As I remember it, having packaged libwww-perl (which is the actual name of the package as it exists on CPAN, so I just used that as the package name), I discovered that for some things---FTP support, I believe---it required the libnet package, which provides a lot of Net::* modules. But when I announced that I was going to package it someone (I want to finger Rob Browning, but cannot in be certain, and I don't know if the Debian archives go back that far, and can't be bothered to check, really) said they were about to package the libnet C library, which would conflict, so maybe I could call it libnet-perl, like libwww-perl, which I did. And then the next thing I packaged I ended up calling lib<whatever>;-perl for no good reason, and it all went to hell.

Bleargh.

Almost 16 years later, we have ~ 3000 Perl packages in the repository, all with that damned -perl suffix. So, um, sorry.

My other big accomplishment of any note, I think, was to finally get the 64-bit Alpha port to a self-sustaining state. This started with a bootstrap that someone had done from a set of RedHat binaries before, and gradually pulling along various bits of the system until we had a self-hosting system.

Along the way, I was responsible for another unfortunate bit of "engineering"---libc6.1. Again, I don't think I was totally alone in putting this forth (David, David...um, I forget his last name, and the libc6 changelog.Debian doesn't go back that far), but it probably would have been better to bite the bullet and avoid all the gymnastics it required.

As I remember it (this was, err, '97? So I may have some details wrong), RedHat had pushed their first Alpha release using a libc with a SONAME of 6, based on a pre-release glibc-2...and then the 64-bit ABI was changed when glibc-2 was released. Our versioning tools for shared libraries were much more primitive at the time, and we wanted to keep compatibility with RedHat, since that's where a lot of the heavy duty engineering was going, so we had to follow them in changing the library SONAME to 6.1. This entailed a lot of churn at the time, most of which I've blocked out. I did a lot of mechanical patches on a lot of packages.

I did spent a lot of time doing fixes for 64-bit-isms in various packages, and I can remember the flush of pride I had when Alan Cox mentioned that he'd gotten a bunch of 64-bit fixes as well as the conversion of the mh mail client to use an ELF shared library from the Debian package, because that was my work.

My time as an active Debian contributor was not always a smooth one---I wasn't always as attentive about keeping things up to date or doing triage on bugs as I could have been. I think I finally formally recognized that I wasn't able to keep up around 2002, which was probably a couple of years later than everyone else had realized it.

Ironically, I probably maintain more packages now, for our internal company purposes at Ironic Design, than I ever did as a developer; the tools have made the maintenance at least of the sorts of packages I do (libraries and simple applications) incredibly easy.

I maintain ~ 20 production Debian servers, with a handful of dev servers and a couple of home systems, including the laptop I'm writing this on, with basically no problems on a day to day basis. It has its warts, but I have boxes that have been continuously upgraded over a span of half a dozen years with no appreciable problems. I am able to be productive and use the environment happily. I remember the rough spots at the beginning (the move from a.out to ELF, for instance), but what Debian provides now always surprises and delights me.

So kudos to those Debian maintainers, former and current, who have contributed to such a great software system.

M
Michael Alan Dorman@mdorman

Why your USB-connected Palm stopped working with Debian etch

This is mostly one of those "maybe my googlejuice will help others" posts.

So, a few weeks ago I went to sync my Treo with j-pilot, and nothing happened. Normally I press the 'sync' button on the cable, wait a second, then hit the 'sync' button on j-pilot, but suddenly, nothing. I haven't been worrying about it--I've gone much longer without syncing, and I've been awfully busy.

Anyway today I decided to figure out what was going on. There are some oblique references to the problem in some bug reports, but I'll lay it out explicitly here.

It turns out that etch just recently got the pilot-link 0.12 packages, which have deprecated the old 'visor' kernel module in favor of direct communication via libusb--and when I say deprecated, I mean it: the libpisock9 packages add a file in /etc/modprobe.d that blacklists the visor module so it simply won't get loaded. So, suddenly, attempting to sync fails without any real indication what's wrong.

Now don't get me wrong, using libusb is much better in many ways (faster, moves code from the kernel to userspace that is better located there, etc.), but, it means that you need to change the port your pilot-link-based apps are using from /dev/ttyUSB1 (or /dev/pilot or whatever) to simply 'usb:' (yes, the colon is important).

Do that and suddenly things should work again.

M
Michael Alan Dorman@mdorman

A Debian Developer died in a car accident

Manuel Estrada Sainz died in a car accident last night, going home from the Free Software Conference in Valencia, Spain.

Although my actual participation within Debian has been, well, pathetic of late, and I didn't have any particular interaction with Manuel--I didn't use any of the packages he maintained--it's still always somehow affecting to find that someone with whom you had this connection has died.

M
Michael Alan Dorman@mdorman

libwww-perl

Updated depends and build-depends to include perl-5.8.1 as an alternative to libnet-perl, closed the two bugs that were opened regarding the issue.

M
Michael Alan Dorman@mdorman

libwww-perl updated today

Marking the end of my pathetically long hiatus from doing any actual Debian work, I uploaded a new version of libwww-perl, based on the new upstream 5.69 release. It doesn't close every bug (there's a couple that need more looking at, and a couple that are probably going to get ste to wishlist), but it closes several, it compatible with both testing and unstable, and should even be installable on stable, though it's unlikely to ever actually show up there.