Aug 24

Lately, I have developed a liking for the Alpine Messaging System. It is a text based email client that runs on a variety of platforms. I use it with Gmail IMAP at home and MS Exchange at work. In both cases, it works beautifully.

Pre-compiled binaries for a good number of platforms are available on the apline website. But if you are not in a position to use the pre-compiled binaries - say because you do not have root privileges, or binary is not available for your platform, or may be you just
want to use the bleeding edge development code - you can build the alpine application from source. The following steps are specific to building the latest SVN snapshot on Ubuntu Hardy Heron. It may/may not work on other OSes.

Prepare your system

Get all the (known) prerequisites. From my experience, these are required:

  • libncurses5-dev to get rid of the following error:

configure: error: Terminfo/termcap not found

  • libpam0g-dev and libssl-dev to get rid of some SSL related errors.

To get the above use the following in terminal:

  % sudo apt-get install subversion libncurses5-dev \
                         libpam0g-dev libssl-dev

Get the source code

Get the latest source snapshot. Following few steps are one time. After the initial snapshot is acquired with svn checkout, svn update can be used to update the source snapshot:

  % mkdir ..../alpine
  % cd ..../alpine
  % svn checkout \
        https://svn.cac.washington.edu/public/alpine/snapshots/

Accept the certificate (permanently) if required.

Configure, compile and install

Now use the familiar configure, make, make install routine to build and install Alpine.

  % cd .../alpine/snapshots
  % svn update
  % ./configure --prefix=/opt/apps/alpine
                --with-local-password-cache-method
  % make
  % sudo make install

I was overly optimistic in using --with-local-password-cache-method. I was hoping that Alpine would store my account passwords in Gnome Keyring! It did not work quite like that. I need to enter my email passwords every time I start Alpine.

Other way to automate password entry is to use the --with-passfile configure option. But it is known to be unsafe.

Happy messaging!

EDIT: Trying to recompile alpine on Intrepid, I discovered that libssl-dev is also required.

Aug 23

I have been using Tomboy Notes on my Linux machines for more than a couple of years now. Needless to say, I often wished that notes on the other computer were also accessible to be on the one I am working on, at that moment. I was aware that it has a Synchronization option - using WebDAV. But, a few times I tried it, I was not successful at getting that to work.

Few days back, I had some success using non-Mozilla server with Weave. In the process, I got a WebDAV account at mydisk.se. Now that I had a WebDAV account, I thought I’d give Tomboy Synchronization another shot.

I built Tomboy from the latest svn source. This was easy, thanks to very clear instructions on the Tomboy Wiki.

  % cd /my/source/directory
  % svn co http://svn.gnome.org/svn/tomboy/trunk tomboy
  % cd tomboy
  % ./autogen.sh --prefix=/opt/apps/tomboy \
                 --disable-scrollkeeper
  % make
  % make install

On the first synchronization attempt, I got an error indicating that fuse/wdfs was not installed. To fulfill this dependency, I did the following:

  % cd /my/source/directory
  % wget http://noedler.de/projekte/wdfs/wdfs-1.4.2.tar.gz
  % tar xzvf wdfs-1.4.2.tar.gz
  % cd wdfs-1.4.2
  % ./configure
  % make
  % sudo make install

To get wdfs installed, I had to install the glib2.0 development modules:

  % sudo apt-get install libgtk2.0-dev

With this, I was all set for the first sync. However, due to a bug, that was not quite possible. But since I had the source, and bug report has the fix, I tried it out. I built Tomboy again, with the suggested fix. It worked! I have that build available in the downloads section for trying out.

A little work, and now my Linux machines have access to all my notes and stickies! I haven’t found a Mac app that has WebDAV synchronization of notes. If there is one, I’d love to try it out. The stickies utility in Mac OS X could really use some synchronization feature - not via .me.

I use Google Notebook a lot too. So some of the Ideas for new plugins sound interesting!

Aug 11

If you use Weave, you’ve probably noticed that Mozilla servers are currently overloaded. Accounts are not working. My account authenticates (If I access

https://services.mozilla.com/user/<user_name>/

it asks for and accepts my credentials), but I get a “Not Found” 404 error. The accounts that do work, are very slow.

Like always, I went forumming, trying to get to the bottom of this trouble. I came across some helpful posts at the Weave forums. Posts from covidium and netoak are especially useful. This post is just a compilation of steps I followed to get my Weave working again.

Get a WebDAV host
I guess there are only a handful of these, that are free. I tried to find one in the US, but couldn’t. I just used the one that covidium suggested. I opened a free account at myDisk.se.

Create directory structure
Weave expects the files to be in a specific directory structure. If you have myserver.com as your server, it will look for

myserver.com/user/user_name

To cater to this, I created a directory called user, then inside it, I created one called user_name.

In retrospect, I should have instead made

weave/user/user_name

directory structure. That would keep everything Weave together.

Set Weave’s Server Settings
Open Weave’s Server Settings (Tools -> Weave -> Preferences…) and then go to the Advanced tab. Replace the default Server Location with

https://mydisk.se/user_name/

mydisk makes my files available at https://mydisk.se/user_name/, other hosts may use some other path.

If I had used

weave/user/user_name

directory structure, I would set the Server Location to

https://mydisk.se/user_name/weave/

Try Weave again
In Weave preferences’ Advanced tab, click on the Advanced… button. Click on Reset Login and Reset Server Lock buttons. I did not think it would be required, but I had to quit Firefox and restart it.

Now, sign in to Weave again (Tools -> Weave -> Sign In). Follow the setup wizard as if you are opening a new account. Use username and password from your WebDAV server. Pick a strong passphrase.

At this point, you should be all set.

Do leave feedback to point out errors in the above process, so other readers can benefit too.

My current web host does not provide WebDAV. From what I read, DreamHost does. I wonder if Weave users who have DreamHost accounts already host their own Weave servers.