According to Novell, an iPrint .deb package can be made using alien
.
The generated package doesn't build in Precise however.
And whatever is built is dangerous to your system.
But bear with me...
The alien-generated package just needs a few changes:
Don't install the 32-bit libraries/executables or the links to them. The 64-bit will do. Don't install symlinks to these either. Adjust the lib and lib64 paths. (See MultiarchSpec.)
Don't edit cupsd.conf
from the postinst.
The user must be allowed to add/remove printers in CUPS without using a password.
How this is configured is a matter for the user/admin.
(But see giving the user CUPS admin access.)
Don't bother starting/stopping the listener during install. It needs access to the X screen, so it has to be started when the windows manager starts.
Install a couple of packages before building, so shlibdeps can find the libraries the iPrint client needs.
Instead of installing a bunch of superfluous symlinks to the browser plugins and forgetting the right two, install just the right two.
Depend on firefox/iceweasel, libglitz and a few others. Build-depend on fakeroot, quilt etc.
Leave the ld_library_path alone.
Having /opt/novell/lib64
in that path presents a danger.
If Novell decides to put some Novell version there of a library that any package on the system links to, that package may break or become vulnerable.
When all this is done, you get a package that builds and works. I cannot offer it here: it would contain software for which Novell owns the copyright. But I can offer the bits and pieces that allow you to recreate the package. To do so...
I got from my iprint server an RPM novell-iprint-xclient.x86_64.rpm
.
Get the same, and unpack it using alien:
user@pc:~/$ mkdir iprint
user@pc:~/$ cd iprint
user@pc:~/iprint$ alien -d --generate --scripts --keep-version --fixperms novell-iprint-xclient.x86_64.rpm
novell-iprint-xclient-sl-6.503.20111114
novell-iprint-xclient-sl-6.503.20111114/debian
user@pc:~/iprint$ mv novell-iprint-xclient-sl-6.503.20111114/debian ./debian-aside
Fetch my tarball, and unpack it:
user@pc:~/iprint$ wget -q http://jurjenbokma.com/ApprenticesNotes/download/novell-iprint-xclient-sl-6.503.20111114-deb.tgz
user@pc:~/iprint$ tar zxvf novell-iprint-xclient-sl-6.503.20111114-deb.tgz
pbuilder-hooks/A30-add-packages
novell-iprint-xclient-sl-6.503.20111114/debian/
novell-iprint-xclient-sl-6.503.20111114/debian/dirs
novell-iprint-xclient-sl-6.503.20111114/debian/patches/
novell-iprint-xclient-sl-6.503.20111114/debian/patches/rc-status-in-lsb.diff
novell-iprint-xclient-sl-6.503.20111114/debian/patches/series
novell-iprint-xclient-sl-6.503.20111114/debian/postinst
novell-iprint-xclient-sl-6.503.20111114/debian/compat
novell-iprint-xclient-sl-6.503.20111114/debian/changelog
novell-iprint-xclient-sl-6.503.20111114/debian/rules
novell-iprint-xclient-sl-6.503.20111114/debian/copyright
novell-iprint-xclient-sl-6.503.20111114/debian/control
novell-iprint-xclient-sl-6.503.20111114/debian/conffiles
novell-iprint-xclient-sl-6.503.20111114
Change directory into the package dir, substitute your own gpg key, and build using pbuilder:
user@pc:~/iprint$ cd novell-iprint-xclient-sl-6.503.20111114
user@pc:~/iprint/novell-iprint-xclient-sl-6.503.20111114$ DIST=precise pdebuild --debsign-k AAA01010
--debbuildopts '-sa'
This should get you a working package.
If you don't have pbuilder setup and don't want to bother, you can also rm -rf pbuilder-hooks, and instead of using shlibdeps add the dependencies by hand in debian/control
.
These are the dependencies shlibdeps generates for me on Debian Wheezy:
libc6 (>= 2.3.4), libcups2 (>= 1.4.0), libgcc1 (>= 1:4.1.1), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.12.0), libgtk2.0-0 (>= 2.8.0), libnspr4 (>= 2:4.9-2~) | libnspr4-0d (>= 1.8.0.10), libstdc++6 (>= 4.1.1), libxml2 (>= 2.6.27), zlib1g (>= 1:1.1.4)
These are the ones for Ubuntu Precise:
libc6 (>= 2.3.4), libcups2 (>= 1.4.0), libgcc1 (>= 1:4.1.1), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.12.0), libgtk2.0-0 (>= 2.8.0), libnspr4 (>= 1.8.0.10), libstdc++6 (>= 4.1.1), libxml2 (>= 2.6.27), zlib1g (>= 1:1.1.4)
with these, you should be able to build with dpkg-buildpackage.