jerakeen.org

by Tom Insam

notes☴

code☷

links☲

photos☵

node

node

created 03 June 2009 in links tagged hosting, javascript and server.

Wow. Batshit V8-based server-side JavaScript environment. Can be used to write web servers, but also just about anything else. Also, has a totally hardcode ‘nothing blocks, ever’ philosophy that means that just about everything happens in closure-based callbacks, letting you write a single-threaded web server that can deal with many incoming connections at once.

http://tinyclouds.org/node

mod_v8 for apache

mod_v8 for apache

created 26 January 2009 in links tagged hosting, javascript, mod_js, mod_v8 and server.

So, mod_js wasn’t insane enough. Now there’s mod_v8, using the new Google JavaScript engine.

https://svn.i-want-a-pony.com/repos/mod_v8/trunk/

Spawning + Django - Eric Florenzano’s Website

Spawning + Django - Eric Florenzano's Website

created 31 July 2008 in links tagged django, python, server and wsgi.

Another python WSGI server that’ll run Django. In the ‘to look at next time I mess with jerakeen.org’ pile.

http://www.eflorenzano.com/blog/post/spawning-django/

Hosting a Django Site with Pure Python - Eric Florenzano’s Website

Hosting a Django Site with Pure Python - Eric Florenzano's Website

created 17 July 2008 in links tagged django, python, server and wsgi.

Exactly what I wanted. A pure-python standalone WSGI server that I can put behind an apache and host my Django jerakeen.org implementation on. Fast, too.

http://www.eflorenzano.com/blog/post/hosting-django-site-...

Who Needs Leopard Server: Calendar Server on Linux

Who Needs Leopard Server: Calendar Server on Linux

created 27 November 2007 in links tagged caldav and server.

Building the MacOS caldav server on linux. Works, too.

http://blogs.ittoolbox.com/emergingtech/macsploitation/ar...

Running a Jabber server under Debian with eJabberd

created 11 October 2007 in blog tagged debian, jabber and server.

I like to run my own jabber server, so that I can be contacted as tom@jerakeen.org. Also, I’m a sucker for punishment. I’ve run serveral different Jabber servers over the last year or so, and yesterday I started toying with ejabberd. It was probably the easiest to set up of any of the servers I’ve tried, and I recommend it.

I’m running Debian etch, and installing the daemon was a matter of:

sudo apt-get install ejabberd

Once installed, edit /etc/ejabberd/ejabberd.cfg. A ‘%’ at the beginning of a line is a comment, and lines finish with a ‘.’ character. This config file is read only once, and the settings are put into the ejabbed server database on startup. Unfortunately, that’s probably already happened, so uncomment the override_acls. directive - this makes the server re-read the ACL settings from this file on next startup.

I’ll assume that you own the ‘example.com’ domain and want the JID ‘user@example.com’. Uncomment the line below ‘%% Admin user’. It wants to be something like

%% Admin user
{acl, admin, {user, "user", "example.com"}}.

Change the line below ‘%% Hostname’ to set the hostname of the server:

%% Hostname
{hosts, ["example.com"]}.

You may want to look through the rest of the settings. But don’t bother, they’re all very boring. Now restart the server, to pick up the new settings:

sudo ejabberdctl restart

ejabberdctl can also register your admin / jabber user if you’ve turned off anonymous registration:

sudo ejabberdctl register user example.com <password>

Right, you’re done. Assuming that the DNS A record for example.com resolves to the machine you’ve been playing with (it doesn’t have to, see below), you now have a Jabber server with an admin user. You can visit http://example.com:5280/ to administer your server, but there’s not a huge amount to do there.

DNS SRV records

If the A record for example.com doesn’t resolve to your server you can still run a server for example.com by pointing DNS SRV records to your server. In fact, you should do this anyway, in the same way that your email will arrive if the A record for your domain points to the mail server, but MX records are still a good idea.

Assuming your Jabber server runs on a machine called jabber.example.com, you’ll want the following scary DNS records:

_xmpp-client._tcp 900 IN SRV 5 0 5222 jabber.example.com.
_xmpp-server._tcp 900 IN SRV 5 0 5269 jabber.example.com.
_jabber._tcp      900 IN SRV 5 0 5269 jabber.example.com.

You can check that they’re been set properly using this excellent tool, but it’ll probably take a while for the DNS updates to propagate. If you have the dig command line tool, you can also try

dig -t srv _xmpp-client._tcp.example.com

to ask your local DNS server for one of the SRV records.

