I've also had problems getting the startup script to work. I created an "nzbdrone" user and group using adduser. A home dir was created, permissions were set for that user. I can run mono --debug NzbDrone.exe without issue (actually mono --debug /usr/local/NzbDone/NzbDrone.exe)
I've added the following lines into /etc/rc.conf:
nzbdrone_enable="YES"
nzbdrone_user="nzbdrone"
nzbdrone_group="nzbdrone"
nzbdrone_data_dir="/home/${nzbdrone_user}/.config/NzbDrone" #I realize this isn't being used currently
I've added tofagerl's script into /etc/rc.d/nzbdrone and changed the data dir to the location relevant for me (/usr/local/NzbDone)
When I su - nzbdrone and attempt to run "service nzbdrone start". I get:
"Starting nzbrone.."
cannot create /var/run/nzbdrone.pid: Permission denied
or if that file exists I will get
cannot create /var/log/nzbdrone.log: Permission denied
I've changed the nzbdrone_user and nzbdrone_group to "root" in /etc/rc.conf and everything works...
So I'm not sure what to say, but I cannot run it as another user, nor am I sure why I have to?