I disagree that print-to-pdf should be omitted.  I think print to pdf is important for submitting  work in a portable, &quot;frozen in amber&quot; way.  The printer interface may be on a platform that does not have support for all the file formats of the native XO activities.  Someone may want to print an artifact at a later time when activity file incompatibilities intrude.  <br>
<br><div class="gmail_quote">2009/3/19 Benjamin M. Schwartz <span dir="ltr">&lt;<a href="mailto:bmschwar@fas.harvard.edu">bmschwar@fas.harvard.edu</a>&gt;</span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Vamsi Krishna Davuluri wrote:<br>
&gt; So in a classroom environment, can I assume the classroom server will be<br>
&gt; acting as the server?<br>
<br>
You cannot assume; you have to decide what to require.<br>
<br>
Specifically, there are at least 3 different use cases you may choose to<br>
support:<br>
<br>
1. USB printer connected directly to the Sugar machine.<br>
<br>
2. Networked printer, no server. Sugar prints directly over the network.<br>
<br>
3. All printing passes through a server.<br>
   a. networked printer with restricted access<br>
   b. USB printer connected directly the server<br>
      and also<br>
   1. the server may print every submission immediately<br>
   2. apply automatic quotas, or<br>
   3. require manual approval<br>
<br>
None of these use cases is currently supported.  You will have to figure<br>
out which ones you want to support.<br>
<br>
I agree with Carol that #3 is the one most likely to be useful in large<br>
school deployments.  Conversely, #1 is the one for which OLPC has had the<br>
most requests, from adults who bought XOs during the Give 1 Get 1 program.<br>
<br>
I think you should focus on #3 and ignore #1 and #2.  I say this because<br>
#3 does not require CUPS, or _any_ printing stuff, in Sugar.  You don&#39;t<br>
even need to include the &quot;print to PDF&quot; functionality in Sugar.  All you<br>
need to do is send the file you want to print to the server, over the<br>
network.  The server (running CUPS) can take the file (png for Paint, jpg<br>
for Record, odt for Write) and convert it to postscript for printing.<br>
<br>
I see two main virtues to this approach: it is easy to implement (so it is<br>
likely to work), and it minimizes the amount of software running in Sugar.<br>
 Sugar is tightly constrained in memory and disk space, so it is always<br>
best to achieve your goals with as little code as possible.<br>
<br>
What I am suggesting is a very minimal approach to printing.  For example,<br>
there is no way for users to choose to print a single page from a<br>
document, portrait vs. landscape, DPI, grayscale vs. color, double-sided,<br>
Tray 3 or Tray 4... but that&#39;s OK.  Sugar is designed to be simple to use,<br>
even for users who cannot yet read.  Once we have basic printing of whole<br>
documents, then we can begin to add these kinds of advanced options.<br>
<br>
--Ben<br>
<br>
<br>_______________________________________________<br>
Sugar-devel mailing list<br>
<a href="mailto:Sugar-devel@lists.sugarlabs.org">Sugar-devel@lists.sugarlabs.org</a><br>
<a href="http://lists.sugarlabs.org/listinfo/sugar-devel" target="_blank">http://lists.sugarlabs.org/listinfo/sugar-devel</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>&quot;It is difficult to get a man to understand something, when his salary depends upon his not understanding it.&quot; -- Upton Sinclair<br>