Kamal Fariz Mahyuddin on Ruby on Rails, Ember.js and other web development geekery.

You should follow me on twitter here.

Installing CouchDB 0.9.0 Ubuntu Karmic Package on Jaunty

  1. Add Karmic into /etc/apt/sources.list.

    deb-src karmic main restricted universe multiverse
  2. Run apt-get update.

    $ sudo apt-get update
  3. Because Karmic is so bleeding edge, the 0.9.0 package has been superseeded by 0.10 snapshots. You can locate the binary builds for 0.9.0-2ubuntu5 at

  4. Download the package.

    $ wget
  5. 0.9.0 requires libicu40. Jaunty only ships with licicu38. So we need to build and install libicu40 from Karmic’s source.

    $ sudo apt-get build-dep libicu40
    $ sudo apt-get -b source libicu40
    $ sudo dpkg -i libicu40_4.0.1-2_i386.deb
  6. Karmic’s couchdb package requires Erlang R13B1. Jaunty ships with R12B5.

    $ sudo apt-get build-dep erlang-base-hipe=1:13.b.1-dfsg-2
    $ sudo apt-get -b source erlang-base-hipe=1:13.b.1-dfsg-2
    $ sudo dpkg -i erlang-base-hipe_13.b.1-dfsg-2_i386.deb erlang-crypto_13.b.1-dfsg-2_i386.deb erlang-mnesia_13.b.1-dfsg-2_i386.deb erlang-public-key_13.b.1-dfsg-2_i386.deb erlang-runtime-tools_13.b.1-dfsg-2_i386.deb erlang-ssl_13.b.1-dfsg-2_i386.deb erlang-inets_13.b.1-dfsg-2_i386.deb erlang-xmerl_13.b.1-dfsg-2_i386.deb
  7. Install the last few extra packages needed. Thankfully, Jaunty has them at the required versions.

    $ sudo apt-get install dictionaries-common hunspell-en-us libhunspell-1.2-0 libjs-jquery libnspr4-0d libnss3-1d libpython2.6 libstartup-notification0 xulrunner-1.9
  8. Finally, install the couchdb package.

    $ sudo dpkg -i couchdb_0.9.0-2ubuntu5_i386.deb
Fork me on GitHub