aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernel/ksmbd/Makefile4
-rw-r--r--lang/node/Makefile10
-rw-r--r--lang/node/patches/999-delete_unnecessary_libraries_for_host_execute.patch4
-rw-r--r--libs/libcap/Makefile13
-rw-r--r--libs/newt/Makefile2
-rw-r--r--libs/newt/patches/python_init_once.patch24
-rw-r--r--multimedia/youtube-dl/Makefile4
-rw-r--r--net/ksmbd-tools/Makefile4
-rw-r--r--net/openvswitch/Makefile4
-rw-r--r--net/openvswitch/openvswitch.mk3
-rw-r--r--net/ovn/Makefile1
-rw-r--r--net/pagekitec/Makefile4
-rwxr-xr-xnet/pagekitec/files/etc/init.d/pagekitec1
-rw-r--r--net/pagekitec/patches/01-Omit-redundant-times-when-logging-to-syslog.patch44
-rw-r--r--utils/domoticz/Makefile26
-rw-r--r--utils/domoticz/patches/010-python.patch64
-rw-r--r--utils/domoticz/patches/020-openssl-deprecated.patch22
-rw-r--r--utils/domoticz/patches/030-SunRiseSet-Use-round-instead-of-std-round.patch79
-rw-r--r--utils/openzwave/Makefile14
-rw-r--r--utils/openzwave/patches/001-unix-fix-compilation-against-musl-libc-1127.patch28
-rw-r--r--utils/openzwave/patches/900_fix-build.patch29
-rw-r--r--utils/openzwave/patches/901_no-hidcontroller.patch89
-rw-r--r--utils/openzwave/patches/902_no-udev.patch24
-rw-r--r--utils/openzwave/patches/904-fix-lib-include-path.patch15
-rw-r--r--utils/syncthing/Makefile14
-rw-r--r--utils/syncthing/files/etc/config/syncthing21
-rwxr-xr-xutils/syncthing/files/etc/init.d/syncthing79
l---------utils/syncthing/files/etc/syncthing/index-v0.14.0.db1
28 files changed, 131 insertions, 496 deletions
diff --git a/kernel/ksmbd/Makefile b/kernel/ksmbd/Makefile
index f862c155c..640373239 100644
--- a/kernel/ksmbd/Makefile
+++ b/kernel/ksmbd/Makefile
@@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ksmbd
-PKG_VERSION:=3.1.3
+PKG_VERSION:=3.1.6
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/cifsd-team/cifsd/archive/$(PKG_VERSION)/
-PKG_HASH:=c3c4531d3806117218d23e0552edfe883f978a00b7293180dd2919694102fcb9
+PKG_HASH:=09c1eb39d9dcc9baf6bc9c5a2b91bcea377352bfc507ebdd10a370fffa7c31b4
PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later
diff --git a/lang/node/Makefile b/lang/node/Makefile
index f836f4660..5b368c13e 100644
--- a/lang/node/Makefile
+++ b/lang/node/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=node
PKG_VERSION:=v12.16.1
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://nodejs.org/dist/$(PKG_VERSION)
@@ -47,7 +47,11 @@ define Package/node/description
Node.jsĀ® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses
an event-driven, non-blocking I/O model that makes it lightweight and efficient. Node.js'
package ecosystem, npm, is the largest ecosystem of open source libraries in the world.
- *** Requires GCC/G++ Multilib on host system to build 32-bit target ***
+ *** The following preparations must be made on the host side. ***
+ 1. gcc 6.3 or higher is required.
+ 2. To build a 32-bit target, gcc-multilib, g++-multilib are required.
+ 3. Requires libatomic package. (If necessary, install the 32-bit library at the same time.)
+ ex) sudo apt-get install gcc-multilib g++-multilib
endef
define Package/node-npm
@@ -93,7 +97,7 @@ endif
MAKE_VARS+= \
DESTCPU=$(NODEJS_CPU) \
- LD_LIBRARY_PATH=$(STAGING_DIR_HOSTPKG)/share/icu/65.1/lib
+ LD_LIBRARY_PATH=$(STAGING_DIR_HOSTPKG)/share/icu/current/lib
CONFIGURE_VARS:= \
CC="$(TARGET_CC) $(TARGET_OPTIMIZATION)" \
diff --git a/lang/node/patches/999-delete_unnecessary_libraries_for_host_execute.patch b/lang/node/patches/999-delete_unnecessary_libraries_for_host_execute.patch
index dc473b9c7..36ef76f1f 100644
--- a/lang/node/patches/999-delete_unnecessary_libraries_for_host_execute.patch
+++ b/lang/node/patches/999-delete_unnecessary_libraries_for_host_execute.patch
@@ -47,7 +47,7 @@
'target_name': 'mksnapshot',
'type': 'executable',
+ 'libraries!':[ '-lcrypto', '-lssl', '-lz', '-lhttp_parser', '-luv', '-lnghttp2', '-lcares' ],
-+ 'library_dirs':[ '../../../../staging_dir/hostpkg/share/icu/65.1/lib' ],
++ 'library_dirs':[ '../../../../staging_dir/hostpkg/share/icu/current/lib' ],
'dependencies': [
'v8_base_without_compiler',
'v8_compiler_for_mksnapshot',
@@ -72,7 +72,7 @@
'target_name': 'gen-regexp-special-case',
'type': 'executable',
+ 'libraries!':[ '-lcrypto', '-lssl', '-lz', '-lhttp_parser', '-luv', '-lnghttp2', '-lcares' ],
-+ 'library_dirs':[ '../../../../staging_dir/hostpkg/share/icu/65.1/lib' ],
++ 'library_dirs':[ '../../../../staging_dir/hostpkg/share/icu/current/lib' ],
'dependencies': [
'v8_libbase',
# "build/win:default_exe_manifest",
diff --git a/libs/libcap/Makefile b/libs/libcap/Makefile
index 688cc45f8..a3c528349 100644
--- a/libs/libcap/Makefile
+++ b/libs/libcap/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=libcap
PKG_VERSION:=2.33
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@KERNEL/linux/libs/security/linux-privs/libcap2
@@ -84,14 +84,19 @@ TARGET_CFLAGS += $(if $(CONFIG_USE_MUSL),-Dpthread_yield=sched_yield)
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/sys
- $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/sys/*.h $(1)/usr/include/sys/
$(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/lib/* $(1)/usr/lib/
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/lib/libcap.{so*,a} $(1)/usr/lib/
+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/lib/libpsx.a $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libcap.pc $(1)/usr/lib/pkgconfig/
$(SED) 's,exec_prefix=,exec_prefix=/usr,g' $(1)/usr/lib/pkgconfig/libcap.pc
$(SED) 's,/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/libcap.pc
$(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/libcap.pc
+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libpsx.pc $(1)/usr/lib/pkgconfig/
+ $(SED) 's,exec_prefix=,exec_prefix=/usr,g' $(1)/usr/lib/pkgconfig/libpsx.pc
+ $(SED) 's,/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/libpsx.pc
+ $(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/libpsx.pc
endef
define Package/libcap/install
diff --git a/libs/newt/Makefile b/libs/newt/Makefile
index 3f10fb0c1..10abe55f4 100644
--- a/libs/newt/Makefile
+++ b/libs/newt/Makefile
@@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=newt
PKG_VERSION:=0.52.21
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://releases.pagure.org/newt
diff --git a/libs/newt/patches/python_init_once.patch b/libs/newt/patches/python_init_once.patch
deleted file mode 100644
index 3d52b4486..000000000
--- a/libs/newt/patches/python_init_once.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Author: Alastair McKinstry <mckinstry@debian.org>
-Description: newtInit() should only be called once
-Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=557960
-Forwarded: no
-Last-Updated: 2014-06-11
-
---- a/snack.c
-+++ b/snack.c
-@@ -377,10 +377,15 @@ static snackWidget * snackWidgetNew (voi
- }
-
- static PyObject * initScreen(PyObject * s, PyObject * args) {
-+ static int init_newt = 1;
- suspend.cb = NULL;
- suspend.data = NULL;
-
- newtInit();
-+ if (init_newt) {
-+ newtInit();
-+ init_newt = 0;
-+ }
- newtCls();
-
- Py_INCREF(Py_None);
diff --git a/multimedia/youtube-dl/Makefile b/multimedia/youtube-dl/Makefile
index 113afc396..2d025ff6c 100644
--- a/multimedia/youtube-dl/Makefile
+++ b/multimedia/youtube-dl/Makefile
@@ -8,11 +8,11 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=youtube-dl
-PKG_VERSION:=2020.3.8
+PKG_VERSION:=2020.3.24
PKG_RELEASE:=1
PYPI_NAME:=youtube_dl
-PKG_HASH:=1b098b7ae41551f46dbae70e56dbabdf39c8faf50e072d0c0b42c44d64afebf8
+PKG_HASH:=4b03efe439f7cae26eba909821d1df00a9a4eb82741cb2e8b78fe29702bd4633
PKG_MAINTAINER:=Adrian Panella <ianchi74@outlook.com>, Josef Schlehofer <pepe.schlehofer@gmail.com>
PKG_LICENSE:=Unlicense
diff --git a/net/ksmbd-tools/Makefile b/net/ksmbd-tools/Makefile
index e7a677e4b..87a0b0e97 100644
--- a/net/ksmbd-tools/Makefile
+++ b/net/ksmbd-tools/Makefile
@@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ksmbd-tools
-PKG_VERSION:=3.2.1
+PKG_VERSION:=3.2.3
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/cifsd-team/cifsd-tools/archive/$(PKG_VERSION)/
-PKG_HASH:=acb4d97cbb0b22ad42ed1536bdd2c28af2a3c698664c058da59a644d5e6df599
+PKG_HASH:=d5e56b38f858736849aefd55cfbffe31ae3d4f39a13689aecb3e896f3b048866
PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later
diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile
index 5f7d8a345..06186b5cc 100644
--- a/net/openvswitch/Makefile
+++ b/net/openvswitch/Makefile
@@ -17,7 +17,7 @@ include ./openvswitch.mk
#
PKG_NAME:=openvswitch
PKG_VERSION:=$(ovs_version)
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://www.openvswitch.org/releases/
PKG_HASH:=dd5f727427e36cab22bdeae61529d8c8fccacc53d968cfa7658f7f935ddda531
@@ -155,6 +155,8 @@ ovs_kmod_openvswitch-lisp-intree_depends:= +kmod-openvswitch-intree
ovs_kmod_openvswitch-lisp-intree_files:= $(ovs_kmod_intree_dir)/vport-lisp.ko
$(eval $(call OvsKmodPackageTemplate,openvswitch-lisp-intree))
+ovs_common_depends:= +libatomic +libunbound +libunwind
+
# Dependency review
#
# for f in sbin/*; do echo $f; readelf -d $f | grep -i shared; done
diff --git a/net/openvswitch/openvswitch.mk b/net/openvswitch/openvswitch.mk
index 71022a7f4..cf46f6be1 100644
--- a/net/openvswitch/openvswitch.mk
+++ b/net/openvswitch/openvswitch.mk
@@ -10,6 +10,7 @@ ovs_builddir=$(KERNEL_BUILD_DIR)/openvswitch-$(ovs_version)
# Shared vars, macros
+ovs_common_depends:=
ovs_packages:=
ovs_package_name=$(if $(filter openvswitch,$(1)),openvswitch,openvswitch-$(1))
@@ -21,7 +22,7 @@ define OvsPackageTemplate
URL:=https://www.openvswitch.org
TITLE:=$(ovs_$(1)_title)
HIDDEN:=$(ovs_$(1)_hidden)
- DEPENDS:=$(ovs_$(1)_depends) +libatomic +libunbound
+ DEPENDS:=$(ovs_$(1)_depends) $(ovs_common_depends)
endef
define Package/$(call ovs_package_name,$(1))/install
diff --git a/net/ovn/Makefile b/net/ovn/Makefile
index 4c686526a..5fd6bebcb 100644
--- a/net/ovn/Makefile
+++ b/net/ovn/Makefile
@@ -33,6 +33,7 @@ PKG_MAINTAINER:=Yousong Zhou <yszhou4tech@gmail.com>
include $(INCLUDE_DIR)/package.mk
include ../../lang/python/python3-host.mk
+ovs_common_depends:= +libatomic +libunbound
ovs_libovn_title:=Open vSwitch (libovn.so)
ovs_libovn_hidden:=1
diff --git a/net/pagekitec/Makefile b/net/pagekitec/Makefile
index 5deb9d673..f20054f34 100644
--- a/net/pagekitec/Makefile
+++ b/net/pagekitec/Makefile
@@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=pagekitec
-PKG_REV:=0.91.200218
+PKG_REV:=0.91.200311
PKG_VERSION:=$(PKG_REV)C
PKG_RELEASE:=1
PKG_LICENSE:=Apache-2.0
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_MIRROR_HASH:=2f560ae679775758b1b5e5f69cd4d82afa28339ee8ab6ee9e4af11daa6f8be77
+PKG_MIRROR_HASH:=3546e1b4b69eb8e4b914d2161cfaced8b6b81e0a978d95411bae25f3adea754f
PKG_SOURCE_URL:=https://github.com/pagekite/libpagekite.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=v$(PKG_REV)
diff --git a/net/pagekitec/files/etc/init.d/pagekitec b/net/pagekitec/files/etc/init.d/pagekitec
index 71ea238b5..189c6c453 100755
--- a/net/pagekitec/files/etc/init.d/pagekitec
+++ b/net/pagekitec/files/etc/init.d/pagekitec
@@ -21,6 +21,7 @@ add_instance() {
procd_open_instance
procd_set_param command $APP
procd_append_param command -s
+ procd_append_param command -Y json:/tmp/pagekite.status.json
[ $static -eq 1 ] && procd_append_param command -S
[ $simple_http -eq 1 ] && procd_append_param command 80 http $kitename 0 $kitesecret
[ $simple_ssh -eq 1 ] && procd_append_param command 22 raw-22 $kitename 0 $kitesecret
diff --git a/net/pagekitec/patches/01-Omit-redundant-times-when-logging-to-syslog.patch b/net/pagekitec/patches/01-Omit-redundant-times-when-logging-to-syslog.patch
deleted file mode 100644
index 53c658bbf..000000000
--- a/net/pagekitec/patches/01-Omit-redundant-times-when-logging-to-syslog.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 7b4587818564aa667f868249e9a8f1dc1d095fd3 Mon Sep 17 00:00:00 2001
-From: "Bjarni R. Einarsson" <bre@klaki.net>
-Date: Tue, 25 Feb 2020 16:10:11 +0000
-Subject: [PATCH] Omit redundant times when logging to syslog
-
----
- libpagekite/pklogging.c | 19 ++++++++++++++-----
- 1 file changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/libpagekite/pklogging.c b/libpagekite/pklogging.c
-index cf353f8..6129c30 100644
---- a/libpagekite/pklogging.c
-+++ b/libpagekite/pklogging.c
-@@ -55,16 +55,25 @@ int pk_log(int level, const char* fmt, ...)
- #else
- struct timeval t;
- char tsbuf[30];
-+# ifdef HAVE_DS_LOG_FORMAT
- gettimeofday(&t, NULL);
- strftime(tsbuf, sizeof(tsbuf), "%Y-%m-%d %H:%M:%S", localtime(&t.tv_sec));
--# ifdef HAVE_DS_LOG_FORMAT
- len = snprintf(output, 4000, "[%s.%03d][%x] ",
- tsbuf, (int)t.tv_usec / 1000, (int) pthread_self());
- # else
-- len = sprintf(output, "t=%s.%03d; ts=%x; tid=%x; ll=%x; msg=",
-- tsbuf, (int)t.tv_usec / 1000,
-- (int) time(0), (int) pthread_self(),
-- logged_lines++);
-+ if (log_file != NULL) {
-+ gettimeofday(&t, NULL);
-+ strftime(tsbuf, sizeof(tsbuf), "%Y-%m-%d %H:%M:%S", localtime(&t.tv_sec));
-+ len = sprintf(output, "t=%s.%03d; ts=%x; tid=%x; ll=%x; msg=",
-+ tsbuf, (int)t.tv_usec / 1000,
-+ (int) time(0), (int) pthread_self(),
-+ logged_lines++);
-+ }
-+ else {
-+ /* For syslog, we omit the times, syslog handles that. */
-+ len = sprintf(output, "tid=%x; ll=%x; msg=",
-+ (int) pthread_self(), logged_lines++);
-+ }
- # endif
- #endif
- va_start(args, fmt);
diff --git a/utils/domoticz/Makefile b/utils/domoticz/Makefile
index 7b40ba075..ded095a2d 100644
--- a/utils/domoticz/Makefile
+++ b/utils/domoticz/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2016 - 2017 Stijn Tintel <stijn@linux-ipv6.be>
+# Copyright (C) 2016 - 2020 Stijn Tintel <stijn@linux-ipv6.be>
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -8,21 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=domoticz
-PKG_VERSION_MAJOR:=4
-PKG_VERSION_PATCH:=10717
-PKG_COMMIT:=
-PKG_VERSION:=$(PKG_VERSION_MAJOR).$(PKG_VERSION_PATCH)
-PKG_RELEASE:=3
+PKG_VERSION:=2020.1
+PKG_RELEASE:=1
-ifeq ($(PKG_COMMIT),)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/domoticz/domoticz/archive/$(PKG_VERSION)/$(PKG_SOURCE)
-else
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_COMMIT).tar.gz
-PKG_SOURCE_URL:=https://github.com/domoticz/domoticz/archive/$(PKG_COMMIT)/$(PKG_SOURCE)
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_COMMIT)
-endif
-PKG_HASH:=c053a2161942529f56b748945ec297dcd67f449e68029fc886893a528891ad86
+PKG_HASH:=d0c17b2082dad8a8caeed888b7d4c191975e74a2808b5d078305f5327b82442d
PKG_LICENSE:=GPL-3.0
PKG_LICENSE_FILES:=License.txt
@@ -80,15 +71,6 @@ TARGET_CXXFLAGS+=-DWITH_GPIO -flto
define Build/Prepare
$(call Build/Prepare/Default)
- # Fix APPVERSION/APPDATE since we don't build from a git tree
- sed -i 's/#define APPVERSION.*/#define APPVERSION $(PKG_VERSION_PATCH)/' \
- $(PKG_BUILD_DIR)/appversion.default
- COMMITDATE=`tar tvfz $(DL_DIR)/$(PKG_SOURCE) --full-time | sed 's/.* \(20..-..-.. ..:..:..\) domoticz-.*/\1/;q'`; \
- COMMITTS=`date --date="$$$${COMMITDATE}" +%s`; \
- sed -i "s/#define APPDATE.*/#define APPDATE $$$${COMMITTS}/" $(PKG_BUILD_DIR)/appversion.default
-ifneq ($(PKG_COMMIT),)
- sed -i "s/#define APPHASH.*/#define APPHASH \"$(shell echo $(PKG_COMMIT) | cut -c1-8)\"/" $(PKG_BUILD_DIR)/appversion.default
-endif
# Remove unwanted scripts
cd $(PKG_BUILD_DIR)/scripts && rm -rf \
buienradar_rain_example.pl \
diff --git a/utils/domoticz/patches/010-python.patch b/utils/domoticz/patches/010-python.patch
deleted file mode 100644
index c46c92363..000000000
--- a/utils/domoticz/patches/010-python.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From e9bd383ceb63db7cfe8a284014f0cdf8c2bfe4f0 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Fri, 1 Nov 2019 10:54:11 +0100
-Subject: [PATCH] DelayedLink.h: fix build with python 3.8
-
-Fix build with python 3.8 by copy/pasting the vim workaround from
-https://github.com/vim/vim/commit/13a1f3fb0c9d08bba6109fe2131c9524e6ba7e15
-
-Fix 3703
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
----
- hardware/plugins/DelayedLink.h | 38 ++++++++++++++++++++++++++++++++++
- 1 file changed, 38 insertions(+)
-
-diff --git a/hardware/plugins/DelayedLink.h b/hardware/plugins/DelayedLink.h
-index 4bf1973281..c90a7d8e69 100644
---- a/hardware/plugins/DelayedLink.h
-+++ b/hardware/plugins/DelayedLink.h
-@@ -14,6 +14,44 @@
- #include <frameobject.h>
- #include "../../main/Helper.h"
-
-+#if PY_VERSION_HEX >= 0x030800f0
-+static inline void
-+py3__Py_DECREF(const char *filename, int lineno, PyObject *op)
-+{
-+ (void)filename; /* may be unused, shut up -Wunused-parameter */
-+ (void)lineno; /* may be unused, shut up -Wunused-parameter */
-+ _Py_DEC_REFTOTAL;
-+ if (--op->ob_refcnt != 0)
-+ {
-+#ifdef Py_REF_DEBUG
-+ if (op->ob_refcnt < 0)
-+ {
-+ _Py_NegativeRefcount(filename, lineno, op);
-+ }
-+#endif
-+ }
-+ else
-+ {
-+ _Py_Dealloc(op);
-+ }
-+}
-+
-+#undef Py_DECREF
-+#define Py_DECREF(op) py3__Py_DECREF(__FILE__, __LINE__, _PyObject_CAST(op))
-+
-+static inline void
-+py3__Py_XDECREF(PyObject *op)
-+{
-+ if (op != NULL)
-+ {
-+ Py_DECREF(op);
-+ }
-+}
-+
-+#undef Py_XDECREF
-+#define Py_XDECREF(op) py3__Py_XDECREF(_PyObject_CAST(op))
-+#endif
-+
- namespace Plugins {
-
- #ifdef WIN32
diff --git a/utils/domoticz/patches/020-openssl-deprecated.patch b/utils/domoticz/patches/020-openssl-deprecated.patch
deleted file mode 100644
index 6b01a2e76..000000000
--- a/utils/domoticz/patches/020-openssl-deprecated.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From 87749eb9b74d82dced807cc16fb011d4e3fb052d Mon Sep 17 00:00:00 2001
-From: Rosen Penev <rosenp@gmail.com>
-Date: Sat, 13 Jul 2019 17:28:06 -0700
-Subject: [PATCH] WebServerHelper: Fix compilation - deprecated APIs
-
-OpenSSL has initialization deprecated.
----
- main/WebServerHelper.cpp | 2 ++
- 1 file changed, 2 insertions(+)
-
---- a/main/WebServerHelper.cpp
-+++ b/main/WebServerHelper.cpp
-@@ -37,7 +37,9 @@ namespace http {
- our_listener_port = web_settings.listening_port;
- #ifdef WWW_ENABLE_SSL
- if (secure_web_settings.is_enabled()) {
-+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
- SSL_library_init();
-+#endif
- secureServer_.reset(new CWebServer());
- bRet |= secureServer_->StartServer(secure_web_settings, serverpath, bIgnoreUsernamePassword);
- serverCollection.push_back(secureServer_);
diff --git a/utils/domoticz/patches/030-SunRiseSet-Use-round-instead-of-std-round.patch b/utils/domoticz/patches/030-SunRiseSet-Use-round-instead-of-std-round.patch
deleted file mode 100644
index a7334e6b2..000000000
--- a/utils/domoticz/patches/030-SunRiseSet-Use-round-instead-of-std-round.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From 01d0b036179e12284880fb2d29ae579399e5fe91 Mon Sep 17 00:00:00 2001
-From: Rosen Penev <rosenp@gmail.com>
-Date: Fri, 25 Oct 2019 15:05:14 -0700
-Subject: [PATCH] SunRiseSet: Use round instead of std::round.
-
-The latter is not available with uClibc-ng.
-
-Signed-off-by: Rosen Penev <rosenp@gmail.com>
----
- main/SunRiseSet.cpp | 20 ++++++++++----------
- 1 file changed, 10 insertions(+), 10 deletions(-)
-
-diff --git a/main/SunRiseSet.cpp b/main/SunRiseSet.cpp
-index 14fe07fee7..dce69bc7ba 100644
---- a/main/SunRiseSet.cpp
-+++ b/main/SunRiseSet.cpp
-@@ -144,7 +144,7 @@ bool SunRiseSet::GetSunRiseSet(const double latit, const double longit, const in
- //astrlen = day_astronomical_twilight_length(year,month,day,longit,latit);
-
- double _tmpH;
-- result.DaylengthMins = static_cast<int>(std::round(modf(daylen, &_tmpH)*60));
-+ result.DaylengthMins = static_cast<int>(round(modf(daylen, &_tmpH)*60));
- result.DaylengthHours = static_cast<int>(_tmpH);
-
- rs = sun_rise_set(year, month, day, longit, latit, &rise, &set);
-@@ -154,14 +154,14 @@ bool SunRiseSet::GetSunRiseSet(const double latit, const double longit, const in
-
- rise = UtcToLocal(rise, timezone);
- set = UtcToLocal(set, timezone);
-- result.SunAtSouthMin = static_cast<int>(std::round(modf((rise+set)/2.0, &_tmpH)*60));
-+ result.SunAtSouthMin = static_cast<int>(round(modf((rise+set)/2.0, &_tmpH)*60));
- result.SunAtSouthHour = static_cast<int>(_tmpH);
-
- switch(rs) {
- case 0:
-- result.SunRiseMin = static_cast<int>(std::round(modf(rise, &_tmpH)*60));
-+ result.SunRiseMin = static_cast<int>(round(modf(rise, &_tmpH)*60));
- result.SunRiseHour = static_cast<int>(_tmpH);
-- result.SunSetMin = static_cast<int>(std::round(modf(set, &_tmpH)*60));
-+ result.SunSetMin = static_cast<int>(round(modf(set, &_tmpH)*60));
- result.SunSetHour = static_cast<int>(_tmpH);
- //fix a possible rounding issue above
- if (result.SunRiseMin > 59)
-@@ -189,9 +189,9 @@ bool SunRiseSet::GetSunRiseSet(const double latit, const double longit, const in
- case 0:
- civ_start = UtcToLocal(civ_start, timezone);
- civ_end = UtcToLocal(civ_end, timezone);
-- result.CivilTwilightStartMin = static_cast<int>(std::round(modf(civ_start, &_tmpH)*60));
-+ result.CivilTwilightStartMin = static_cast<int>(round(modf(civ_start, &_tmpH)*60));
- result.CivilTwilightStartHour = static_cast<int>(_tmpH);
-- result.CivilTwilightEndMin = static_cast<int>(std::round(modf(civ_end, &_tmpH)*60));
-+ result.CivilTwilightEndMin = static_cast<int>(round(modf(civ_end, &_tmpH)*60));
- result.CivilTwilightEndHour = static_cast<int>(_tmpH);
- break;
- case +1:
-@@ -208,9 +208,9 @@ bool SunRiseSet::GetSunRiseSet(const double latit, const double longit, const in
- case 0:
- naut_start = UtcToLocal(naut_start, timezone);
- naut_end = UtcToLocal(naut_end, timezone);
-- result.NauticalTwilightStartMin = static_cast<int>(std::round(modf(naut_start, &_tmpH)*60));
-+ result.NauticalTwilightStartMin = static_cast<int>(round(modf(naut_start, &_tmpH)*60));
- result.NauticalTwilightStartHour = static_cast<int>(_tmpH);
-- result.NauticalTwilightEndMin = static_cast<int>(std::round(modf(naut_end, &_tmpH)*60));
-+ result.NauticalTwilightEndMin = static_cast<int>(round(modf(naut_end, &_tmpH)*60));
- result.NauticalTwilightEndHour = static_cast<int>(_tmpH);
- break;
- case +1:
-@@ -227,9 +227,9 @@ bool SunRiseSet::GetSunRiseSet(const double latit, const double longit, const in
- case 0:
- astr_start = UtcToLocal(astr_start, timezone);
- astr_end = UtcToLocal(astr_end, timezone);
-- result.AstronomicalTwilightStartMin = static_cast<int>(std::round(modf(astr_start, &_tmpH)*60));
-+ result.AstronomicalTwilightStartMin = static_cast<int>(round(modf(astr_start, &_tmpH)*60));
- result.AstronomicalTwilightStartHour = static_cast<int>(_tmpH);
-- result.AstronomicalTwilightEndMin = static_cast<int>(std::round(modf(astr_end, &_tmpH)*60));
-+ result.AstronomicalTwilightEndMin = static_cast<int>(round(modf(astr_end, &_tmpH)*60));
- result.AstronomicalTwilightEndHour = static_cast<int>(_tmpH);
- break;
- case +1:
diff --git a/utils/openzwave/Makefile b/utils/openzwave/Makefile
index 77afe4155..c77ed2cc2 100644
--- a/utils/openzwave/Makefile
+++ b/utils/openzwave/Makefile
@@ -1,6 +1,6 @@
#
# Copyright (C) 2017 Hauke Mehrtens <hauke@hauke-m.de>
-# Copyright (C) 2016 - 2017 Stijn Tintel <stijn@linux-ipv6.be>
+# Copyright (C) 2016 - 2020 Stijn Tintel <stijn@linux-ipv6.be>
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -9,13 +9,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=openzwave
-PKG_REV:=164
-PKG_VERSION:=1.4.$(PKG_REV)
-PKG_RELEASE:=2
+PKG_VERSION:=1.6.1063
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://old.openzwave.com/downloads
-PKG_HASH:=4ecf39787aaf278c203764069b581dbc26094ce57cafeab4a0c1f012d2c0ac69
+PKG_HASH:=8b1b674f825cd3623d2aa9c286edbb05c0ff6537d5d3ee891ae98e21d28de26b
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
@@ -58,14 +57,15 @@ MAKE_FLAGS += \
LD="$(TARGET_CROSS)g++" \
LIBDIR="$(PKG_BUILD_DIR)" \
PREFIX=$(CONFIGURE_PREFIX) \
+ USE_HID="no" \
+ ar_option="q" \
instlibdir=/usr/lib \
pkgconfigdir=/usr/lib/pkgconfig \
sysconfdir=/etc/openzwave
define Build/Prepare
$(call Build/Prepare/Default)
- rm $(PKG_BUILD_DIR)/cpp/src/platform/HidController.*
- sed -i -e '/hidapi/d;/HidController/d' $(PKG_BUILD_DIR)/distfiles.mk
+ sed -i -e 's/-O3 //;s/-Werror //' $(PKG_BUILD_DIR)/cpp/build/Makefile
endef
define Package/libopenzwave/install
diff --git a/utils/openzwave/patches/001-unix-fix-compilation-against-musl-libc-1127.patch b/utils/openzwave/patches/001-unix-fix-compilation-against-musl-libc-1127.patch
deleted file mode 100644
index 3001667ce..000000000
--- a/utils/openzwave/patches/001-unix-fix-compilation-against-musl-libc-1127.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From eab45f0959ccb1deb662c6f8c036651088e2e8d6 Mon Sep 17 00:00:00 2001
-From: Stijn Tintel <stijn@linux-ipv6.be>
-Date: Fri, 17 Feb 2017 05:42:25 +0100
-Subject: [PATCH] unix: fix compilation against musl libc (#1127)
-
-POSIX.1-2001 requires sys/select.h for select() and friends.
-Compile-tested on glibc and musl, runtime tested on musl.
-
-Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
----
- cpp/src/platform/unix/SerialControllerImpl.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/cpp/src/platform/unix/SerialControllerImpl.cpp b/cpp/src/platform/unix/SerialControllerImpl.cpp
-index d95f848..b52b74f 100644
---- a/cpp/src/platform/unix/SerialControllerImpl.cpp
-+++ b/cpp/src/platform/unix/SerialControllerImpl.cpp
-@@ -25,6 +25,7 @@
- // along with OpenZWave. If not, see <http://www.gnu.org/licenses/>.
- //
- //-----------------------------------------------------------------------------
-+#include <sys/select.h>
- #include <unistd.h>
- #include <pthread.h>
- #include "Defs.h"
---
-2.10.2
-
diff --git a/utils/openzwave/patches/900_fix-build.patch b/utils/openzwave/patches/900_fix-build.patch
deleted file mode 100644
index 1081c9802..000000000
--- a/utils/openzwave/patches/900_fix-build.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- a/cpp/build/Makefile
-+++ b/cpp/build/Makefile
-@@ -15,7 +15,7 @@
- # what flags we will use for compiling in debug mode
- DEBUG_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-inline -Wno-format -Werror -Wno-error=sequence-point -Wno-sequence-point -ggdb -DDEBUG -fPIC -DSYSCONFDIR="\"$(PREFIX)/etc/openzwave/\""
- # what flags we will use for compiling in release mode
--RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Werror -Wno-format -Wno-error=sequence-point -Wno-sequence-point -O3 -DNDEBUG -fPIC -DSYSCONFDIR="\"$(PREFIX)/etc/openzwave/\""
-+RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-error=sequence-point -Wno-sequence-point -DNDEBUG -fPIC -DSYSCONFDIR="\"/etc/openzwave/\""
- #what flags we will use for linking in debug mode
- DEBUG_LDFLAGS := -g
-
-@@ -139,7 +139,7 @@ $(LIBDIR)/libopenzwave.a: $(patsubst %.c
- $(patsubst %.cpp,$(OBJDIR)/%.o,$(indep)) \
- $(OBJDIR)/vers.o
- @echo "Linking Static Library"
-- @$(AR) $@ $+
-+ @$(AR) q $@ $+
- @$(RANLIB) $@
-
- $(LIBDIR)/$(SHARED_LIB_NAME): $(patsubst %.cpp,$(OBJDIR)/%.o,$(tinyxml)) \
-@@ -161,7 +161,7 @@ $(top_builddir)/libopenzwave.pc: $(top_s
- -e 's|[@]exec_prefix@|$(PREFIX)/bin|g' \
- -e 's|[@]libdir@|$(instlibdir)|g' \
- -e 's|[@]includedir@|$(PREFIX)/include/openzwave/|g' \
-- -e 's|[@]sysconfdir@|$(PREFIX)/etc/openzwave/|g' \
-+ -e 's|[@]sysconfdir@|/etc/openzwave/|g' \
- -e 's|[@]gitversion@|$(GITVERSION)|g' \
- -e 's|[@]docdir@|$(docdir)/|g' \
- -e 's|[@]VERSION@|$(VERSION)|g' \
diff --git a/utils/openzwave/patches/901_no-hidcontroller.patch b/utils/openzwave/patches/901_no-hidcontroller.patch
deleted file mode 100644
index dfacbf039..000000000
--- a/utils/openzwave/patches/901_no-hidcontroller.patch
+++ /dev/null
@@ -1,89 +0,0 @@
---- a/cpp/src/Driver.cpp
-+++ b/cpp/src/Driver.cpp
-@@ -37,11 +37,6 @@
- #include "platform/Event.h"
- #include "platform/Mutex.h"
- #include "platform/SerialController.h"
--#ifdef WINRT
--#include "platform/winRT/HidControllerWinRT.h"
--#else
--#include "platform/HidController.h"
--#endif
- #include "platform/Thread.h"
- #include "platform/Log.h"
- #include "platform/TimeStamp.h"
-@@ -223,14 +218,7 @@ m_nonceReportSentAttempt( 0 )
-
- initNetworkKeys(false);
-
-- if( ControllerInterface_Hid == _interface )
-- {
-- m_controller = new HidController();
-- }
-- else
-- {
-- m_controller = new SerialController();
-- }
-+ m_controller = new SerialController();
- m_controller->SetSignalThreshold( 1 );
-
- Options::Get()->GetOptionAsBool( "NotifyTransactions", &m_notifytransactions );
---- a/cpp/build/Makefile
-+++ b/cpp/build/Makefile
-@@ -66,16 +66,7 @@ CFLAGS += $(CPPFLAGS)
- #where to put the temporary library
- LIBDIR ?= $(top_builddir)
-
--INCLUDES := -I $(top_srcdir)/cpp/src -I $(top_srcdir)/cpp/tinyxml/ -I $(top_srcdir)/cpp/hidapi/hidapi/
--
--ifeq ($(UNAME),Darwin)
--SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/mac
--else ifeq ($(UNAME),FreeBSD)
--SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/libusb
--else
--SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/linux
--endif
--
-+INCLUDES := -I $(top_srcdir)/cpp/src -I $(top_srcdir)/cpp/tinyxml/
-
- SOURCES := $(top_srcdir)/cpp/src $(top_srcdir)/cpp/src/command_classes $(top_srcdir)/cpp/tinyxml \
- $(top_srcdir)/cpp/src/value_classes $(top_srcdir)/cpp/src/platform $(top_srcdir)/cpp/src/platform/unix $(SOURCES_HIDAPI) $(top_srcdir)/cpp/src/aes/
-@@ -85,14 +76,6 @@ VPATH = $(top_srcdir)/cpp/src:$(top_srcd
-
- tinyxml := $(notdir $(wildcard $(top_srcdir)/cpp/tinyxml/*.cpp))
-
--ifeq ($(UNAME),Darwin)
--hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/mac/*.c))
--else ifeq ($(UNAME),FreeBSD)
--hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/libusb/*.c))
--else
--hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/linux/*.c)) # we do not want the libusb version
--endif
--
- cclasses := $(notdir $(wildcard $(top_srcdir)/cpp/src/command_classes/*.cpp))
- vclasses := $(notdir $(wildcard $(top_srcdir)/cpp/src/value_classes/*.cpp))
- pform := $(notdir $(wildcard $(top_srcdir)/cpp/src/platform/*.cpp)) \
-@@ -111,7 +94,6 @@ printversion:
-
-
- -include $(patsubst %.cpp,$(DEPDIR)/%.d,$(tinyxml))
---include $(patsubst %.c,$(DEPDIR)/%.d,$(hidapi))
- -include $(patsubst %.cpp,$(DEPDIR)/%.d,$(cclasses))
- -include $(patsubst %.cpp,$(DEPDIR)/%.d,$(vclasses))
- -include $(patsubst %.cpp,$(DEPDIR)/%.d,$(pform))
-@@ -131,7 +113,6 @@ $(top_srcdir)/cpp/src/vers.cpp:
- #$(OBJDIR)/vers.o: $(top_builddir)/vers.cpp
-
- $(LIBDIR)/libopenzwave.a: $(patsubst %.cpp,$(OBJDIR)/%.o,$(tinyxml)) \
-- $(patsubst %.c,$(OBJDIR)/%.o,$(hidapi)) \
- $(patsubst %.c,$(OBJDIR)/%.o,$(aes)) \
- $(patsubst %.cpp,$(OBJDIR)/%.o,$(cclasses)) \
- $(patsubst %.cpp,$(OBJDIR)/%.o,$(vclasses)) \
-@@ -143,7 +124,6 @@ $(LIBDIR)/libopenzwave.a: $(patsubst %.c
- @$(RANLIB) $@
-
- $(LIBDIR)/$(SHARED_LIB_NAME): $(patsubst %.cpp,$(OBJDIR)/%.o,$(tinyxml)) \
-- $(patsubst %.c,$(OBJDIR)/%.o,$(hidapi)) \
- $(patsubst %.c,$(OBJDIR)/%.o,$(aes)) \
- $(patsubst %.cpp,$(OBJDIR)/%.o,$(cclasses)) \
- $(patsubst %.cpp,$(OBJDIR)/%.o,$(vclasses)) \
diff --git a/utils/openzwave/patches/902_no-udev.patch b/utils/openzwave/patches/902_no-udev.patch
deleted file mode 100644
index c9176d7db..000000000
--- a/utils/openzwave/patches/902_no-udev.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/cpp/src/platform/unix/SerialControllerImpl.cpp
-+++ b/cpp/src/platform/unix/SerialControllerImpl.cpp
-@@ -34,10 +34,6 @@
- #include "SerialControllerImpl.h"
- #include "platform/Log.h"
-
--#ifdef __linux__
--#include <libudev.h>
--#endif
--
- using namespace OpenZWave;
-
- //-----------------------------------------------------------------------------
---- a/cpp/build/Makefile
-+++ b/cpp/build/Makefile
-@@ -59,7 +59,7 @@ endif
-
- else
- LDFLAGS += -shared -Wl,-soname,libopenzwave.so.$(VERSION)
--LIBS += -ludev
-+LIBS +=
- endif
- CFLAGS += $(CPPFLAGS)
-
diff --git a/utils/openzwave/patches/904-fix-lib-include-path.patch b/utils/openzwave/patches/904-fix-lib-include-path.patch
deleted file mode 100644
index d0c7c39e2..000000000
--- a/utils/openzwave/patches/904-fix-lib-include-path.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/cpp/build/Makefile b/cpp/build/Makefile
-index 666472d..41dc58c 100644
---- a/cpp/build/Makefile
-+++ b/cpp/build/Makefile
-@@ -139,8 +139,8 @@ $(top_builddir)/libopenzwave.pc: $(top_srcdir)/cpp/build/libopenzwave.pc.in $(PK
- @$(SED) \
- -e 's|[@]prefix@|$(PREFIX)|g' \
- -e 's|[@]exec_prefix@|$(PREFIX)/bin|g' \
-- -e 's|[@]libdir@|$(instlibdir)|g' \
-- -e 's|[@]includedir@|$(PREFIX)/include/openzwave/|g' \
-+ -e 's|[@]libdir@|$${prefix}/lib|g' \
-+ -e 's|[@]includedir@|$${prefix}/include/openzwave/|g' \
- -e 's|[@]sysconfdir@|/etc/openzwave/|g' \
- -e 's|[@]gitversion@|$(GITVERSION)|g' \
- -e 's|[@]docdir@|$(docdir)/|g' \
diff --git a/utils/syncthing/Makefile b/utils/syncthing/Makefile
index f55f511d9..4a0e781da 100644
--- a/utils/syncthing/Makefile
+++ b/utils/syncthing/Makefile
@@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=syncthing
-PKG_VERSION:=1.3.4
+PKG_VERSION:=1.4.0
PKG_RELEASE:=2
PKG_SOURCE:=syncthing-source-v$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/syncthing/syncthing/releases/download/v$(PKG_VERSION)
-PKG_HASH:=e40227f67b4317419900353be3f49f381ed36e41044df5d168b850f6b183ae08
+PKG_HASH:=0c45955445752dac43d56bc321fae2140b5b05ad6d41a574ed37813607493edd
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)/$(PKG_NAME)
@@ -32,13 +32,15 @@ define Package/syncthing
DEPENDS:=$(GO_ARCH_DEPENDS)
SECTION:=utils
CATEGORY:=Utilities
+ USERID:=syncthing:syncthing
endef
GO_PKG_LDFLAGS_X:=\
- main.Version=v$(PKG_VERSION) \
- main.BuildUser=openwrt \
- main.BuildHost=openwrt \
- main.BuildStamp=$(SOURCE_DATE_EPOCH)
+ github.com/syncthing/syncthing/lib/build.Version=v$(PKG_VERSION) \
+ github.com/syncthing/syncthing/lib/build.Stamp=$(SOURCE_DATE_EPOCH) \
+ github.com/syncthing/syncthing/lib/build.User=openwrt \
+ github.com/syncthing/syncthing/lib/build.Host=openwrt \
+ github.com/syncthing/syncthing/lib/build.Program=syncthing
define Build/Compile
$(call GoPackage/Build/Compile,-tags noupgrade)
diff --git a/utils/syncthing/files/etc/config/syncthing b/utils/syncthing/files/etc/config/syncthing
index 427c8c5b1..291675d40 100644
--- a/utils/syncthing/files/etc/config/syncthing
+++ b/utils/syncthing/files/etc/config/syncthing
@@ -3,5 +3,24 @@ config syncthing 'syncthing'
option enabled '0'
option gui_address 'http://127.0.0.1:8384'
- option home '/etc/syncthing/'
+
+ # Use internal flash for evaluation purpouses. Use external storage
+ # for production.
+ # This filesystem must either support ownership/attributes or
+ # be readable/writable by the user specified in
+ # 'option user'.
+ # Consult syslog if things go wrong.
+ option home '/etc/syncthing'
+
+ # Changes to "niceness"/macprocs are not picked up by "reload_config"
+ # nor by "restart": the service has to be stopped/started
+ # for those to take effect
+ option nice '19'
+
+ # 0 to match the number of CPUs (default)
+ # >0 to explicitly specify concurrency
+ option macprocs '0'
+
+ # Running as 'root' is possible, but not recommended
+ option user 'syncthing'
diff --git a/utils/syncthing/files/etc/init.d/syncthing b/utils/syncthing/files/etc/init.d/syncthing
index 443ef4f35..f77aad8ae 100755
--- a/utils/syncthing/files/etc/init.d/syncthing
+++ b/utils/syncthing/files/etc/init.d/syncthing
@@ -4,29 +4,66 @@ START=90
STOP=10
USE_PROCD=1
-NICEPRIO=19
PROG=/usr/bin/syncthing
+service_triggers()
+{
+ procd_add_reload_trigger "syncthing"
+}
+
start_service() {
- [ -d /var/syncthing/ ] || mkdir /var/syncthing/
-
- local gui_address home enabled
- config_load "syncthing"
-
- # The first version had the service enabled by default,
- # so preserving the old behaviour
- config_get_bool enabled syncthing enabled 1
- [ "$enabled" -gt 0 ] || return 0
-
- config_get gui_address syncthing gui_address "http://127.0.0.1:8384"
- config_get home syncthing home "/etc/syncthing/"
-
- procd_open_instance
- procd_set_param command "$PROG"
- procd_append_param command -gui-address="$gui_address"
- procd_append_param command -home="$home"
- procd_set_param respawn
- procd_set_param nice "$NICEPRIO"
- procd_close_instance
+ local gui_address home enabled nice macprocs user
+ config_load "syncthing"
+
+ # Some of the default values below might not match the defaults
+ # in /etc/config/syncthing: the reason is to remain backwards
+ # compatible with the older versions of this service as it
+ # evolves.
+
+ config_get_bool enabled syncthing enabled 1
+ [ "$enabled" -gt 0 ] || return 0
+
+ config_get user syncthing user 'root'
+ config_get gui_address syncthing gui_address "http://127.0.0.1:8384"
+ config_get home syncthing home "/etc/syncthing"
+
+ # For backwards compatibility
+ IDX_DB=$(readlink -n "$home"/index-v0.14.0.db)
+ if [ ! -z "$IDX_DB" ]; then
+ [ -d "$IDX_DB" ] || mkdir -p "$IDX_DB"
+
+ # A separate step to handle an upgrade use case
+ [ -d "$IDX_DB" ] && chown -R $user:$user "$IDX_DB"
+ fi
+
+ [ -d "$home" ] || mkdir -p "$home"
+ # A separate step to handle an upgrade use case
+ [ -d "$home" ] && chown -R $user:$user "$home"
+
+ # Changes to "niceness"/macprocs are not picked up by "reload_config"
+ # nor by "restart": the service has to be stopped/started
+ # for it to take effect
+ config_get nice syncthing nice "0"
+
+ config_get macprocs syncthing macprocs 0
+ if [ $macprocs -le 0 ]; then
+ # Default to the number of cores in this case
+ macprocs=$(grep -c ^processor /proc/cpuinfo)
+ fi
+
+ procd_open_instance
+ procd_set_param command "$PROG"
+ procd_set_param file /etc/config/syncthing
+ procd_set_param env GOMAXPROCS="$macprocs" STNOUPGRADE=1
+ procd_append_param command -gui-address="$gui_address"
+ procd_append_param command -home="$home"
+ procd_append_param command -no-browser
+ procd_set_param nice "$nice"
+ procd_set_param term_timeout 15
+ procd_set_param user "$user"
+ procd_set_param respawn
+ procd_set_param stdout 1
+ procd_set_param stderr 1
+ procd_close_instance
}
diff --git a/utils/syncthing/files/etc/syncthing/index-v0.14.0.db b/utils/syncthing/files/etc/syncthing/index-v0.14.0.db
deleted file mode 120000
index 3bfbcfaaa..000000000
--- a/utils/syncthing/files/etc/syncthing/index-v0.14.0.db
+++ /dev/null
@@ -1 +0,0 @@
-/var/syncthing/ \ No newline at end of file