Install NZBGet from Source on Debian

nzbgetother

NZBGet is a solid lightweight nzb file downloader. I have already written a tutorial for installing the latest stable NZBGet 13.0. This is for installing the latest development build (which could have stability issues). This is incidentally much easier than installing the latest stable build. If, for personal reasons, you prefer to install software labeled stable only, the NZBGet stable guide is here.

Update: you should now use this newer and updated guide

Usenet Provider
Backbone
Retention
Speed
Connections
VPN
Monthly
Annual
UsenetServer
UsenetServer
3199
Unlimited
30
Yes
$10
$95.40
Newshosting
Newshosting
3199
Unlimited
30
Yes
$10
$99
Frugal
Frugal
3000
Unlimited
20
No
$4.16
$50
Usenetlink
Cloudgate
2000
100 Mbit
30
No
$15
$140

Install NZBGet from Source on Debian

Install dependencies

sudo apt-get install build-essential libsigc++-dev sigc++ libncurses5-dev libssl-dev libxml2-dev libpar2-0-dev unrar unzip p7zip-full -y

Update

sudo apt-get update
sudo apt-get upgrade -y

Install subversion

sudo apt-get install subversion -y

Grab latest source

svn co https://svn.code.sf.net/p/nzbget/code/trunk nzbget-svn

Go into nzbget folder

cd nzbget-svn

Time to create some important files for compiling

touch configure && touch Makefile.in && touch config.h.in

Configure with ssl

./configure --with-tlslib=OpenSSL

Compile, install and create the configuration file for NZBGet

./configure && make && make install && sudo make install-conf

Change ownership of configuration file to right username and group

sudo chown username:root /usr/local/etc/nzbget.conf

See if it runs

nzbget -D

Now try and access nzgbet at http://ip.address:6789 username:nzbget password:tegbzn6789

Let's make it autostart on boot using a script

Fire up WinSCP browse to and create /etc/init.d/nzbget or nano to create the empty file

nano /etc/init.d/nzbget

Paste this code and save the file

#!/bin/sh
# Start/stop the NZBget daemon.
#
case "$1" in
start)   echo -n "Start services: NZBget"
/usr/local/bin/nzbget -D
;;
stop)   echo -n "Stop services: NZBget"
/usr/local/bin/nzbget -Q
;;
restart)
$0 stop
$0 start
;;
*)   echo "Usage: $0 start|stop|restart"
exit 1
;;
esac
exit 0

Make the configuration file executable and update

chmod +x /etc/init.d/nzbget && update-rc.d nzbget defaults

Create /downloads folder or you will get errors that looks like this during the boot sequence

Start services: NZBgetnzbget.conf(49): Invalid value for option "InterDir" (/downloads/inter/): could not create directory :
nzbget.conf(70): Invalid value for option "TempDir" (/downloads/tmp/): could not create directory :
nzbget.conf(67): Invalid value for option "QueueDir" (/downloads/queue/): could not create directory :
nzbget.conf(61): Invalid value for option "NzbDir" (/downloads/nzb/): could not create directory :

These nzb.conf errors can be solved by creating the /downloads directory

mkdir /downloads

Now nzbget will start automatically on boot.

Update from Source

Stop the nzbget daemon

nzbget -Q

Go to the nzbget svn folder and update from svn

cd /usr/share/nzbget-svn && svn update

Configure with SSL

./configure --with-tlslib=OpenSSL

Remake

make && make install
All done :). Credit