Three things piqued my interest today (well, two actually, but things always go better in three's so I chucked another one in).
1) After a few pokes with the blog-stick, Asus have now released more source code for the eee. Is this all of it? Can't say, but I don't see an option for the atheros wireless driver. Maybe in the kernel download? Anyway, Cliff Biffle and many others are slowing sorting all the quirks and working out how to get a real distro installed natively.
2) SCO's attempts to dodge the bullet in the Utah courts by filing for bankruptcy protection in Delaware appears to have failed miserably.
3) Finally, at the risk of feeding some of the more wild-eyed conspiracy theorists out there, I see Google have announced a High School version of the Summer of Code, and the list of 10 participating projects makes for 'interesting' reading:
I say 'interesting', as you would think that Google would want to choose from a wide variety of problem areas to appeal to the widest audiance, but in there I see essentially 6 CMS type projects, including Silverlight which I'd never even heard of. 'Interesting' too is the inclusion of Mono, possibly the most controversial FOSS project I know of, one which I would have thought Google wouldn't be so keen on being involved with. Finally, there's the obvious absence of our beloved KDE. Were we invited but were too busy washing our hair, or were we jilted at the prom? I'd love to know the reasoning behind the choices made.
One of the major features we lost in replacing KPrinter with QPrinter for 4.0 was direct postscript file printing. Whereas most applications paint the required pages onto a QPainter to be rendered into postscript, KPrinter also allowed an application to directly pass through a pre-rendered postscript file and have it submitted to the underlying print system instead. (Note, this is not the kprinter command line tool I'm talking about here).
While only one core application was affected by this, it was a very important one: Okular. Within Okular, the PDF, DJVU, and PS formats implemented high-quality print-outs by converting the document into postscript. Printing the screen pixmaps using QPainter was not an acceptable alternative, so I had to write a tool to take Okulars generated postscript files, and the settings from the print dialog, and pass them through to the print system.
The easiest way to do this was to simply execute lpr or lp with all the options settings and filename passed through. The advantage here is that it's virtually the same code for LPR, LP and CUPS based systems, and there's no added compile time dependencies. The down side is to get all the extra options supported by CUPS and not by LPR/LP (the systems, not the executables), you need to have the CUPS versions of lpr/lp installed (the executables, not the systems). Fortunately, this should be so in most modern Linux installs. The hard part is figuring out what version is actually installed and when not to pass the extra options, and I'm not sure if that side of things is quite right yet.
I've now committed my code in Okular, and I'm looking to get some testing done to make sure it's working on platforms I don't have access to. If you compile and run svn on BSD, Mac, or Windows, or you don't have the CUPS versions of lpr or lp installed, I'd be grateful if you could spare 10 minutes to test the following:
Please run from the command line so you can see any debug output, and send any problems you find my way. All the other formats supported by Okular support full native cross-platform printing using Qt, or don't have printing implemented yet.
Hint for the day: If you bookmark random pages in the main Okular interface, you can print them by choosing Selection in the print dialog.