Photo printers and libusb, oh my!
A while back, I picked up a Canon SELPHY ES1 dyesub photo printer, only to discover it didn't work properly under Linux, thanks to it needing an intelligent spooler to prevent lockups, and being just different enough from earlier models to require tweaks to gutenprint.
So, in the spirit of Free Software, I patched gutenprint, and wrote the spooler. Over time, the spooler got smarter, supported more printers, achieved sentience, and brought about world peace.
...Until Apple revved OSX's printer subsystem and Canon neglected to release updated drivers for, well, most everything. Since my tool was written to use linux's native usblp support, OSX users were SOL.
Last night, I finished rewiring it to use libusb, and accept input on stdin. This enables it to be used in a CUPS filter chain, and theoretically supports OSX. But that remains to be tested..
...And I finally moved it to version control:
It still needs USB IDs for most of the SELPHY line, but otherwise seems to work fine with my ES1, ES2, and ES30 printers, at least on Linux.