open source terminal and scanning
Brian K. White
brian at aljex.com
Mon Oct 25 14:54:56 PDT 2010
Aha!
Looks like this might be the answer to unencumber the twain stuff in the
hacked PuTTY package.
http://www.gnome.sk/Twain/jtp.html
I can include that right in and never have to worry about it again
instead of having to exclude the DTwain/TwainSave dll and the .h file
that includes it's unlock key. And I can ship a Makefile or code::blocks
project, and NSIS installer generator script, that actually work out of
the box because all necessary parts are actually included.
Bonus it supports both TWAIN and SANE so at some point the terminal
emulator can be made to work on both windows and linux. The other stuff
I use the exec() feature for are 99% just to launch urls, which can
certainly be done more directly and safely on linux than by exec().
And for those things we currently use exec() for that aren't urls, maybe
even exec() isn't so bad even on linux if you just limit it's $PATH to a
special dir, or add a config option that lists allowed exec() commands
explicitly, or add a tiny metalanguage for defining custom OSC commands
instead of building them into the app...
Also I put the source into a gitweb but I haven't really figured out git
or gitweb. I managed to create a git repo out of the source archive, and
get it publicly browseable via gitweb, then managed to get the url to be
nicer via vhost setup on the host machine, but in the process broke the
ability of gitweb to execute gzip, so the download snapshot button
doesn't work (you get a zero byte tar.gz and error_log on the host shows
permission denied executing /bin/gzip)
So at the moment, the source is browseable at http://git.aljex.com
but downloadable at http://install.aljex.com/AljexClient
While I'm still futzing around trying to learn git, the nice url may
break momentarily once in a while.
Also, since I would wish this to become a more community effort I am
thinking of changing the name from Aljex to something generic like open
vertical terminal or similar. The idea is, the app is meant for use in a
vertical/integrated and/or even turnkey or kiosk context, which is why
it's not just PuTTY or any of several other already open terminals
because vars have special needs to provide a more seamless and
effortless experience for the user, so it has to include things no
existing upstream project will want in their main trunks. And, you want
a name that lends itself to a filename extension that isn't going to
collide with anything else so you can register the extension for
autolaunching in the installer.
I currently use .at for this, and an at:// url for Aljex Term, (because
"Aljex Saved Session" is right out! ;) and an as:// url for AljexScan. (
I was also going to use tsu:// for scanning, Twain Scan & Upload, and my
cgi for receiving and displaying scans is named that ) . but .vts, .vtc,
.vtf, .vt<something>, .ovt, etc are all good options.
I'll also set up a mediawiki so that documentation can grow.
If anyone knows anything about git and wants to help make this work and
have commit access to improve the code let me know.
I have to get a de-aljex-ified version of the scanning cgi up there too
because it's kinf of hard to say "hey we have free scanning, it works
great, really" if all the parts to do it are not there to see and copy.
--
bkw
More information about the Filepro-list
mailing list