• Welcome to OS2World OLD-STATIC-BACKUP Forum.
 

News:

This is an old OS2World backup forum for reference only. IT IS READ ONLY!!!

If you need help with OS/2 - eComStation visit http://www.os2world.com/forum

Main Menu

Preview of CUPS 1.3.7

Started by Pete, 2008.06.11, 16:55:52

Previous topic - Next topic

Paul Smedley

Quote from: Paul Smedley on 2008.06.17, 05:57:48
I wonder if Alex Taylor could improve instpdr so that it could strip out the *StpStp lines and handle the 'un' gzip of Gutenprint ppd files - that would help get us one step closer.

Incidentally, the next release of InstPdr will strip out the lines from the .ppd that break the OS/2 postscript driver (Thanks Alex!)

There's a link to a test build in the ecups-dev mailing list.

Paul Smedley

Quote from: jep on 2008.06.20, 11:39:21
Sorry I don't report that it work (and how I did it), but that because you haven't got a corner devoted to that at your site (as many others). Guess it could spur more people to first try and then report problems as well. I know I only began after this discussion started. Sad, but that is how people work, including me. :-(
Would be nice if it could be centralized as well, but that may be to far fetched I guess...

Well I'm open to suggestions on how to improve things.  There is a guestbook at the site - I really don't want to setup forums as we have existing forums here and don't really want to splinter users any more than they already are.

There is also a 'Contact Us' link at http://os2ports.smedley.info that can be used for feedback, and of course, my email is listed in the readme.os2 of every package I release :)

Blonde Guy

Quote from: David McKenna on 2008.06.13, 00:14:16
  You can get a USB printer to work, it just takes a little more tweaking. From the README:

    * currently tested printer backends are ipp & lpd - usb isn't working. However, in the meantime, you can create a printer object for the USB printer, and run the OS/2 lpd daemon and print to a usb printer using the lpd backend in cups.

Dave McKenna

I have a USB printer. I have set up LPD. What do I do next?

Neil
Expert Consulting for OS/2 and eComStation

Saijin_Naib

Quote from: Paul Smedley on 2008.06.27, 06:08:08
Incidentally, the next release of InstPdr will strip out the lines from the .ppd that break the OS/2 postscript driver (Thanks Alex!)
There's a link to a test build in the ecups-dev mailing list.

Excellent news Paul! Does this mean that I will simply be able to take the PPD file on LinuxPrinting.org for my PSC1210xi, import, and then print to it using the OS/2 PostScript printing engine? w00t :D

David McKenna

Quote from: Blonde Guy on 2008.06.27, 18:36:18

I have a USB printer. I have set up LPD. What do I do next?

Neil

Neil,

  1st install CUPS into the root of any directory. Also install libc064x.dll into a directory in your LIBPATH. Then start X:\CUPS\SBIN\CUPSD.EXE from the command line or an object. Open your web browser and go to http://localhost:631. You should see the CUPS interface. Click on 'Add Printer' and follow the instructions. When it asks for 'Device' choose LPD. When it asks for 'Device URI' type 'lpd://<ip-address or hostname>/<printer queue> where <ip-address or hostname> is the address of the lpd server (probably 'localhost' or 127.0.0.1 if CUPS is on the LPD server) and <printer queue> is the name of your eCS printer object on the USB port. The rest should be self-explanatory. If you have trouble the CUPS docs are very good - look under 'Network Printing' or post back here....

Regards,

Dave McKenna

Paul Smedley

Quote from: Saijin_Naib on 2008.06.27, 23:26:00
Quote from: Paul Smedley on 2008.06.27, 06:08:08
Incidentally, the next release of InstPdr will strip out the lines from the .ppd that break the OS/2 postscript driver (Thanks Alex!)
There's a link to a test build in the ecups-dev mailing list.

Excellent news Paul! Does this mean that I will simply be able to take the PPD file on LinuxPrinting.org for my PSC1210xi, import, and then print to it using the OS/2 PostScript printing engine? w00t :D

There's a little more to it than that.  There also needs to be an appropriate filter for converting the postscript code into the appropriate printer format.  if the PSC1210 is supported by Gutenprint, then the answer to your question is probably yes.  For other HP printers, like those supported by HP's hplip driver, the answer is 'not yet'.

Cheers,

Paul.

Blonde Guy

Quote from: David McKenna on 2008.06.28, 01:30:29
Quote from: Blonde Guy on 2008.06.27, 18:36:18

I have a USB printer. I have set up LPD. What do I do next?

Neil

Neil,

  1st install CUPS into the root of any directory. Also install libc064x.dll into a directory in your LIBPATH. Then start X:\CUPS\SBIN\CUPSD.EXE from the command line or an object. Open your web browser and go to http://localhost:631. You should see the CUPS interface. Click on 'Add Printer' and follow the instructions. When it asks for 'Device' choose LPD. When it asks for 'Device URI' type 'lpd://<ip-address or hostname>/<printer queue> where <ip-address or hostname> is the address of the lpd server (probably 'localhost' or 127.0.0.1 if CUPS is on the LPD server) and <printer queue> is the name of your eCS printer object on the USB port. The rest should be self-explanatory. If you have trouble the CUPS docs are very good - look under 'Network Printing' or post back here....

Regards,

Dave McKenna

I already have the following installed and running.

The printer is on USB.
The LPD server is on.
The eCups port driver is installed.
The CUPS server is configured, and I can print to my network printer.

I want to print to the USB printer.
Please explain the printer object to be used with LPD. I'm sure it will want a printer driver. Please explain how that works.

Neil
Expert Consulting for OS/2 and eComStation

Paul Smedley

New version of CUPS port driver added to the wiki - http://svn.netlabs.org/ecups/wiki/PortDriver

David McKenna

Neil,

  OK... I understand your situation a little better now. BTW, what printer is attached to the USB port? Anyway, what you need to do is import the Gutenprint PPD file into the eCS PSCRIPT driver, then install the resulting printer driver. I assume you installed the printer in the CUPS web interface. Here are the steps I used to install mine:

1) Download the PostScript printer drivers for eCS version
30.822 (ps30822en.zip found on the eCS website at:
http://www.ecomstation.com/ecsdb/software_cats.php in the 'All Device
Drivers' section). Download the enhanced PIN and PPDENC files from
ftp://ftp.netlabs.org/pub/ecups/work/pinfix.zip.

2) Unzip the PostScript driver package into a
temporary empty directory. I used C:\Junk. Unzip the pinfix.zip package into
a different directory, then copy PIN.EXE and PPDENC.EXE into C:\Junk (this is to avoid overwriting the README already present - I wanted to keep that).

