Subject: Re: which printers will work?
To: Anne Bennett <anne@alcor.concordia.ca>
From: None <mparson@smartdna.com>
List: netbsd-users
Date: 07/21/1997 17:00:00
In message <199707212008.QAA07894@alcor.concordia.ca>, you write:

<snip>

> Surely there are people out there with printers attached to their
> NetBSD machines, perhaps even modern inkjet printers.  What works?

You can use any printer that ghostscript supports, you just need the 
appropriate filter.

I have an Epson EQ-510 hanging off my NetBSD-Amiga system, the printcap
entry looks like this:

-- cut here --
lp:\
        :sd=/var/spool/lpd/lp0:\
        :mx#0:sh:\
        :lp=/dev/par0:\
        :if=/var/spool/lpd/lp0/filter:
-- cut here --

The printcap references a filter (the :if entry).  This filter looks like:

-- cut here --
#!/bin/sh

DEVICE=epson
RESOLUTION=360x180
PAPERSIZE=letter
SENDEOF=

/usr/local/bin/enscript -TUS -ZB -p- |
if [ "$DEVICE" = "PostScript" ]; then
        cat -
else
        /usr/local/bin/gs -q -sDEVICE=$DEVICE \
                -r$RESOLUTION \
                -sPAPERSIZE=$PAPERSIZE \
                -dNOPAUSE \
                -dSAFER \
                -sOutputFile=- -
fi

if [ "$SENDEOF" != "" ]; then
        printf "\004"
fi

exit 0
-- cut here --

With this setup, I can convert anything to postscript, then feed the
postscript to lpr which will convert it to a format my Epson printer can
understand and print it for me.

As long as your version of ghostscript supports the printer that you want
to use, you can use a similar setup to print to it.

There is a more complex print-system that will let you just 'lpr foo'
and it will figure out what kind of file 'foo' is and convert it to ps
for you, but I have not bothered with it.

--
Michael Parson
SMART Technologies