I would really like to see nzbdrone be ported to FreeBSD if possible. I have a Freenas server that I currently use Sickbeard on, but would prefer nzbdrone. Really it just needs to be available for FreeBSD, because then a plugin could be made for Freenas. I imagine there are many others that would benefit from the port also. Thanks for developing a great alternative to Sickbeard.
As long as you can install mono 2.10+ and have a reasonable recent version of sqlite you should be able to run it. You can grab the Windows version to test it out.
What package tool is available on FreeBSD/FreeNAS? I found pkgng, but not sure its the most common.
Added to Trello, but need to know what package manager should be support and where it can be hosted, preferably somewhere it can be uploaded as each build is built. https://trello.com/c/xxxi8iFJ/469-freebsd-package
pkgng would be fine to use. I am not too well versed in FreeBSD, but I would think freshports.org would be a good place to have it hosted.
Edit: I am going to try and setup a basic Freenas Jail and try to get it working, any information you can give me on the configuration or software needed besides mono and sqlite would be greatly appreciated. Thanks.
I have tried running NZBDrone in a Freenas jail and this is the error I receive when running mono NzbDrone.exe
Its because you are running NzbDrone.exe
Try NzbDrone.console.exe
@kayone said:
Its because you are running NzbDrone.exeTry NzbDrone.console.exe
Thank you that worked!
I have another question, does NzbDrone have an update feature built in to update to the latest version? If this is correct, what method does the program use to update. I am trying to find the best way to keep it up to date in the jail, without having to overwrite the program files every time. Thanks.
Currently the update feature only works on Windows. Due to how the update mechanism works and how mono runs the binary we haven’t enabled direct automatic updating in favour of using pre-built packages, though on that front we currently only release Debian packages.
@markus101 said:
Currently the update feature only works on Windows. Due to how the update mechanism works and how mono runs the binary we haven’t enabled direct automatic updating in favour of using pre-built packages, though on that front we currently only release Debian packages.
I could be wrong but I believe Sickbeard and/or Couchpotato are able to update by overwriting the old program files with the new version when applying an update. I am wondering if this would be possible with NzbDrone without wiping out the database/settings. Otherwise I may have to look into a script to some how automate the process. I don’t mind hitting the update button when a new update is available (like Sickbeard), but to have to manually download and copy the files every time is a bit cumbersome.
Thats how we do it, the settings aren’t wiped as they aren’t in the data directory (you can see that by looking at System -> About). Drone can’t be running while the update is in progress (otherwise it will fail because the files are in use), on Windows we have an update client that is executed and shuts down the existing version and starts it up again after updating it. The biggest thing is that when running on linux, under mono is the executing application is mono, not NzbDrone.exe (or NzbDrone.Console.exe), originally we planned to utilize the distro’s package manager to handle updates, so we didn’t spend a lot of time working on updates under linux through drone directly. I think the best experience would come with us having native update support on linux (as we have on Windows), through the application directly. Added to Trello for future work: https://trello.com/c/xddICcqN/477-updates-on-linux
In lieu of native support, the easiest way would be to wget the latest zip file, stop the running version, update (unzip, etc), start it up again.
@markus101 said:
Thats how we do it, the settings aren’t wiped as they aren’t in the data directory (you can see that by looking at System → About). Drone can’t be running while the update is in progress (otherwise it will fail because the files are in use), on Windows we have an update client that is executed and shuts down the existing version and starts it up again after updating it. The biggest thing is that when running on linux, under mono is the executing application is mono, not NzbDrone.exe (or NzbDrone.Console.exe), originally we planned to utilize the distro’s package manager to handle updates, so we didn’t spend a lot of time working on updates under linux through drone directly. I think the best experience would come with us having native update support on linux (as we have on Windows), through the application directly. Added to Trello for future work: https://trello.com/c/xddICcqN/477-updates-on-linuxIn lieu of native support, the easiest way would be to wget the latest zip file, stop the running version, update (unzip, etc), start it up again.
Yeah it would be nice to have this implemented I hope to see it in the not so distant future. For now updating manually will work, I appreciate your help. There are still other hurdles with running NzbDrone on Freenas, but at least I know its possible to get it running. I know in the future if/when a port is added this, will become easier.
Could you elaborate on the hurdles? Beyond installing mono/sqlite (if its not already there) it should be a matter of unzipping and running.
@markus101 said:
Could you elaborate on the hurdles? Beyond installing mono/sqlite (if its not already there) it should be a matter of unzipping and running.
Well the proper way would be using a Freenas plugin so that all that is needed is installing the plugin and the application and all dependencies are set. Currently I have to create a script to start/stop the plugin on reboot, manually install the dependencies, copy the needed program files over and set proper permissions. Also the issue is I have to use tmux in order to have the console stay running the background.
I mean for me, once i set everything up then its just a matter of keeping NzbDrone up to date. But for the community to take advantage of NzbDrone on Freenas a plugin would be much more suitable.
@raidflex said:
@markus101 said:
Could you elaborate on the hurdles? Beyond installing mono/sqlite (if its not already there) it should be a matter of unzipping and running.Well the proper way would be using a Freenas plugin so that all that is needed is installing the plugin and the application and all dependencies are set. Currently I have to create a script to start/stop the plugin on reboot, manually install the dependencies, copy the needed program files over and set proper permissions. Also the issue is I have to use tmux in order to have the console stay running the background.
I mean for me, once i set everything up then its just a matter of keeping NzbDrone up to date. But for the community to take advantage of NzbDrone on Freenas a plugin would be much more suitable.
That is only the proper way for FreeNAS specifically and making a freenas plugin is typically a responsibility of the community itself as opposed to the developers of the software. The proper way as a whole for FreeBSD is getting it added to ports. It would basically be the FreeBSD equivalent of an apt repository on ubuntu as it will auto pull dependencies and help with updates.
If the devs got it added to ports then for the veteran freenas people it is pretty trivial to make a plugin from that and release it to the rest of the freenas userbase.
@PinkyThePig said:
@raidflex said:
@markus101 said:
Could you elaborate on the hurdles? Beyond installing mono/sqlite (if its not already there) it should be a matter of unzipping and running.Well the proper way would be using a Freenas plugin so that all that is needed is installing the plugin and the application and all dependencies are set. Currently I have to create a script to start/stop the plugin on reboot, manually install the dependencies, copy the needed program files over and set proper permissions. Also the issue is I have to use tmux in order to have the console stay running the background.
I mean for me, once i set everything up then its just a matter of keeping NzbDrone up to date. But for the community to take advantage of NzbDrone on Freenas a plugin would be much more suitable.
That is only the proper way for FreeNAS specifically and making a freenas plugin is typically a responsibility of the community itself as opposed to the developers of the software. The proper way as a whole for FreeBSD is getting it added to ports. It would basically be the FreeBSD equivalent of an apt repository on ubuntu as it will auto pull dependencies and help with updates.
If the devs got it added to ports then for the veteran freenas people it is pretty trivial to make a plugin from that and release it to the rest of the freenas userbase.
Yes exactly, once it is ported it should not be a problem.
I’ll look into getting getting a proper release for FreeBSD
Any updates on FreeBSD/Freenas support?
Unfortunately NZBDRONE does not function properly in a Freenas jail using mono. The program will start and will send files to SAB, but after about 3-4 files it will refuse to search for any more episodes unless I restart the program. The only way I can get it to work is if I do a manual search for each episode and select the quality.
It seems that nzbdrone is having trouble accessing the nzbdrone.txt log file, despite giving full permissions to the file. The problem is I am not sure which user that nzbdrone is accessing that file as.
Below are the two errors that I receive:
[Fatal] GlobalExceptionHandlers: EPIC FAIL: MediaInfo.dll
[GET] Unauthorized : /log/nzbdrone.txt
It seems that NZBDRONE GUI is losing access to the backend.
Haven’t looked at it myself, but there are a couple things:
What version are you running?
[GET] Unauthorized : /log/nzbdrone.txt
thats not file permissions thats a UI error thrown because the backend rejects the call, its fixed in the latest develop release.
[Fatal] GlobalExceptionHandlers: EPIC FAIL: MediaInfo.dll
Drone uses media info to see if the file should be treated as a sample or not, you should be able to install mediainfo on your system and drone will be able to use it, but thats just the error message header, the full error message would be required if installing mediainfo doesn’t resolve it.
Enable trace logging and pastebin the logs from start to fail for the searching, bit weird that manual works still.
I am using the master branch. I downloaded the dev branch but I am not too familiar with git and do not see the nzbdrone.console.exe file. I will also install mediainfo.
Git doesn’t contain any binaries, just the code.
You can get the latest release here, the tar.gz is what you’ll want: http://update.nzbdrone.com/v2/develop/latest/ and then run NzbDrone.exe