Alternatives

You don’t have to use ejabberd. Viable alternatives are:

  • djabberd - lovely if you know Perl and want to extend/hack on a Jabber server. Unfortunately it’s somewhat tricky to configure out of the box, isn’t in Debian, and needs various things checked out from subversion repositories if you want to do esoteric things like preserve your friends roster across daemon restarts or have messages queued when you’re offline.
  • jabberd - I really don’t want to trust an internet server written in C any more. It was the original/first Jabber server, if this makes you approve of it more.
  • Not running your own Jabber server - Very worth considering. Unlike running your own mail server or web server, it’s very hard to change your mind later and have someone else host it. I know of very few 3rd party Jabber hosting providers. Yet. Running your own server is purely a vanity thing, but hosting your own email domain used to be a vanity thing too. However, one company that will host your Jabber server for you is..
  • Google apps for your domain - One of the apps Google provide is a chat (Jabber) server. You can ignore everything else they do and just use the Jabber server part, assuming you have enough DNS access to your domain to point the SRV records to it.

RussellBeattie.com - Server Side JavaScript and the Universal Scripting Language

RussellBeattie.com  - Server Side JavaScript and the Universal Scripting Language

created 08 October 2007 in links tagged javascript and server.

REALLY GETTING ANNOYING NOW

http://www.russellbeattie.com/blog/server-side-javascript...

MySQL AB :: MySQL 5.0 Reference Manual :: 5.2.6 SQL Modes

MySQL AB :: MySQL 5.0 Reference Manual :: 5.2.6 SQL Modes

created 31 July 2007 in links tagged mysql, server, strict and warnings.

MySQL server modes - strict mode, specifically.

http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html

del.icio.us/url/4f0ca933571745672c08c129c7d6e83e

del.icio.us/url/4f0ca933571745672c08c129c7d6e83e

created 26 July 2007 in links tagged javascript and server.

I guess I should delicious this, since I’m playing with it.

http://del.icio.us/url/4f0ca933571745672c08c129c7d6e83e

Meteor

Meteor

created 21 June 2007 in links tagged http, perl, server and streaming.

shiny shiny perl web server for long-running data connections. I vaguely remember something at hack day using this. Real-time wireless stats, I think.

http://meteorserver.org/

MaraDNS - a security-aware DNS server

MaraDNS - a security-aware DNS server

created 31 May 2007 in links tagged dns and server.

a small simple DNS server, uses text files as the backing store

http://www.maradns.org/

DjangoID - Trac

DjangoID - Trac

created 08 January 2007 in links tagged django, openid and server.

now I don’t have to write one. Lovely.

http://trac.nicolast.be/djangoid/

phpMyID

phpMyID

created 18 December 2006 in links tagged openid, php and server.

An open id server written in php. Something to port into my django site. via willison.

http://siege.org/projects/phpMyID/

Cosmo

Cosmo

created 12 August 2006 in links tagged caldav, calendar, chandler, server and tomcat.

Cosmo is a CALDAV server, based on tomcat. Something to look at, assuming I ever feel like crushing my colo beneath ther terrifying weight that is tomcat.

http://cosmo.osafoundation.org/

The Latest Trend: Javascript Frameworks on the Server Side - Manageability

The Latest Trend: Javascript Frameworks on the Server Side - Manageability

created 04 August 2006 in links tagged javascript and server.

http://www.manageability.org/blog/stuff/javascript-in-the...

MPD: Music Player Daemon

MPD: Music Player Daemon

created 24 July 2006 in links tagged linux, music and server.

Server-based music-playing daemon. Oh, if only this had existed 5 years ago when I actually had a computer in the lounge with all the music on. Bookmarked now in case I ever do again.

http://musicpd.org/

Ldap daemon in perl

Ldap daemon in perl

created 22 June 2006 in links tagged ldap and server.

Rui’s LDAP server is based off this thing. If I’m eventually to release my own Net::LDAP::Daemon, I’ll need permission..

http://www.xray.mpe.mpg.de/mailing-lists/perl-ldap/2002-0...

The Tao of Mac - Projects/vcard2ldap

The Tao of Mac - Projects/vcard2ldap

created 22 June 2006 in links tagged ldap and server.

Rui developed a vcard-serving LDAP server. I’m currently hacking on a local copy of the code to try to add features to it - he only cared about Address Book.app support - I want a much fuller LDAP server, with write support.

http://the.taoofmac.com/space/Projects/vcard2ldap