--- /dev/null
+TERMUX_PKG_HOMEPAGE=https://nzbget.net/
+TERMUX_PKG_DESCRIPTION="The most efficient usenet downloader"
+TERMUX_PKG_VERSION=19.1
+TERMUX_PKG_SRCURL=https://github.com/nzbget/nzbget/releases/download/v${TERMUX_PKG_VERSION}/nzbget-${TERMUX_PKG_VERSION}-src.tar.gz
+TERMUX_PKG_SHA256=06df42356ac2d63bbc9f7861abe9c3216df56fa06802e09e8a50b05f4ad95ce6
+TERMUX_PKG_DEPENDS="libxml2, ncurses, openssl, unrar, p7zip"
+TERMUX_PKG_BUILD_IN_SRC=yes
+TERMUX_PKG_EXTRA_CONFIGURE_ARGS="ac_cv_c_bigendian=no"
+
+termux_step_create_debscripts () {
+ echo "#!$TERMUX_PREFIX/bin/sh" > postinst
+ echo "sed -e 's|^\(CertStore=\).*|\1$TERMUX_PREFIX/etc/tls/cert.pem|g" >> postinst
+ echo "s|^\(ControlPassword=\).*|\1|g' $TERMUX_PREFIX/share/nzbget/nzbget.conf > ~/.nzbget" >> postinst
+ echo "exit 0" >> postinst
+ chmod 0755 postinst
+}
--- /dev/null
+diff --git a/daemon/main/nzbget.cpp b/daemon/main/nzbget.cpp
+index 1cfa105..b5cee58 100644
+--- a/daemon/main/nzbget.cpp
++++ b/daemon/main/nzbget.cpp
+@@ -19,6 +19,8 @@
+ */
+
+
++#include <sys/file.h>
++
+ #include "nzbget.h"
+ #include "ServerPool.h"
+ #include "Log.h"
+@@ -913,7 +915,7 @@ void NZBGet::Daemonize()
+ error("Starting daemon failed: could not create lock-file %s", m_options->GetLockFile());
+ exit(1);
+ }
+- if (lockf(lfp, F_TLOCK, 0) < 0)
++ if (flock(lfp, LOCK_EX) < 0)
+ {
+ error("Starting daemon failed: could not acquire lock on lock-file %s", m_options->GetLockFile());
+ exit(1);
--- /dev/null
+diff --git a/daemon/main/Options.cpp b/daemon/main/Options.cpp
+index f41bd82..6a3dc0e 100644
+--- a/daemon/main/Options.cpp
++++ b/daemon/main/Options.cpp
+@@ -182,10 +182,7 @@ const int BoolCount = 12;
+ const char* PossibleConfigLocations[] =
+ {
+ "~/.nzbget",
+- "/etc/nzbget.conf",
+- "/usr/etc/nzbget.conf",
+- "/usr/local/etc/nzbget.conf",
+- "/opt/etc/nzbget.conf",
++ "@TERMUX_PREFIX@/etc/nzbget.conf",
+ nullptr
+ };
+ #endif
--- /dev/null
+diff --git a/daemon/util/Thread.cpp b/daemon/util/Thread.cpp
+index 199005f..61b5bcb 100644
+--- a/daemon/util/Thread.cpp
++++ b/daemon/util/Thread.cpp
+@@ -111,7 +111,7 @@ void Thread::Start()
+ pthread_attr_t m_attr;
+ pthread_attr_init(&m_attr);
+ pthread_attr_setdetachstate(&m_attr, PTHREAD_CREATE_DETACHED);
+- pthread_attr_setinheritsched(&m_attr, PTHREAD_INHERIT_SCHED);
++ //pthread_attr_setinheritsched(&m_attr, PTHREAD_INHERIT_SCHED);
+ m_running = !pthread_create(&m_threadObj, &m_attr, Thread::thread_handler, (void *) this);
+ pthread_attr_destroy(&m_attr);
+ #endif
+@@ -140,7 +140,7 @@ bool Thread::Kill()
+ #ifdef WIN32
+ bool terminated = TerminateThread(m_threadObj, 0) != 0;
+ #else
+- bool terminated = pthread_cancel(m_threadObj) == 0;
++ bool terminated = pthread_kill(m_threadObj, 0) == 0;
+ #endif
+
+ if (terminated)