Hi all, While not a primary concern of the project, printing is something that teachers are asking for. OSL & HP are exploring how all the pieces will fit together. Much of this was discussed in a recent call with Walter Bender, Jim Gettys, Jim Rowson (HP), North Krimsly (OSL), Carlos Jensen (OSU Engineering), and myself. I'm bringing this to the mail list so other people can give input.
There were a lot of details discussed so in an effort to be concise this will be more of an outline. There are many pieces to this problem, this description is in no way considered complete. I'm just getting the conversation going. ==== Overview ==== * XO will have CUPS (currently installable by yum) and send print jobs to the school server or another linux desktop. * New GUI on the XO will be added to configure and use printers. * Modifications and or additions to CUPS client might be needed to improve performance, reduce footprint, and or achieve desired functionality. * New GUI for security and other configuration options (queueing, authorization, etc) for cups ==== Configuration - XO ==== The number of printers, the models, and their locations will be unknown. It may be 1 printer per school, or many depending on the country or region. Adding or selecting a printer needs to be simple. Autoconfiguration is the best case scenario but some manual configuration is still needed. A GUI is required for all of this. The presence service may be a way to discover printers and configuration information. IE. the advertisement includes the configuration to be added to /etc/cups/printers.conf A printer would really only be configured, once, at the server. Some unanswered questions are: * What does this GUI look like. * Where is it located within sugar. Within the configure activity? ==== Configuration/Moderation - Server ==== Some form of authorization will be needed to make sure kids only print to their own school, class, etc. Cups already allows for access per user and XOs can be identified by their keys. The printer configuration tool in the current version of Ubuntu has this feature already. Printing supplies are not cheap and may be the biggest obstacle. There is concern that kids will print large jobs and use supplies up quickly. There should be some form of moderation to prevent waste and misuse. Authorization queues and or quotas were suggested. Some of these features exist in CUPS but there is no GUI to expose them. Some possible features for moderation: * configurable quotas. IE. 2 pages per day. 20 pages per month. etc. * override for quota * Authorization queues. Rulesets to determine which jobs requires teacher authorization before printing * previewing jobs in queue * identification of duplicate jobs ==== Activities ==== The first activities that this is a priority for are write and browse but development can be in parallel. These activities are some with the most compelling need for printing. They also are low hanging fruit since both mozilla and abiword already have printing capabilities. Files sent to cups must be postscript or PDF. What is shown on the screen must be translated to one of these formats. Cairo has an API for creating PDFs. ==== Performance Issues ==== We are under the impression that cups includes drivers and or other information for a lot of printers. This creates a large footprint on disk and or in memory. If this is the case then cups should be modified to allow better control of resources that cups uses. ==== Hardware ==== We did not touch on the questions involving printer hardware very much. We were focusing on the software side of things. The consensus from the earlier OSL/HP meetings was that a low cost, rugged, printer that can use cheap ink would be a great thing. Hardware is not something the OSL has expertise in creating but perhaps HP labs or OLPC could handle it. ==== Testing CUPS ==== I verified that cups was installable and works on the XO over a traditional wireless network with the following steps (1-3 require root) 1) yum install cups.i386 2) configure your printer in /etc/cups/printers.conf 3) /etc/init.d/cups restart 4) lpr -P fooprinter foodoc.ps - Peter ------------------- Peter Krenesky Open Source Lab Oregon State University _______________________________________________ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel