Monday, September 11, 2006

Emacspeak 24 On Ubuntu 6

I upgraded my home FC3 machine to Ubuntu 6.0.6 (Dapper) over the weekend. Here is a short summary for things to watch out for as an emacspeak user.

The Good, The Bad, And The Painful

Good
One of my friends helped with the install and it is remarkably quick when everything works (in my case the Ubuntu LTS 6.0.6 installer had trouble with the NVidea display card and came up correctly at the third attempt).
Bad
A one CD install is nice -- but after it you have remarkably little installed from the perspective of an emacspeak user. You end up with a very nice GUI but very little else --- the reasoning being that the average user wont need much more, and the savvy user can always run apt-get.
Bad
Worse, Ubuntu does not install openssh-server --- it limits itself to installing openssh-client. This means that you cannot bootstrap yourself by logging in from another machine until you install openssh-server off the network. If there was one thing I would ask the Ubuntu maintainers, it would be to rectify this situation.
Painful
In my case, the apt suite of tools appeared to have a problem --- they died saying /var/lib/dpkg/available: no such file or directory. Googling showed this to be a known problem with apt and the fix is to run dselect update -- but if you're new to Debian/ubuntu, this is less than obvious.
Good
Once you overcome the above, apt-get got me emacspeak-17.0 which was sufficient to let me bootstrap the rest of the process on my own using my trusted Dectalk Express to produce speech.
Painful
Note that you should install tcl8.3 and tclx8.3 --- rather than the newest (8.4) versions of these packages. This is because as of 8.4, the maintainers of those packages no longer build a stand-alone tcl (extended TCL) shell. This is something that will have to be handled by Emacspeak in the future.
Good
I was able to get everything I needed (and more) installed using a combination of apt-get and aptitude.
Bad
The IBM TTS engine no longer works --- under FC3 and friends, you needed to install package libstdc++-compat to get it to work. Well, there is no corresponding package for Ubuntu/Debian from what I could find out, and pulling in the RPM for libstdc++-compat, converting it via alien and installing the result produces a segfault when you run the TTS engine.
Bad
For the same reason, the old command-line trplayer will also not work on Ubuntu 6.0. This is not as painful --- since mplayer works --- though I had to build mplayer from source. It would be nice to create a command-line player on top of the HelixPlayer code base. At present, the missing trplayer means that the etc/rivo.pl provided by emacspeak no longer works. You can use mplayer to convert realaudio to mp3; however mplayerdoes not have a command-line option to specify the duration of playback, something that script etc/rivo.pl needs.