inputfile handling is broken!!! when attempting to use Imagewriter
"inputfile handling is broken!!!"
... when attempting to use my shared ImageWriter from MacOS Sierra or later.
I have been using an AppleTalk ImageWriter II "shared" from an older 10.4 computer (which still remembers how to talk AppleTalk-over-Ethernet) to all the computers on my home network. I also discovered that 10.5 worked /didn't work in exactly the same ways.
AppleTalk-over-Ethernet is converted to LocalTalk/PhoneNet with an Farallon EtherMac iPrint adapter. The LocalTalk serves the ImageWriter II, and an old LaserWriter 4/600 PS.
Setting this up is only slightly different than John Galt's excellent Tutorial for setup with a serial port:
Apple ImageWriter printer installation in OS X
Mine stopped working and produced the error message above when I tried to print with Sierra or later.
After some debugging and some further research, I found a thread where John Galt's published solution had already stopped working for him earlier, and with the Help of Matt Broughton, he was able to leave cupsomatic behind, and switch to foomatic-rip. That is described within in the first page on this thread:
The gist of the solution is to download just the newer PPD for ImageWriter, and use the CUPS Web interface at localhost:631 to substitute the new PPD, named IWhi (recommended) which calls Foomatic, for the old (which called cupsomatic).
As Matt Broughton suggested, I deleted one line from the PPD. What a mistake! I could no longer print across the network! But I could print the local test page, and could print files locally.
There was another problem as well -- the print line was shorter by a quarter inch (now only 7+3/4 instead of the Previous 8.0-in, and shifted to the right on the paper.
Researching further, I discovered that the iwhi driver, inside Ghostscript, assumed that the print started at the left of the page, with left margin and top margin 0.
The cupsomatic PPD assumed default margins of 0 all around, which usually worked out fine.
But the later foomatic PPD assumed a left margin of 1/4-in, and a page width of 8.25-in, both of which were not what the driver (or the Printer) was using, and that is where the width was getting lost and the shift occurred.
So I recalculated the ImageableArea numbers and replaced them in the PPD file.
*ImageableArea Letter/US Letter: 18 36 594 756 <-----gets changed from
*ImageableArea Letter/US Letter: 0 36 576 792 <-----gets changed to
-18 -- -18 +36 <-----gets changed By
all units are points (1/72 in)
That did not work at all, because textedit substituted "curly quotes" and the PPD file ate its tail and died. But once that was straightened out, it started working.
With a modified foomatic driver on the Sharing Mac, I moved to the Sierra machine and created a new Print Queue, pausing to discard "generic postscript printer" and substitute my modified foomatic PPD. Not only did that work as expected, but I got access to a previously unseen printer option -- I could select the print quality.
This solution depends on another change from another discussion as well. I cannot find the source right now.
The foomatic filters are installed by default in the standard Unix location:
/usr/local/bin < --which is likely not accessible when MacOS Sandboxing kicks in in later versions of MacOS.
/usr/libexec/cups/filter <-- is where MacOS X CUPS will look for them. You may need to copy them over.
Mac Pro, macOS Sierra (10.12.4), & MacBook Pro, AppleTalk Printers