Wednesday, January 5, 2011

Running Diaspora, without ./script/server on Ubuntu

I wanted to free my terminal from the plethora of Diaspora* foreground daemons... I also wanted to make sure that these alpha daemons could be restarted, once they inevitably crashed. I tried using an older version of an Ubuntu init script.

The original version followed older init practices, and avoided upstart altogether. This allowed me to skip script/server, but didn't restart services. As such, I decided to yank the core team's daemontools implementation. Core functionality was there, using this approach, but websocket didn't quite work (no pushes to clients) and I noticed numerous complaints, running ps axuw|grep readproc. No amount of fiddling yielded usable/stable results...

Finally, I decided to change my service names, prefixing each name with a number, similar to init and then instituting requirements. It is redundant, but the numbering was a convenient mnemonic ... The order of execution mimics the order script/server.

Install instructions, a version of my work, and a handy script for controlling daemontools services can be found at github.

I completed work on this and two days later (one day later?) leamas completed a wholesale rewrite of the Ubuntu package installer. It seems to have tighter integration with Ubuntu's edicts and expectations...


2 comments:

  1. Is there any prospect of running Diaspora on an ARM server? I'd like to give it a go, but it looks like MongoDB doesn't run on ARM.

    ReplyDelete
  2. You should be in luck, shortly. They're moving from NoSQL to SQL. The work can has been isolated to the mysql branch, which I understand is rspec green. Others are actively working on postgres and I'm sure eventually it'll make its way to sqlite3 as well...

    ARM server you say? Running this on an embedded NAS or something similar?

    ReplyDelete