Architecture astronauts take over
Architecture astronauts take over
Posted May 23, 2012 13:31 UTC (Wed) by alexl (subscriber, #19068)In reply to: Architecture astronauts take over by nye
Parent article: Announcing printerd
"Architecture astronauts take over"
"going to be great since they use dbus and gobject"
"the needs of architecture takes over the needs of users"
It might not be all that easy to understand what printerd is for from the announcement, but that doesn't mean you should jump to the wrong conclusions and flame the people doing the work about those.
Tim has been working on Linux printing for the last decade. To claim that he has no knowledge about the needs of users, or that he just does this so he can use dbus or gobject is ridiculous. He is one of the few people who actually work to make printing work in Linux, and what does he get for it? Flames by people who do not even understand the problem (although the lack of understanding is partly the fault of the announcement).
Posted May 23, 2012 14:49 UTC (Wed)
by spaetz (guest, #32870)
[Link] (5 responses)
Posted May 23, 2012 15:01 UTC (Wed)
by alexl (subscriber, #19068)
[Link] (4 responses)
printerd is more like a session print spooler. It lets you enumerate printers, submit jobs to them, etc. If the printer was a network (ipp) printer that supports pdf, or a cloud service like Google Cloud Print then everything will run without any instance of CUPS.
However, if you're printing to a local printer, or a printer attached to a print server (on linux) then printerd will hand the pdf over to CUPS, running locally or on the server.
Tim has a nicer explanation in an earlier blog entry:
Posted May 23, 2012 16:56 UTC (Wed)
by cmccabe (guest, #60281)
[Link] (3 responses)
CUPS already has support for being a print spooler. It already allows you to "enumerate printers, submit jobs to them, etc." What is printerd going to provide that CUPS does not?
Please keep in mind that another layer of software is another layer of bugs that we will all have to debug. Even the best programmers sometimes make mistakes. If there's no value add from the additional abstraction, then I would prefer to keep things simple.
I would love to see something take over from cups, but only if it provides the same features that cups provides. I'm not really interested in running the printer daemon version of "duelling banjos."
Posted May 23, 2012 18:42 UTC (Wed)
by alexl (subscriber, #19068)
[Link] (2 responses)
However, if you're not using a local printer, but rather some network printer or cloud service then having to have a local system-wide print spooler is completely unnecessary, and printd would just forward the job to the spooler on the remote server, working completely in the user session.
Running in the session has some advantages besides just needing less code. It also allows the spooler to do things like authenticate to the cloud service in a normal way, as its part of the user desktop session, rather than some system service.
Anyway, Tim knows this stuff better, and he posted a new blog entry: http://cyberelk.net/tim/2012/05/23/some-benefits-of-print...
Posted May 23, 2012 22:41 UTC (Wed)
by cmccabe (guest, #60281)
[Link]
My printer is a USB printer. It requires a printer driver to work. A driver which, incidentally has not been updated or fixed in years, and is not officially supported by the distro. Luckily I know enough about the plumbing to know how I can get this thing to work. (Should "work" be in quotes?)
At work, there is an IPP printer which I mostly use. The time I spent setting it up in CUPS was about 5 minutes, including printing test pages and all that.
> Running in the session has some advantages besides just needing less code.
Again, I just don't care. I've never used a multi-seat Linux machine (and I've had 5 jobs where I used Linux, including one where we used it in the cloud.) I also don't see what fundamentally prevents CUPS from doing the same thing-- i.e., accepting or rejecting jobs based on the user id that submitted them.
So far, printerd has not proposed to solve any of the problems I have ever had. Of course, I'm just one user-- perhaps others will have different needs.
Posted May 23, 2012 23:02 UTC (Wed)
by jjs (guest, #10315)
[Link]
So other than adding another layer between the application and CUPS, what does printerd do?
Architecture astronauts take over
Architecture astronauts take over
http://cyberelk.net/tim/2012/03/08/session-printing/
Architecture astronauts take over
Architecture astronauts take over
For the case of a local printer printerd would just call out to the local cups daemon just like currently, and printerd would be nothing more than a frontend for cups with an API that is nicer for async code (ever tried to write async code using libcups?).
Architecture astronauts take over
> It also allows the spooler to do things like authenticate to the cloud
> service in a normal way, as its part of the user desktop session, rather
> than some system service.
Architecture astronauts take over