3) Copy the *.ppd file for the USB printer found in C:\cups\etc\cups\ppd to a temporary directory (NOT C:\Junk - I used C:\Junk\PPD). Open the copied version in a text editor and search for the string 'stpstp'. Delete every line that contains this string. Save the changed file in C:\JUNK\PPD.( It has also been reported that 'stpDefault' lines need to be removed, but it was not the case for me - YMMV).

4)  Prepare the altered PPD file for eCS PSCRIPT driver by opening a command line
window and navigate to C:\Junk. Type: PPDENC C:\Junk\PPD C:\Junk <enter>. This encodes the PPD file and puts the encoded version in C:\Junk.

5) From the command line window, in the C:\Junk directory, type: PIN PPD C:\Junk C:\Junk\PSCRIPT.DRV <enter>. This will import any PPD file in C:\Junk into PSCRIPT.DRV.

  Now PSCRIPT has the printer you need in it. Install the print driver in the usual way(s). I right clicked on an existing printer object, chose 'properties', then 'Printer Driver' tab, then right clicked on an existing driver object, then 'Install'. Point the install to C:\Junk and then 'refresh' to get the list of printers. Choose yours from the list.

  Now you can create the new printer object - I dragged a printer template to the desktop, named it 'CUPS' and chose the new PScript printer driver. You will need to set the port to USB - which may need to be installed... right click on an existing port and choose 'install'. The USB port should appear in the list.

HTH, and sorry if I am telling you stuff you already know. Let us know how it goes...

Regards,

Dave McKenna

David McKenna

