From 887d21de28099d8545af38be9d45349d15940c33 Mon Sep 17 00:00:00 2001 From: ta264 Date: Mon, 16 May 2022 21:49:54 +0100 Subject: [PATCH 1/4] Build radarr for arm7 vfpv3-d16 archs --- .github/workflows/build.yml | 2 +- cross/radarr/Makefile | 24 +++++++++++++++-------- mk/spksrc.archs.mk | 3 ++- mk/spksrc.download.mk | 2 +- spk/radarr/Makefile | 2 +- toolchain/syno-armv7vfpv3d16-6.1/Makefile | 16 +++++++++++++++ toolchain/syno-armv7vfpv3d16-6.1/digests | 3 +++ toolchain/syno-armv7vfpv3d16-7.0/Makefile | 17 ++++++++++++++++ toolchain/syno-armv7vfpv3d16-7.0/digests | 3 +++ 9 files changed, 60 insertions(+), 12 deletions(-) create mode 100644 toolchain/syno-armv7vfpv3d16-6.1/Makefile create mode 100644 toolchain/syno-armv7vfpv3d16-6.1/digests create mode 100644 toolchain/syno-armv7vfpv3d16-7.0/Makefile create mode 100644 toolchain/syno-armv7vfpv3d16-7.0/digests diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 51555cefd..19eae8d2a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -61,7 +61,7 @@ jobs: matrix: # x64=x86_64, evansport=i686, aarch64=armv8, armv7, hi3535=armv7l, 88f6281=armv5, qoriq=ppc # https://github.com/SynoCommunity/spksrc/wiki/Synology-and-SynoCommunity-Package-Architectures - arch: [x64-6.1, x64-7.0, evansport-6.1, evansport-7.0, aarch64-6.1, aarch64-7.0, armv7-6.1, armv7-7.0, hi3535-6.1, 88f6281-6.1, comcerto2k-7.0] + arch: [x64-6.1, x64-7.0, evansport-6.1, evansport-7.0, aarch64-6.1, aarch64-7.0, armv7vfpv3d16-6.1, armv7vfpv3d16-7.0, armv7-6.1, armv7-7.0, hi3535-6.1, 88f6281-6.1, comcerto2k-7.0] steps: - name: Checkout repository diff --git a/cross/radarr/Makefile b/cross/radarr/Makefile index 7970cc967..158cfd01c 100644 --- a/cross/radarr/Makefile +++ b/cross/radarr/Makefile @@ -1,8 +1,9 @@ PKG_NAME = Radarr -PKG_VERS = 4.1.0.6175 +PKG_BRANCH = arm-vfpv3d16-2 +PKG_VERS = 4.2.0.6283 PKG_EXT = tar.gz -PKG_DIST_NAME = $(PKG_NAME).master.$(PKG_VERS).linux-core-$(PKG_DIST_ARCH).$(PKG_EXT) -PKG_DIST_SITE = https://github.com/Radarr/Radarr/releases/download/v$(PKG_VERS) +PKG_DIST_NAME = $(PKG_NAME).$(PKG_BRANCH).$(PKG_VERS).linux-core-$(PKG_DIST_ARCH).$(PKG_EXT) +PKG_DIST_FILE = $(PKG_DIST_NAME) PKG_DIR = Radarr DEPENDS = @@ -13,14 +14,14 @@ HOMEPAGE = https://radarr.video/ COMMENT = Radarr is a movie collection manager for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new movies and will interface with clients and indexers to grab, sort, and rename them. It can also be configured to automatically upgrade the quality of existing files in the library when a better quality format becomes available. LICENSE = GPLv3 +CHECKSUM_TARGET = radarr_checksum INSTALL_TARGET = radarr_install -# use digests with multiple files -PKG_DIST_ARCH_LIST = x64 arm arm64 - include ../../mk/spksrc.archs.mk PKG_DIST_ARCH = x64 -ifeq ($(findstring $(ARCH),$(ARMv7_ARCHS)),$(ARCH)) +ifeq ($(ARCH),$(GENERIC_ARMv7VFPv3d16_ARCH)) +PKG_DIST_ARCH = arm-vfpv3d16 +else ifeq ($(findstring $(ARCH),$(ARMv7_ARCHS)),$(ARCH)) PKG_DIST_ARCH = arm else ifeq ($(findstring $(ARCH),$(ARMv8_ARCHS)),$(ARCH)) PKG_DIST_ARCH = arm64 @@ -28,7 +29,14 @@ endif include ../../mk/spksrc.install-resources.mk -.PHONY: radarr_install +URLS=https://radarr.servarr.com/v1/update/$(PKG_BRANCH)/updatefile?version=$(PKG_VERS)\&os=linux\&runtime=netcore\&arch=$(PKG_DIST_ARCH) +ifeq ($(PKG_DIST_ARCH),arm-vfpv3d16) +URLS='https://artprodcus3.artifacts.visualstudio.com/Ae81bf62d-a2b3-4a5c-8bc1-60cc428c0287/961c82cf-1428-4ab0-9257-63be1671eac8/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL1JhZGFyci9wcm9qZWN0SWQvOTYxYzgyY2YtMTQyOC00YWIwLTkyNTctNjNiZTE2NzFlYWM4L2J1aWxkSWQvNDg2Mi9hcnRpZmFjdE5hbWUvUGFja2FnZXM1/content?format=file&subPath=%2FRadarr.merge.4.2.0.6283.linux-core-arm-vfpv3d16.tar.gz' +endif + +.PHONY: radarr_install radarr_checksum +radarr_checksum: + radarr_install: rm -rf $(WORK_DIR)/$(PKG_DIR)/Radarr.Update mkdir -p $(STAGING_INSTALL_PREFIX)/usr/lib/radarr/bin diff --git a/mk/spksrc.archs.mk b/mk/spksrc.archs.mk index a02139106..94c024df4 100644 --- a/mk/spksrc.archs.mk +++ b/mk/spksrc.archs.mk @@ -11,13 +11,14 @@ DSM_ARMv7_ARCHS = alpine alpine4k armada370 armada375 armada38x armadaxp monaco DSM_ARMv7_ARCHS += comcerto2k # Generic archs used for packages supporting multiple archs (where applicable) +GENERIC_ARMv7VFPv3d16_ARCH = armv7vfpv3d16 GENERIC_ARMv7_ARCH = armv7 GENERIC_ARMv8_ARCH = aarch64 GENERIC_x64_ARCH = x64 GENERIC_ARCHS = $(GENERIC_ARMv7_ARCH) $(GENERIC_ARMv8_ARCH) $(GENERIC_x64_ARCH) ARMv5_ARCHS = 88f6281 -ARMv7_ARCHS = $(GENERIC_ARMv7_ARCH) $(DSM_ARMv7_ARCHS) $(SRM_ARMv7_ARCHS) +ARMv7_ARCHS = $(GENERIC_ARMv7_ARCH) $(GENERIC_ARMv7VFPv3d16_ARCH) $(DSM_ARMv7_ARCHS) $(SRM_ARMv7_ARCHS) # hi3535 is not supported by generic ARMv7 arch ARMv7L_ARCHS = hi3535 ARMv8_ARCHS = $(GENERIC_ARMv8_ARCH) rtd1296 armada37xx diff --git a/mk/spksrc.download.mk b/mk/spksrc.download.mk index d094d293c..05b19f896 100644 --- a/mk/spksrc.download.mk +++ b/mk/spksrc.download.mk @@ -157,7 +157,7 @@ download_target: $(PRE_DOWNLOAD_TARGET) else \ $(MSG) " wget --secure-protocol=TLSv1_2 --timeout=30 --waitretry=0 --tries=5 -nv $${url}" ; \ rm -f $${localFile}.part ; \ - wget --secure-protocol=TLSv1_2 --timeout=30 --waitretry=0 --tries=5 -nv -O $${localFile}.part -nc $${url} ; \ + wget --secure-protocol=TLSv1_2 --timeout=30 --waitretry=0 --tries=5 -nv -O $${localFile}.part -nc "$${url}" ; \ mv $${localFile}.part $${localFile} ; \ fi ; \ flock -u 9 ; \ diff --git a/spk/radarr/Makefile b/spk/radarr/Makefile index 01f642c03..ddc8fa9af 100644 --- a/spk/radarr/Makefile +++ b/spk/radarr/Makefile @@ -1,6 +1,6 @@ SPK_NAME = radarr_official SPK_CONFLICT = radarr -SPK_VERS = 4.1.0.6175 +SPK_VERS = 4.2.0.6283 SPK_ICON = src/radarr.png REQUIRED_MIN_DSM = 6.0 diff --git a/toolchain/syno-armv7vfpv3d16-6.1/Makefile b/toolchain/syno-armv7vfpv3d16-6.1/Makefile new file mode 100644 index 000000000..e04b4cec9 --- /dev/null +++ b/toolchain/syno-armv7vfpv3d16-6.1/Makefile @@ -0,0 +1,16 @@ +TC_NAME = syno-armv7vfpv3d16 + +# generic toolchain for arm7hf with vfpv3-d16 DSM +TC_ARCH = armada370 armadaxp +TC_VERS = 6.1 +TC_KERNEL = 3.2.40 +TC_GLIBC = 2.20 + +TC_DIST = armada370-gcc493_glibc220_hard-GPL +TC_DIST_SITE_PATH = Marvell%20Armada%20370%20Linux%203.2.40 + +TC_TARGET = arm-unknown-linux-gnueabi +TC_SYSROOT = $(TC_TARGET)/sysroot +TC_EXTRA_CFLAGS = -mhard-float -mfpu=vfpv3-d16 + +include ../../mk/spksrc.tc.mk diff --git a/toolchain/syno-armv7vfpv3d16-6.1/digests b/toolchain/syno-armv7vfpv3d16-6.1/digests new file mode 100644 index 000000000..9b25f7541 --- /dev/null +++ b/toolchain/syno-armv7vfpv3d16-6.1/digests @@ -0,0 +1,3 @@ +armada370-gcc493_glibc220_hard-GPL.txz SHA1 7aabc0173a912c27a67078f2d4febd0b63e12044 +armada370-gcc493_glibc220_hard-GPL.txz SHA256 70fd9fd48b9c60e430ab4c75fcd5f6f790ee4fb02df2071e528fd474332def92 +armada370-gcc493_glibc220_hard-GPL.txz MD5 2aa707f2a1bfe65ef75ea63738070402 diff --git a/toolchain/syno-armv7vfpv3d16-7.0/Makefile b/toolchain/syno-armv7vfpv3d16-7.0/Makefile new file mode 100644 index 000000000..fa3ad0fa9 --- /dev/null +++ b/toolchain/syno-armv7vfpv3d16-7.0/Makefile @@ -0,0 +1,17 @@ +TC_NAME = syno-armv7vfpv3d16 + +# generic toolchain for arm7hf with vfpv3-d16 DSM +TC_ARCH = armada370 armadaxp +TC_VERS = 7.0 +TC_BUILD = 41890 +TC_KERNEL = 3.2.101 +TC_GLIBC = 2.26 + +TC_DIST = armada370-gcc750_glibc226_hard-GPL +TC_DIST_SITE_PATH = Marvell%20Armada%20370%20Linux%203.2.101 + +TC_TARGET = arm-unknown-linux-gnueabi +TC_SYSROOT = $(TC_TARGET)/sysroot +TC_EXTRA_CFLAGS = -mhard-float -mfpu=vfpv3-d16 + +include ../../mk/spksrc.tc.mk diff --git a/toolchain/syno-armv7vfpv3d16-7.0/digests b/toolchain/syno-armv7vfpv3d16-7.0/digests new file mode 100644 index 000000000..bfd382e5d --- /dev/null +++ b/toolchain/syno-armv7vfpv3d16-7.0/digests @@ -0,0 +1,3 @@ +armada370-gcc750_glibc226_hard-GPL.txz SHA1 38df2595a15cb080a4af8a09e1bc275a91163832 +armada370-gcc750_glibc226_hard-GPL.txz SHA256 4b8e73d7c06fd9769105ab0610e97c302cb5d4b408772e87e986619260e19e08 +armada370-gcc750_glibc226_hard-GPL.txz MD5 3117ab7a51917fc726c4518eabc894ec From 7a92fc5197e30b533e66612ed77d0baac5569752 Mon Sep 17 00:00:00 2001 From: ta264 Date: Thu, 19 May 2022 19:38:14 +0100 Subject: [PATCH 2/4] ArmadaXP is full vfpv3 --- toolchain/syno-armv7-6.1/Makefile | 2 +- toolchain/syno-armv7-7.0/Makefile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/toolchain/syno-armv7-6.1/Makefile b/toolchain/syno-armv7-6.1/Makefile index 8da69f2cd..5d5ca7260 100644 --- a/toolchain/syno-armv7-6.1/Makefile +++ b/toolchain/syno-armv7-6.1/Makefile @@ -1,7 +1,7 @@ TC_NAME = syno-armv7 # generic toolchain for arm7hf DSM -TC_ARCH = alpine alpine4k armada375 armada38x comcerto2k monaco +TC_ARCH = alpine alpine4k armada375 armada38x armadaxp comcerto2k monaco TC_VERS = 6.1 TC_KERNEL = 3.10.102 TC_GLIBC = 2.20 diff --git a/toolchain/syno-armv7-7.0/Makefile b/toolchain/syno-armv7-7.0/Makefile index d0e1495bc..734c1cf22 100644 --- a/toolchain/syno-armv7-7.0/Makefile +++ b/toolchain/syno-armv7-7.0/Makefile @@ -1,7 +1,7 @@ TC_NAME = syno-armv7 # generic toolchain for arm7hf DSM -TC_ARCH = alpine alpine4k armada375 armada38x monaco +TC_ARCH = alpine alpine4k armada375 armada38x armadaxp monaco TC_VERS = 7.0 TC_BUILD = 41890 TC_KERNEL = 3.10.108 From f0567eec751ebdbc651762929e60cd5515291921 Mon Sep 17 00:00:00 2001 From: ta264 Date: Sun, 22 May 2022 17:39:23 +0100 Subject: [PATCH 3/4] Startup logging --- mk/spksrc.service.start-stop-status | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/mk/spksrc.service.start-stop-status b/mk/spksrc.service.start-stop-status index a7d7febe2..20ac5fd57 100644 --- a/mk/spksrc.service.start-stop-status +++ b/mk/spksrc.service.start-stop-status @@ -75,8 +75,10 @@ start_daemon () fi fi if [ -n "${SVC_WRITE_PID}" -a -n "${SVC_BACKGROUND}" -a -n "${PID_FILE}" ]; then + echo "Writing PID file " >> ${LOG_FILE} echo "$!" > "${PID_FILE}" else + echo "Waiting for startup status " >> ${LOG_FILE} wait_for_status 0 ${SVC_WAIT_TIMEOUT} fi fi @@ -101,11 +103,14 @@ stop_daemon () daemon_status () { - + echo "DaemonStatus" >> ${LOG_FILE} if [ -n "${PID_FILE}" -a -r "${PID_FILE}" ]; then + pid=$(cat "${PID_FILE}") + echo "Got PID ${pid}" >> ${LOG_FILE} if kill -0 $(cat "${PID_FILE}") > /dev/null 2>&1; then return fi + echo "Removing PID file" >> ${LOG_FILE} rm -f "${PID_FILE}" > /dev/null fi return 1 @@ -117,6 +122,7 @@ wait_for_status () # default value: 20 seconds counter=${timeout:=20} while [ ${counter} -gt 0 ]; do + echo "WaitForStatus counter ${counter}" >> ${LOG_FILE} daemon_status [ $? -eq $1 ] && return let counter=counter-1 From 5f0b7135f03a7244dcaff1618bcea406f3ef923e Mon Sep 17 00:00:00 2001 From: ta264 Date: Mon, 23 May 2022 20:13:28 +0100 Subject: [PATCH 4/4] Increase startup timeout --- spk/radarr/src/service-setup.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/spk/radarr/src/service-setup.sh b/spk/radarr/src/service-setup.sh index de2c584a7..5a31255b0 100644 --- a/spk/radarr/src/service-setup.sh +++ b/spk/radarr/src/service-setup.sh @@ -26,6 +26,7 @@ else fi SVC_BACKGROUND=y +SVC_WAIT_TIMEOUT=120 fix_permissions () {