Albrechts Blog

from time to time I’ll report some stories about software I’m currently using/configuring etc.

How to build a debian package out of the iprint binary RPM

As it may be of some interest, here is how I build my debian package containing the iprint client. Of course I cannot share the resulting binary, it is commercial software as I understand it.

So first you should get the RPM files yourself, by registering on Novells site and follwing this link.

Then get an empty debian package skeleton provided by me, extract it, and continue reading its README file.

The resulting debian package (I built it last time under Ubuntu Karmic) additionally contains a small Gnome applet wriiten by me, which allows you to control the stat of the iprint-listener (This has to be running, if you want to use iprint).

Even if the package contains the iprint firefox plugin, I don’t expect it to work, at laest it didn’t for me.

But you need this only for adding printers, and I prefer to do this manually anyway.

So how do you install a iPrint printer?

First examine somehow (maybe under Windows) what type of printer you are connecting to, also note its iPrint name, e.g. NAMEOFPRINTER. Then install a local CUPS printer (e.g. choosing a bogus USB interface) using that driver (driver simple means a matching PPD file, so if you get the PPD file, just copy it under /etc/cups/ppd/NAMEOFPRINTER.ppd). Afterwards edit your /etc/cups/printers.conf file, locate the new generted entry for NAMEOFPRINTER, and change the DeviceURI from whatever it is to iprint://SERVER.ADD.RESS/ipp/NAMEOFPRINTER.

Restart CUPS and you are done. If you now print to NAMEOFPRINTER, a login popup should appear, presenting you the (probably wrong guessed) username and asks for username and password.

As stated in my last post, starting with CUPS 1.4.? you need to patch CUPS to accept the incoming request from the iprint client. A patched cups debian package for Ubuntu Karmic can also be found on algepop.net, get it or build your own package out of the source package.

I also added a small Gnome system tray applet which monitors the state of iprint-listener. You can get this iprintman Python applet separately here (it is included in the debian package too).