view · edit · print · history

Printing to a USB printer using CUPS on OpenDebianSlug

The following recipe for getting CUPS printing working on OpenDebianSlug was posted to the mailing list by Rasjid Wilcox. The difficulty is that kernel modules are required to support USB printers, but these are not packaged for OpenDebianSlug.

Updated by Phil Endecott to suggest hotplug. Downlalway: This was used with udev (i.e. not adding hotplug) and extracting usblp.ko and works great with 3.10-beta DebianSlug -change the ipkg feed to the DebianSlug 3.10-beta one though.

There are two ways of installing the OpenSlug kernel module. The first is to extract the .ipk file using ar:

  1. Install binutils so you have /usr/bin/ar:
    # apt-get install binutils
    (Alternatively you can do extract the module on another machine that already has ar and copy it over the the slug.)
  2. Download kernel-module-usblp_*.ipk from the correct feed for your kernel, e.g. http://ipkg.nslu2-linux.org/feeds/openslug/cross/2.7-beta/
  3. Extract usblp.ko:
    # ar -x kernel-module-usblp_*.ipk
    # mv data.tar.gz /
    # cd /
    # tar -zxvf data.tar.gz

The alternative is to pass the .ipk file to dpkg. The formats are sufficiently similar that it can be made to work:

  1. Download the .ipk exactly as above.
  2. Install using dpkg:
    # dpkg --force-all -i kernel-module-usblp_*.ipk

You'll see various warnings; it's probably a good idea to see if they look serious!

In either case, continue as follows:

  1. Rebuild the module dependencies:
    # depmod -a
  2. Install cups and hotplug:
    apt-get install cupsys hotplug

To see it work, tail -f /var/log/syslog while you plug in or power on your printer.

Downlalaway: Cupsys 1.2.1 apparently now has over zealous security which by default locks out anyone but the slug from the web gui if in /etc/cups/cupsd.conf the 'Allow From localhost' line is present depsite adding other Allow lines. A fix was to replace 'localhost' with the local LAN IP of the slug, but check the cups mailing lists. I also added:

apt-get install cupsys-gutenprint

Giving all the printer drivers, but this is a sizeable download so watch your free space. It may also not be necessary if the slug mainly passes through raw printing from your remote PC's printer driver. I chose IPP printing i.e. to port http://slugIP:631/printers/<slugprintername>(approve sites) since trying previously with samba on a similar box was much slower.

For further instructions on using CUPS and Ghostscript as a print server see http://www.debonaras.org/wiki/HowTo/InkjetPrintingWithGhostscript

view · edit · print · history · Last edited by downlalaway.
Based on work by endecotp and markus.
Originally by Phil Endecott.
Page last modified on July 01, 2006, at 09:02 AM