I have a Xerox WorkCentre 7845 which I configured on my CUPS server (v1.7.5 on Debian 8) using the Generic PPD (file "WC78XX_5.371.0.0_PPD_fr-FR.exe") version 5.371.0.0 and IPP protocol.
CUPS server is able to print it's test pages.
Linux workstations can add the printer shared by CUPS (using IPP too: ipp://print-server.example.com:631/printers/WC7845) and print their documents (no specific driver needed)
Windows (7) workstations have the Global Print Driver PostScript v5.433.6.0 driver (needed by Windows) and they can add the printer shared by CUPS (using IPP too: http://print-server.example.com:631/printers/WC7845) and print their documents.
But on Windows, the Global Print Driver configuration profile set by default is the "Standard" (in my locale -french- it's "Mode d'impression standard") which only offer basic stuff: no stapling, punch hole nor booklet (the profile can be found in "Administration" tab of printer's properties).
If I want to be able to do booklets I have to change the configuration profile to "Xerox WorkCentre 7845" and to specify the installed finishers (Office LX, punch hole, etc.) in the "Configuration" tab of printer's properties. Once this is done, the printing preferences (the one available when printing a document) offers me to do booklets and other "special" stuff.
But in that setup (when configuration profile is set to "Xerox WorkCentre 7845"), jobs are not printed: the printer LCD screen lists them but they stays there and aren't printed (waited multiples minutes.
On the CUPS server I have tried to change the protocol from IPP (port 631) to socket (port 9100) and to LPD (port 515): same issue in each case.
The only working setup I have found (for now) is to configure the printer as "RAW" in CUPS (tested using both LPD and IPP protocol), it then does not uses the Xerox PPD and sends print jobs to printer as is (as received from workstation's drivers).
But, on the other hand, it makes Linux workstations need a print driver too (when CUPS had the PPD, it wasn't needed).
Among the configuration profiles the GPD drivers offer, there is a "Xerox WorkCentre Device" (in my locale -french- it's "Périphérique Xerox WorkCentre") which offers the stapling option but don't offer booklet (cannot tell the driver I have a finisher on that printer).
I also tried to use PCL6 v5.433.6.0 drivers: it's worse. It works with the "Standard" profile, but when using the "Xerox WorkCentre 7845" the printer prints gibberish XML text with "@PJL JOB", "@PJL XCPT":
-123456X@PJL JOB @PJL XCPT <?xml version="1.0" encoding="UTF-8"?> @PJL XCPT <!DOCTYPE xpif SYSTEM "xpif-v02082.dtd"> @PJL XCPT <xpif version="1.0" cpss-version="2.07" xml:lang="en-US"> @PJL XCPT <job-template-attributes> [...] @PJL COMMENT DCPVer: DSPY 5.433.6.1 @PJL XCPT ENTER LANGUAGE=PCLXL ) HP-PCL XL;3.0;Comment Copyright © 2000-2015 Xerox Corporation. All Rights Reserved. jX
My question is:
Is there a way to make Windows Global Print Driver able to talk to a CUPS server that uses the PPD made by Xerox for that WorkCenter 7845?
Side note: I have also tried to set up a CUPS+Samba system but Xerox GPD drivers does not handle the Point'n'Print system nor the printing to a Samba port, the drivers crashes with "xerox printer driver an unexpected error occurred in the print driver 040:000:0252 074:000:0061" errors when accessing printing options.
How about if you install the GPD locally on a PC, make sure it is configured with all the right options, then extract the configured PPD out of the C:\Windows\System32\spool\drivers\w32x86\3 location and install it into CUPS on the Linux box? That should give you full cross compatability as there would be no version discrepency.
As to your question, I would think "no" as the GPD has its own ppd, and when you connect to the CUPS server, Windows should then be pulling the PPD that is provided by the server, not the one you have locally.
The PPD file located at "C:\Windows\System32\spool\drivers" ("x2UNIV.ppd") on the Windows workstation is the always same no matter what option I set (Finisher installed, punch hole, etc.). And it is very different from the "Generic PPD" I downloaded for the 7845.
I tried to give the "x2UNIV.ppd" to the CUPS server, it accepted it and I could specify the installed options via the web GUI.
Linux clients can still print correctly (without the need of a driver nor PPD).
But Windows clients (with the "7845" profile) still have issues: a simple two-line .txt file prints 16 pages of "@PJL XCPT" code.
Sorry, I just consulted the "Linux Guru" we have here.
I got this back:
Linux cups has an issue trying to determine lpd or ipp protocols. RAW is the only one that really works. Even then he is only going to get striaght printing. Unless you want to build him a driver cause thats all that can be done
Long story short, you are out of luck unless you can roll your own driver. Last time I did that I used the Generic WinXP ppd and built it to the specific device and hardware configuration. And it took hours since it was all trial and error.
Actually RAW mode and network protocol (IPP, LPD, AppSocket/JetDirect) are two separate things.
The possible combinations are RAW+IPP, RAW+LPD, RAW+AppSocket, GenericPPD+IPP, GenericPPD+LPD and GenericPPD+AppSocket.
According to this post ("Printing remotely via CUPS isn't working - Prints @PJS Information") on UbuntuForums, when I get the "-12345X@PJL JOB" code, it is because CUPS tries to process the received data whereas it as already be processed by the Windows driver (thus the visible PJL code and the fact that it works when configuring the printer queue as RAW).
What I don't understand is why it works with "Standard" profile but does not with "Xerox WorkCentre 7845": the Windows driver changes his way of working (sends unprocessed when on "Standard" and sends processed when on "Xerox WorkCentre 7845")?!
>>Linux cups has an issue trying to determine lpd or ipp protocols. RAW is the only one that really works. Even then he is only going to get striaght >> printing. Unless you want to build him a driver cause thats all that can be done
I have never got the RAW printing working with the Xerox printer drivers for windows, ( in 5 year periode )
Must crapy drivers you can have for a "point and print" with cups and samba.
I have tried this with samba 3.6 4.0 4.1 4.2 all not working you get and error while your uploading the driver.
tried GPD multiple version etc.
Sharp/HP/Kyocery/Toshiba all work fine.
Why is this, due to going out or the "standards" scope.. !