Solution - ESP Print Pro/CUPS and XWinNMR

From: Frank Holger Foersterling (holger@uwm.edu)
Date: Tue Apr 11 2006 - 15:10:44 PDT


Thanks for all the replies with regard to the use of XWinNMR and ESP
Print Pro printer drivers. Thanks in particular to Henny Jansen and
Guenther Schmidt from Bruker for pointing me in the right direction.

I was able to get XWInNMR to print with both ESP Print Pro and the
CUPS from the SGI freeware distribution. As it turned out I was able
to find drivers with the the free CUPS software, I let my PrintPro
demo licence expire without spending money :-)

I outline the solution below, it should work for everybody who wants
to use older versions of XWinNMR (with the "plot" command) with CUPS
printer drivers on UNIX/Linux systems:

There are a few things needing tweaking to make things work.
On my system, I was using SGI IRIX6.5.29 and XWinNMR 2.5.
The location of directories varies between freware CUPS and ESP print
Pro, /etc/cups becomes /usr/freeware/etc/cups etc:
1) in the /etc/cups directory:
in the file mime.types, uncomment the line "application/octet-stream"
in the file mime.convs, uncomment the line
application/octet-stream application/vnd.cups-raw 0 -

Otherwise CUPS will reject the files passed from XWINNMR.

2) Edit the XWINNMR interface scripts(/u/plot/ppswitch,
/u/plot/lprswitch,/u/plot/plotcode):
 the original unix lp passes the printer request id as
printername-number, CUPS uses only number.
The line REQID = $2 therefore needs to be changed to
 REQU|ID=${PRNTR}-${1}

In lprswitch the line lpr -h -l -P$PRNTR needs to be replaced by
lpr -h -Pexplicit_printer_name
where explicit_printer_name is the CUPS printer you want to print to
otherwise you get into an endless loop.
That allows to use a bruker postscript driver to print to a CUPS non
postscript printer not supported by Bruker.

3) I seemed only to be able for the the interface scripts to write
to the spool directory if the CUPS server rund as as root rather than
user lp, that is undesirable but I have not found a way around this.

4) for the cfpp command to still work I created empty executable
files /usr/lib/lpshut and /usr/lib/lpsched as these don't exist with
CUPS.
cfpp now will install the printer correctly, but will finish with an
error message that the accept command failed. I am not sure why that
is, but one just has to type enable printername from a unix shell
afterwards.
                                     )|(
                                    (o o)
-------------------ooO-(_)-Ooo---------------------------
Frank Holger Foersterling, Ph. D.
Director of NMR laboratories
Department of Chemistry, University of Wisconsin-Milwaukee
http://hal.chem.uwm.edu/nmr/
(holger@uwm.edu)
--------------------------------------------------------------------
Phone:(414)-229-5896
Fax:(414)-229-5530
----------------------------------------------------------------------
-



This archive was generated by hypermail 2b29 : Wed Dec 27 2006 - 01:02:08 PST