[conspire] Printing from Android: really?
Rick Moen
rick at linuxmafia.com
Sun May 12 09:18:15 PDT 2013
A question came up at last night's CABAL meeting: How can one print
from an Android device other than through Google's 'free' [sic] Cloud
Print technique? If you're getting slightly ill imagining how Cloud
Print works, you're not the only one. You have to set up Google's
proprietary Chrome Web browser on a PC, and use it to login to a Google
Account, and have the printer configured on the PC. The print job goes
from your Android device across the Internet to Google, which routes it
back down over http to Chrome on your PC, which then sends it your
printer.
The pathetic thing is, so-called technology journalists like Lincoln
Spector burble happy about this horrific kludge and make no attempt to
find alternatives, because it's 'free':
ANDROID
Answer Line: How to print from Android
Lincoln Spector
@lincolnspector Feb 28, 2013 7:08 AMprint
Ninthchamber asked the Printers forum about printing from an Android
device.
One usually doesn't associate printing with phones or tablets, in large
part because once you have a portable device, you have less need for
paper. But it still occasionally comes in handy.
You can print directly from an Android device with the right Wi-Fi or
Bluetooth printer. However, as I don't like to give advice that involves
spending large sums of money, I'm going to tell you how to do it with
whatever printer you already own. The only expenses will be paper and
ink.
[blah blah blah]
http://www.pcworld.com/article/2027751/answer-line-how-to-print-from-android.html
Yeah, thanks, Lincoln. You're a big help. (By and large, IT
journalists were assigned to that beat solely because they were
touch-typists, I think.)
Man, you take even the most shallow look at most embedded computing, and
it's 1985 again: crappy solutions, proprietary software and secret
sauces everywhere.
The obvious 'No, really, seriously, isn't there a CUPS implementation or
something, or some way of handing off jobs to a nearby instance of
CUPS?' reaction is visible in just a few readily findable Internet
locations, standing out from the general wasteland of inert stupidity.
Here's one:
http://android.stackexchange.com/questions/43774/how-to-print-to-cups-running-on-another-computer-in-the-lan
Q: How to print from Android to CUPS (running on another computer in the
LAN)? (CUPS (Common Unix Printing System/Server) is of course already
set up to accept requests over the LAN.) Preferably, without relying
on proprietary software.
asked Apr 16 at 21:37 imz -- Ivan Zakharyaschev
Initial response:
without the help of other tools: unlikely. With the help of other
tools: check "cups print" on Google Play. I was surprised there
really seem to be any CUPS clients around -- didn't expect that...
Izzy Apr 16 at 21:45
One commenter says you can do a very minimal Debian installation in a
chroot on your Android device and run CUPS inside that, but that --
eek! -- this would require having root access on your Android device,
and surely people don't want to control their own devices.
And then, finally, a more direct answer:
I have recently released an Android app based on (a modified) version
of cups4j (http://www.cups4j.org/). Communication is via http/https.
The main thing I had to/opted to change from the java library was a
dependency on JAXB for XML processing (a. I felt it too heavy and b.
Android does not have this javax lib and importing it apparently
involves repackaging) relying instead on some hard coding.
https://play.google.com/store/apps/details?id=com.jonbanjo.cupsprint
This is a Java client for CUPS's native IPP (Internet Printing Protocol)
method. The author's link to the Google Play store reveals that (not
very surprisingly) Google Play Store is still stuck in the 1985 software
wasteland mentality where nobody either knows or cares about licensing.
Instead, it simply says 'PRICE: free'. Not the author's fault, really.
That's Google, Inc. brain damage.
However, there's a link from there to 'Visit Developer's Website'.
That takes you to:
http://mobd.jonbanjo.com/jfcupsprint/
and
http://mobd.jonbanjo.com/jfcupsprint/licence.php
Looks like pretty usable software. One curio is that author Jon Freeman
appears to have inadvertently made this (technically) proprietary
software through an accident of wording.
JfCupsPrint is free to use and is provided "as is", without warranty
of any kind, express or " implied, including but not limited to the
warranties of merchantability, fitness for a particular purpose, title
and non-infringement. In no event shall the copyright holders or anyone
distributing the software be liable for any damages or other liability,
whether in contract, tort or otherwise, arising from, out of or in
connection with the software or the use or other dealings in the
software.
I wrote Freeman a note, thanking him for his creation, and then politely
suggesting a licence modification:
I have one modest suggestion: In your generous licensing terms on
http://mobd.jonbanjo.com/jfcupsprint/licence.php , I infer that you
intended to grant permissive terms while (wisely) disclaiming warranty.
There is a problem that has resulted in your licence being technically
proprietary (which I figure you didn't intend). Your terms say 'free to
use', but you do not (yet) grant right to redistribute or make and
distribute derivative works.
Under copyright law (UK, US, and other), the rights to distribute and to
make/distribute are reserved to the copyright owner by default operation
of law unless affirmatively granted. That is why standard permissive
licences include wording covering that. E.g., the very permissive
2-clause BSD License says 'Redistribution and use in source and binary
forms, with or without modification, are permitted provided....'
Might I suggest you add in that phrasing or the slightly longer (but
equally well tested) language from the permissive MIT License?
Thank you again, and I apologise for the nuisance of having to deal with
legal matters, but that is the reality of the worldwide copyright regime
we live in.
More information about the conspire
mailing list