MacOS – Running Growl without a user logged into a graphical session

growllaunchdmacososx-server

I currently have an OS X server (running 10.8.2) that has irssi installed, and is set up to send Growl notifications to my laptop when I am mentioned or have received a private message on IRC. However, Growl only appears to have options to start when a graphical login is done: trying to run it in a terminal over SSH gives:

$ /Applications/Growl.app/Contents/MacOS/Growl 
_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL.

Running it as a launchd daemon also doesn't seem to work, as I can't use growlnotify to create a notification.

It runs normally when started as a login item or via the Finder, but this is unideal for a server machine, where I only want to login via SSH.

Best Answer

I would really suggest doing this programmatically Diggory suggests, though I haven't used Growl on OSX for distributed messaging (I use it on a NAS running Linux with great results.)

Though, if that is ultimately unusable, have you tried logging into the computer and leaving your account logged in but deactivated using Fast User Switching?

ML (I think it was ML anyways) added the ability to allow multiple users simultaneous graphical sessions per computer, which might be appropriate for this, though honestly it's probably less strain on the system to do it programmatically.