Neil,

  I forgot to mention also you will need 2 printer objects for this to work... one for CUPS and one for the LPD server. Both will use the same PScript driver, but the CUPS print object will use the CUPS port driver, and the LPD one will use the USB port. Set the CUPS port to use 'localhost' and the CUPS print queue name. Set Device URI (in CUPS) for lpd://127.0.0.1/<Printer's name on USB port>. Print to the CUPS printer object. What should happen is the print job is sent to the CUPS port, which relays it to CUPS, which processes the job, then relays it to the LPD server, which then sends it on to the USB print object then on to the printer....

Regards,

Dave McKenna

Paul Smedley

Quote from: David McKenna on 2008.06.30, 03:50:21
Neil,

  I forgot to mention also you will need 2 printer objects for this to work... one for CUPS and one for the LPD server. Both will use the same PScript driver, but the CUPS print object will use the CUPS port driver, and the LPD one will use the USB port. Set the CUPS port to use 'localhost' and the CUPS print queue name. Set Device URI (in CUPS) for lpd://127.0.0.1/<Printer's name on USB port>. Print to the CUPS printer object. What should happen is the print job is sent to the CUPS port, which relays it to CUPS, which processes the job, then relays it to the LPD server, which then sends it on to the USB print object then on to the printer....

FWIW - I've started working on a usb backend so that we can avoid the whole LPD thing.  With any luck, I'll have something to release in the next week or so.....

Blonde Guy

Thanks, Paul and David.

This is the Epson C88+ inkjet printer. I know it has a perfectly good epomni5 driver. But I want it to work through CUPS, because I believe eCups is going to completely replace the IBM printing system at some point. I want this to work.

Anyway, I created a printer object on the machine with LPD server, and pointed a CUPS printer at it, and printed the test page. Although CUPS has support for the Epson C88, I did not see any relevant PPD file for it. I used the epomni5 driver on the printer object.

I also tried printing from normal apps, using my eCups pdr and while that printed pages, they were not good. The printed part of the page was about 1/8 normal size. I searched linuxprinting.com and places like that and found no PPD file.

What David said about importing data was good, although I'm thinking that InstPDR would be a possibility, too. Can you recommend a PPD file to use in this case?

Neil
Expert Consulting for OS/2 and eComStation

Paul Smedley

Quote from: Blonde Guy on 2008.06.30, 06:55:24
Thanks, Paul and David.

This is the Epson C88+ inkjet printer. I know it has a perfectly good epomni5 driver. But I want it to work through CUPS, because I believe eCups is going to completely replace the IBM printing system at some point. I want this to work.

Anyway, I created a printer object on the machine with LPD server, and pointed a CUPS printer at it, and printed the test page. Although CUPS has support for the Epson C88, I did not see any relevant PPD file for it. I used the epomni5 driver on the printer object.

I also tried printing from normal apps, using my eCups pdr and while that printed pages, they were not good. The printed part of the page was about 1/8 normal size. I searched linuxprinting.com and places like that and found no PPD file.

What David said about importing data was good, although I'm thinking that InstPDR would be a possibility, too. Can you recommend a PPD file to use in this case?

How about stp-escp2-c88.5.2.ppd.gz ?

run gzip -d on that to get the .ppd

David McKenna

Neil,

Quote from: Blonde Guy on 2008.06.30, 06:55:24
Although CUPS has support for the Epson C88, I did not see any relevant PPD file for it. I used the epomni5 driver on the printer object.


  What file(s) are in the x:/cups/etc/cups/ppd directory?

Dave McKenna

Blonde Guy

Thanks, David and Paul.

I have rebuilt my postscript driver with the PPD files I found. CUPS processes them, so the PPD files in the x:/cups/etc/cups/ppd directory are not identical to the one in stp-escp2-c88.5.2.ppd.gz. I added the PPD files CUPS had already manipulated.

David's instructions were approximate, but I got the idea and got it to work. So far, there is no improvement in output, but I need to check my installation to see that all the parts are where they should be.

My CUPS and my printer are on two separate computers, so I can say that the networking aspect works.
Expert Consulting for OS/2 and eComStation