We have a Linux system running CUPS (the common UNIX printing system). We want a way to combine 2 print jobs into a dual-sided print job. Details:
* Create 2 virtual printers (say PRINTERFRONT AND PRINTERBACK).
* These printers will not actually print, they will instead save what gets printed to them to files in two directories: "frontjobs" and "backjobs".
* Create a script that loops and watches the "frontjobs" and "backjobs" directories. When there is a file in both the frontjobs and backjobs directories, take the oldest one in each and print them to the dual-sided printer "PRINTERDUAL". The frontjob print job should print to the front side of the page and the backjob print job should print to the back side. It is possible that 2 jobs could come to the virtual printer less than a second apart so make sure that you test that so that the jobs are always combined together in the right order. I imagine that you might combine the jobs using ghostscript but you don't necessarily have to do it that way.
* The printer involved will be a postscript printer but you should design in such a way that it is fairly easy to adapt to any printer. The PRINTERFRONT and PRINTERBACK virtual printers should be set up to emulate a common "real" printer so the most computers come with the proper driver.
If you understand what we are trying to do and want to implement that in a way other than I have described above, that may be OK, please ask me. You will not have access to our server. Instead you must implement and test this on your own Linux system. CUPS is pretty standard so that shouldn't be a problem. We will need any CUPS files you change along with the scripts, instructions on how to set it up, etc, along with links to any other programs you use. If you wish to utilize any non-open source program that does not come with many linux distributions, please ask first.
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
Linux and CUPS