As your printer has no network connectivity and is not IPP Everywhere AFAICT, there is twice probability it won’t work that way.
Do you mean IPP Everywhere supports only printers with RJ45 port or a built-in Wifi?
BTW, for people having printers supporting IPP Everywhere, please note that depending on the vendors and models, some printers could be configured by default to accept IPP over HTTPS only, aka ipps://, and rejecting any attempt to connect using a non-secure HTTP, aka ipp://.
Often, you can then, via the printer web admin page, allow the printer to accept also ipp://, not just ipps:// (IPP over HTTPS)
@ilfelice I dunno if your transport already support ipps:// too or only non ipp:// ?
No, IPP Everywhere can support IPP Everywhere over USB, but for that you will also needs that the printer support IPP Everywhere over USB. You need two to tango…
While your Xerox Phaser 3140 don’t support IPP Everywhere. Not over its USB connectivy or whatever other connectivity available (none other it seems). It just doesn’t understand IPP Everywhere.
IPP Everywhere is both the way to communicate (very similar to HTTP) with the printer and to produce print data for it, which make it “driverless” as you, the user, don’t need anymore to have on the computer a driver (or have to install one) that knows how to produce print data in the language the printer understand.
With IPP Everywhere it’s the printer who must understand a common language, defined by IPP Everywhere specifications, produced by the PWG, the Printing Working Group (hence the name for their print date format, PWG-Raster).
Apple, as often, just decided to do its own format, URF (they needed to move on fast to offer requested printing support on iPhone), while still using the IPP Everywhere way to communicate to get printer capabilities and to submit a print job.
So, in your case, the only way to make this printer works from Haiku with IPP Everywhere will be to place it behind an IPP Everywhere server, connected to it via USB:
-
connect it to a Linux machine
-
create a CUPS queue, which will be then served by the local CUPS server over IPP Everywhere (you will have to find the url, most propably it will something like ipp://<ip_address_of_linux_machine>:631/ipp/print/<queue_name>)
-
configure to use a filter script, “Splix”, to convert the print data in PWG-Raster or URF that Haiku with the above IPP Everywhere support will produce into the proprietary SPL format for this printer.
-
on Haiku, enter the ipp:// URL of the queue served by the CUPS print server running on that Linux machine. Or use the search feature to discover it over the network, this time.
While I know it’s possible, I don’t know the detailed way to do the part on Linux myself, so you’ll have to seek help from others here.
Hi @Ostrowski
You have to enter the IP of your printer, which is different from the IP of your PC. I assume the driver did not detect any printer when you added it (like in the window below)?
Is that why you entered the password manually?
As @phoudoin noted, IPP Everywhere works over the network and USB as well (IPP-USB).
Hope this helps!
No support for ipps://. ![]()
Of course you may! You are free to suggest anything. That’s what the call for testers is all about! ![]()
This is what “Automatic” already does, but it is not obvious. I am starting to think that the extra raster type selection UI may not be such a good idea. Like you say, default to PWG if available, fallback to URF if not. Nothing for the user to select or think about.
Good point, and that solidifies my thinking. I think I will simplify the UI.
Thanks for you input! I really appreciate it! ![]()
I don’t use MacOS, so I have no idea. I use an “el cheapo” Epson printer, and the printouts I made looked the same as those from Windows to me. And while I doubt this comparison can be a good benchmark, it is good enough for me. I am just happy that I can print from Haiku!
And if it can help other Haiku users, even better! ![]()
Hello, this is Kevin! Sorry, I missed your comment to my PR on GitHub. I’m not sure why, either I didn’t get a notification or I just overlooked it. I’ll make the change you suggested, then I can do a subsequent change to the recipe.
I do also agree that it’s better to replace PDFWriter at somepoint.
Just to explain for background info, I made the PDFWriter change because I was closing a Trac ticket that said it was improper to have the PDF queue installed by default in Haiku, since Haiku itself can’t print to PDF - it requires the PDFWriter to print PDFs. So it was more proper to have the PDFWriter install that queue.
I had not checked yet - is there a UNIX like printer queue creation on Haiku ?
Unfortunately the Haiku User Guide completely lacking the Printing documentation - even in default English language version.
What do you mean by “printer queue creation” ?
If the question is does Haiku printing has print queuing, the answered is yes.
If the question is about serving these queues over network, then no, the print queues are queing local print jobs, aka jobs made by apps running locally, there is no network printing server in Haiku.
Ah, yes, I ment so partly -
as when you attach the printer via network to the PC, that always network printing.
However I also had not differentiated local and network print queues, I mean both queues receive print jobs …
So for getting a file into, as you mentined a file should be get into a printer, there’s just need a command/script that convert a specific file to a print job.
This way, if you use an appropriate command to read and altogether send that file content of that file, then you can redirect that resulted content in a script that catches such files, and via pipe you can add it to a command that converts it to a printjob, that printjob then redirected to a printer device.
This way you can print out an interim file, that resulted in a printing process.
In Haiku every print job lands in the selected printer queue before the job being handled, by print_server, by a driver + a transport add-on.
So even for printers which are remote, there is a queue, yes.
But contrary to CUPS, there is no notion of a tunable print job processing pipeline, you can’t inject in it a intermediate “filter script”.
That could be a flexibility that would make sense, may the printing kit be redesigned in the future.
I think it’s no problem if there’s PDFWriter and better background software as well altogether.
As I wrote above first need a document about printing in Haiku.
To setup a PDF file printer it was easy for me when I did this TC0 test install, as I have experiencies, but I need rather the administering part, is there a way to setup printing in commandline or we can use only the GUI for setup, and so on …
And of course it worked for me easily as I already installed earlier software packages before I had made the setup of the PDF file printer setup.
A print queue is:
- a folder under /boot/home/config/settings/printers
- with attributes saying which print driver and which transport add-ons to use
- plus extra attributes, depending on the requirements of these add-ons. Notably, you will find often a transport_address attribute
So, from command lines, these tools should be already far enough to create/modify a print queue
- mkdir
- listattr
- catattr
- addattr
- rmattr
Yes, I did it manually, because the list of available printers was empty.
If the driver did not detect any printer, at that point it is telling you that your printer is not supported. ![]()
Nevertheless, this gives me a hint at improving the UI. The user should not be able to add a printer if non is detected. Thank you! ![]()
Hum, please consider that a network printer could be located in another IP subnet, and in such case it can’t be discovered via mDNS. I know, not the casual use case of many end users of Haiku, but anyway.
Maybe, instead, keep allowing user to enter manually an IPP URL, but check you get an response from that address (a quick IPP Identify-Printer request, for instance, IPP Everywhere printers needs to support this as its part of compliance - will blink a led or the display screen, for some a sound also), otherwise warm him it doesn’t seems to be a recheable IPP printer?
- How to recognize if a printer does support IPP Everywhere?
- Is there a list of Gutenprint supported USB printers?
- Printers marketed as “works with Apple AirPrint”, or having Mopria certification, or showing the PWG logo, which is rare because vendors likes more trademarked marketing…
There is a list of IPP Everywhere printers on the PWG website, but I don’t how up-to-date this list is.
If you have such a printer you can discover it with mDNS, it will advertise itself as compatible
