From 93182f00d33ab442aaac1a87dd3706a5793193b9 Mon Sep 17 00:00:00 2001 From: ta264 Date: Tue, 2 Mar 2021 21:20:46 +0000 Subject: [PATCH 1/4] Use .NET core builds for Radarr --- cross/libstdc++/Makefile | 41 ++++++++++++++++++++++++++++ cross/libstdc++/PLIST | 2 ++ cross/radarr/Makefile | 33 ++++++++++++++++++---- cross/radarr/digests | 3 -- cross/radarr/digests_dir/arm | 3 ++ cross/radarr/digests_dir/arm64 | 3 ++ cross/radarr/digests_dir/x64 | 3 ++ mk/spksrc.extract.mk | 1 + spk/radarr/Makefile | 22 +++++++-------- spk/radarr/src/config.xml | 2 +- spk/radarr/src/radarr.png | Bin 31250 -> 50524 bytes spk/radarr/src/service-setup.sh | 47 ++++---------------------------- 12 files changed, 98 insertions(+), 62 deletions(-) create mode 100644 cross/libstdc++/Makefile create mode 100644 cross/libstdc++/PLIST delete mode 100644 cross/radarr/digests create mode 100644 cross/radarr/digests_dir/arm create mode 100644 cross/radarr/digests_dir/arm64 create mode 100644 cross/radarr/digests_dir/x64 diff --git a/cross/libstdc++/Makefile b/cross/libstdc++/Makefile new file mode 100644 index 00000000000..3f41d0130f9 --- /dev/null +++ b/cross/libstdc++/Makefile @@ -0,0 +1,41 @@ +include ../../mk/spksrc.archs.mk + +PKG_NAME = libstdc++6 +PKG_VERS = 6.3.0-18+deb9u1 +PKG_EXT = deb + +PKG_ARCH = +LIB_ARCH = +ifeq ($(findstring $(ARCH),$(ARMv7_ARCHS)),$(ARCH)) +PKG_ARCH = armhf +LIB_DIR = arm-linux-gnueabihf +else ifeq ($(findstring $(ARCH),$(ARMv8_ARCHS)),$(ARCH)) +PKG_ARCH = arm64 +LIB_DIR = aarch64-linux-gnu +else +PKG_ARCH = amd64 +LIB_DIR = x86_64-linux-gnu +endif + +PKG_DIST_NAME = $(PKG_NAME)_$(PKG_VERS)_$(PKG_ARCH).deb +PKG_DIST_SITE = http://http.us.debian.org/debian/pool/main/g/gcc-6/ +PKG_DIR = $(PKG_NAME)-$(PKG_VERS) + +DEPENDS = + +HOMEPAGE = https://gcc.gnu.org/ +COMMENT = The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, Go, and D, as well as libraries for these languages (libstdc++,...). GCC was originally written as the compiler for the GNU operating system. The GNU system was developed to be 100% free software, free in the sense that it respects the user\'s freedom. +LICENSE = GNU GPL v3 + +EXTRACT_PATH = $(WORK_DIR)/$(PKG_DIR) +CONFIGURE_TARGET = nop +COMPILE_TARGET = nop +INSTALL_TARGET = libstdc++6_install + +include ../../mk/spksrc.cross-cc.mk + +.PHONY: libstdc++6_install +libstdc++6_install: + install -m 755 -d $(STAGING_INSTALL_PREFIX)/lib + install -m 644 $(WORK_DIR)/$(PKG_DIR)/usr/lib/$(LIB_DIR)/libstdc++.so.6.0.22 $(STAGING_INSTALL_PREFIX)/lib + ln -s libstdc++.so.6.0.22 $(STAGING_INSTALL_PREFIX)/lib/libstdc++.so.6 diff --git a/cross/libstdc++/PLIST b/cross/libstdc++/PLIST new file mode 100644 index 00000000000..ed8e82b710f --- /dev/null +++ b/cross/libstdc++/PLIST @@ -0,0 +1,2 @@ +lnk:lib/libstdc++.so.6 +lib:lib/libstdc++.so.6.0.22 diff --git a/cross/radarr/Makefile b/cross/radarr/Makefile index 7d4dfa37058..e00f6ee66e9 100644 --- a/cross/radarr/Makefile +++ b/cross/radarr/Makefile @@ -1,23 +1,46 @@ +include ../../mk/spksrc.archs.mk + PKG_NAME = Radarr -PKG_VERS = 3.0.1.4259 +PKG_VERS = 3.0.2.4552 PKG_EXT = tar.gz -PKG_DIST_NAME = $(PKG_NAME).master.$(PKG_VERS).linux.$(PKG_EXT) + +PKG_ARCH = +ifeq ($(findstring $(ARCH),$(ARMv7_ARCHS)),$(ARCH)) +PKG_ARCH = arm +else ifeq ($(findstring $(ARCH),$(ARMv8_ARCHS)),$(ARCH)) +PKG_ARCH = arm64 +else +PKG_ARCH = x64 +endif + +PKG_DIST_NAME = $(PKG_NAME).master.$(PKG_VERS).linux-core-$(PKG_ARCH).$(PKG_EXT) PKG_DIST_SITE = https://github.com/Radarr/Radarr/releases/download/v$(PKG_VERS) PKG_DIR = Radarr DEPENDS = HOMEPAGE = https://radarr.video/ -COMMENT = Radarr is a movie manager like Couchpotato, but based on the Sonarr codebase. It can monitor multiple RSS feeds for new movie releases and will grab, sorts and rename them. It can also be configured to automatically upgrade the quality of files already downloaded if a better quality format becomes available. +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 = GNU GPL v3 +PRE_CHECKSUM_TARGET = radarr_prechecksum +POST_CHECKSUM_TARGET = radarr_postchecksum CONFIGURE_TARGET = nop COMPILE_TARGET = nop INSTALL_TARGET = radarr_install include ../../mk/spksrc.cross-cc.mk +.PHONY: radarr_prechecksum +radarr_prechecksum: + cp digests_dir/$(PKG_ARCH) digests + +.PHONY: radarr_postchecksum +radarr_postchecksum: + rm digests + .PHONY: radarr_install radarr_install: - mkdir -p $(STAGING_INSTALL_PREFIX)/share/$(PKG_DIR) - tar -cf - -C $(WORK_DIR)/$(PKG_DIR) . | tar -xf - -C $(STAGING_INSTALL_PREFIX)/share/$(PKG_DIR) + rm -rf $(WORK_DIR)/$(PKG_DIR)/Radarr.Update + mkdir -p $(STAGING_INSTALL_PREFIX)/share/$(PKG_DIR)/bin + tar -cf - -C $(WORK_DIR)/$(PKG_DIR) . | tar -xf - -C $(STAGING_INSTALL_PREFIX)/share/$(PKG_DIR)/bin diff --git a/cross/radarr/digests b/cross/radarr/digests deleted file mode 100644 index 0a3914ce47d..00000000000 --- a/cross/radarr/digests +++ /dev/null @@ -1,3 +0,0 @@ -Radarr.master.3.0.1.4259.linux.tar.gz SHA1 4c527002b56bc2f636ae41bcb326397c23932a2f -Radarr.master.3.0.1.4259.linux.tar.gz SHA256 e8af5a006b234c0646429040936ff4851aff7c05593a58019ecb2409a3cad653 -Radarr.master.3.0.1.4259.linux.tar.gz MD5 08c8418a9aacee4b5e0e3bad8a4ff6a8 diff --git a/cross/radarr/digests_dir/arm b/cross/radarr/digests_dir/arm new file mode 100644 index 00000000000..c98fd9d7b7c --- /dev/null +++ b/cross/radarr/digests_dir/arm @@ -0,0 +1,3 @@ +Radarr.master.3.0.2.4552.linux-core-arm.tar.gz SHA1 4c305bce6bbd20d596ca756b4811497141ef79ad +Radarr.master.3.0.2.4552.linux-core-arm.tar.gz SHA256 e3095e85861fd5b95b279b87cac6e99dbcba870dff5afdefac508b5cf1a96a6e +Radarr.master.3.0.2.4552.linux-core-arm.tar.gz MD5 1be130931c8e3d6edc17e9ead5a80c77 diff --git a/cross/radarr/digests_dir/arm64 b/cross/radarr/digests_dir/arm64 new file mode 100644 index 00000000000..59f5b169036 --- /dev/null +++ b/cross/radarr/digests_dir/arm64 @@ -0,0 +1,3 @@ +Radarr.master.3.0.2.4552.linux-core-arm64.tar.gz SHA1 0d7e4342d9178f8b4a0f17098d6a0aaeab35b5ae +Radarr.master.3.0.2.4552.linux-core-arm64.tar.gz SHA256 688cd548846e18d8881493d3a17090c18b1b2022ae3edc0a0139d0864c6f26e0 +Radarr.master.3.0.2.4552.linux-core-arm64.tar.gz MD5 1453e87e974a15c3433f6d349800cf21 diff --git a/cross/radarr/digests_dir/x64 b/cross/radarr/digests_dir/x64 new file mode 100644 index 00000000000..5ef04807f36 --- /dev/null +++ b/cross/radarr/digests_dir/x64 @@ -0,0 +1,3 @@ +Radarr.master.3.0.2.4552.linux-core-x64.tar.gz SHA1 0e8f9025a6beab22ecfee11567dcbc9a2652c8fc +Radarr.master.3.0.2.4552.linux-core-x64.tar.gz SHA256 6d387e679c396642f688fb5e4ada9572814319921ba558ee5e7db44d9b1f82d6 +Radarr.master.3.0.2.4552.linux-core-x64.tar.gz MD5 e8c7ac278631c2ce8f12154fefddd534 diff --git a/mk/spksrc.extract.mk b/mk/spksrc.extract.mk index 0cb5423807d..878bdfc4774 100644 --- a/mk/spksrc.extract.mk +++ b/mk/spksrc.extract.mk @@ -18,6 +18,7 @@ EXTRACT_CMD.tar.xz = tar -xJpf $(DIST_FILE) -C $(EXTRACT_PATH) EXTRACT_CMD.tar.lzma = tar --lzma -xpf $(DIST_FILE) -C $(EXTRACT_PATH) EXTRACT_CMD.tar.lz = tar --lzip -xpf $(DIST_FILE) -C $(EXTRACT_PATH) EXTRACT_CMD.zip = unzip $(DIST_FILE) -d $(EXTRACT_PATH) +EXTRACT_CMD.deb = dpkg-deb -R $(DIST_FILE) $(EXTRACT_PATH) endif ifeq ($(strip $(EXTRACT_CMD)),) diff --git a/spk/radarr/Makefile b/spk/radarr/Makefile index 63c7c7fab30..26b5f9982ee 100644 --- a/spk/radarr/Makefile +++ b/spk/radarr/Makefile @@ -1,22 +1,24 @@ SPK_NAME = radarr SPK_VERS = $(shell date +%Y%m%d) -SPK_REV = 14 +SPK_REV = 15 SPK_ICON = src/radarr.png REQUIRED_DSM = 5.0 -# Mono not supported on ppc platforms. C.f. cross/mono/Makefile and references therein for details. -UNSUPPORTED_ARCHS = $(PPC_ARCHS) -DEPENDS = cross/busybox cross/curl cross/mediainfo cross/sqlite cross/radarr +# .NET is not support on PPC, ARM5 or x86 +UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARM5_ARCHES) $(x86_ARCHES) -SPK_DEPENDS = "mono>3.6" +DEPENDS = cross/libstdc++ cross/libmediainfo cross/sqlite cross/radarr -MAINTAINER = ressu -DESCRIPTION = Radarr is a movie manager like Couchpotato, but based on the Sonarr codebase. It can monitor multiple RSS feeds for new movie releases and will grab, sorts and rename them. It can also be configured to automatically upgrade the quality of files already downloaded if a better quality format becomes available. +MAINTAINER = Team Radarr +HELPURL = https://wiki.servarr.com/Radarr +SUPPORTURL = https://radarr.video/\#support + +DESCRIPTION = 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. RELOAD_UI = yes STARTABLE = yes DISPLAY_NAME = Radarr -CHANGELOG = "Update Radarr to v3.0.1.4259" +CHANGELOG = "Update Radarr to v3.0.2.4552 .NET Core" HOMEPAGE = https://radarr.video/ LICENSE = GPLv3 @@ -33,12 +35,10 @@ WIZARDS_DIR = src/wizard/ POST_STRIP_TARGET = radarr_extra_install -BUSYBOX_CONFIG = usrmng -ENV += BUSYBOX_CONFIG="$(BUSYBOX_CONFIG)" - include ../../mk/spksrc.spk.mk .PHONY: radarr_extra_install radarr_extra_install: install -m 755 -d $(STAGING_DIR)/app install -m 644 src/config.xml $(STAGING_DIR)/app/config.xml + echo "PackageVersion=$(SPK_NAME_ARCH)-$(SPK_TCVERS)_$(SPK_VERS)-$(SPK_REV)\nPackageAuthor=[Team Radarr](https://radarr.video)" > $(STAGING_DIR)/share/Radarr/package_info diff --git a/spk/radarr/src/config.xml b/spk/radarr/src/config.xml index 7052343833b..1f4a8199925 100644 --- a/spk/radarr/src/config.xml +++ b/spk/radarr/src/config.xml @@ -1,6 +1,6 @@ - develop + master BuiltIn False 8310 diff --git a/spk/radarr/src/radarr.png b/spk/radarr/src/radarr.png index c958e1bbf7d5c368898405ad7a6a4aaca5603960..2de496f47852714770af563a8d304ee496d9f61f 100644 GIT binary patch literal 50524 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
h>0+egH;ZH3F<#o6a)wflaCfKYp>S& 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 N002ovPDHLkV1mW~WcL67 diff --git a/spk/radarr/src/service-setup.sh b/spk/radarr/src/service-setup.sh index 4de8d0742d4..c7ab08024c0 100644 --- a/spk/radarr/src/service-setup.sh +++ b/spk/radarr/src/service-setup.sh @@ -1,10 +1,6 @@ PATH="${SYNOPKG_PKGDEST}/bin:${PATH}" -MONO_PATH="/var/packages/mono/target/bin" -MONO="${MONO_PATH}/mono" -# Check versions during upgrade -RADARR="${SYNOPKG_PKGDEST}/share/Radarr/Radarr.exe" -SPK_RADARR="${SYNOPKG_PKGINST_TEMP_DIR}/share/Radarr/Radarr.exe" +RADARR="${SYNOPKG_PKGDEST}/share/Radarr/bin/Radarr" # Radarr uses custom Config and PID directories HOME_DIR="${SYNOPKG_PKGDEST}/var" @@ -14,15 +10,10 @@ PID_FILE="${CONFIG_DIR}/Radarr/radarr.pid" # Some have it stored in the root of package LEGACY_CONFIG_DIR="${SYNOPKG_PKGDEST}/.config" -# workaround for mono bug with armv5 (https://github.com/mono/mono/issues/12537) -if [ "$SYNOPKG_DSM_ARCH" == "88f6281" -o "$SYNOPKG_DSM_ARCH" == "88f6282" ]; then - MONO="MONO_ENV_OPTIONS='-O=-aot,-float32' ${MONO_PATH}/mono" -fi - GROUP="sc-download" LEGACY_GROUP="sc-media" -SERVICE_COMMAND="env PATH=${MONO_PATH}:${PATH} HOME=${HOME_DIR} LD_LIBRARY_PATH=${SYNOPKG_PKGDEST}/lib ${MONO} ${RADARR}" +SERVICE_COMMAND="env HOME=${HOME_DIR} LD_LIBRARY_PATH=${SYNOPKG_PKGDEST}/lib ${RADARR}" SVC_BACKGROUND=y service_postinst () @@ -35,12 +26,6 @@ service_postinst () # If nessecary, add user also to the old group before removing it syno_user_add_to_legacy_group "${EFF_USER}" "${USER}" "${LEGACY_GROUP}" syno_user_add_to_legacy_group "${EFF_USER}" "${USER}" "users" - - # Discard legacy obsolete busybox user account - BIN=${SYNOPKG_PKGDEST}/bin - $BIN/busybox --install $BIN >> ${INST_LOG} - $BIN/delgroup "${USER}" "users" >> ${INST_LOG} - $BIN/deluser "${USER}" >> ${INST_LOG} } service_preupgrade () @@ -55,39 +40,17 @@ service_preupgrade () # Create, in case it's missing for some reason mkdir ${CONFIG_DIR} >> ${INST_LOG} 2>&1 fi - - # Is Installed Radarr Binary Ver. >= SPK Radarr Binary Ver.? - CUR_VER=$(${MONO_PATH}/monodis --assembly ${RADARR} | grep "Version:" | awk '{print $2}') - echo "Installed Radarr Binary: ${CUR_VER}" >> ${INST_LOG} - SPK_VER=$(${MONO_PATH}/monodis --assembly ${SPK_RADARR} | grep "Version:" | awk '{print $2}') - echo "Requested Radarr Binary: ${SPK_VER}" >> ${INST_LOG} - if [ "${CUR_VER//.}" -ge "${SPK_VER//.}" ]; then - echo 'KEEP_CUR="yes"' > ${CONFIG_DIR}/KEEP_VAR - echo "[KEEPING] Installed Radarr Binary - Upgrading Package Only" >> ${INST_LOG} - mv ${SYNOPKG_PKGDEST}/share ${INST_VAR} - else - echo 'KEEP_CUR="no"' > ${CONFIG_DIR}/KEEP_VAR - echo "[REPLACING] Installed Radarr Binary" >> ${INST_LOG} - fi } service_postupgrade () { - # Restore Current Radarr Binary if Current Ver. >= SPK Ver. - . ${CONFIG_DIR}/KEEP_VAR - if [ "$KEEP_CUR" == "yes" ]; then - echo "Restoring Radarr version from before upgrade" >> ${INST_LOG} - rm -fr ${SYNOPKG_PKGDEST}/share >> ${INST_LOG} 2>&1 - mv ${INST_VAR}/share ${SYNOPKG_PKGDEST}/ >> ${INST_LOG} 2>&1 - set_unix_permissions "${SYNOPKG_PKGDEST}/share" - fi + # Make Radarr do an update check on start to avoid possible Radarr + # downgrade when synocommunity package is updated + touch ${CONFIG_DIR}/Radarr/update_required set_unix_permissions "${CONFIG_DIR}" # If backup was created before new-style packages # new updates/backups will fail due to permissions (see #3185) set_unix_permissions "/tmp/radarr_backup" set_unix_permissions "/tmp/radarr_update" - - # Remove upgrade Flag - rm ${CONFIG_DIR}/KEEP_VAR } From 875b9650104ee9442aa15a37ef6d152e517480a1 Mon Sep 17 00:00:00 2001 From: Sebastian Schmidt Date: Thu, 11 Mar 2021 10:07:38 +1100 Subject: [PATCH 2/4] Framework: allow MAINTAINER_URL to be set by a package --- Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index a5fdb037efa..59e44e9d62f 100644 --- a/Makefile +++ b/Makefile @@ -157,7 +157,7 @@ local.mk: @echo "PUBLISH_URL=" > $@ @echo "PUBLISH_API_KEY=" >> $@ @echo "MAINTAINER?=" >> $@ - @echo "MAINTAINER_URL=" >> $@ + @echo "MAINTAINER_URL?=" >> $@ @echo "DISTRIBUTOR=" >> $@ @echo "DISTRIBUTOR_URL=" >> $@ @echo "REPORT_URL=" >> $@ @@ -170,8 +170,8 @@ dsm-%: local.mk setup-synocommunity: setup @sed -i -e "s|PUBLISH_URL=.*|PUBLISH_URL=https://api.synocommunity.com|" \ - -e "s|MAINTAINER?=.*|MAINTAINER?=SynoCommunity|" \ - -e "s|MAINTAINER_URL=.*|MAINTAINER_URL=https://synocommunity.com|" \ + -e "s|MAINTAINER\?=.*|MAINTAINER\?=SynoCommunity|" \ + -e "s|MAINTAINER_URL\?=.*|MAINTAINER_URL\?=https://synocommunity.com|" \ -e "s|DISTRIBUTOR=.*|DISTRIBUTOR=SynoCommunity|" \ -e "s|DISTRIBUTOR_URL=.*|DISTRIBUTOR_URL=https://synocommunity.com|" \ -e "s|REPORT_URL=.*|REPORT_URL=https://github.com/SynoCommunity/spksrc/issues|" \ From 7b1877fbcb90b35c04bd27e6d5b783d11f47d746 Mon Sep 17 00:00:00 2001 From: Sebastian Schmidt Date: Thu, 11 Mar 2021 10:08:43 +1100 Subject: [PATCH 3/4] Radarr: code review --- cross/libstdc++/Makefile | 9 ++------- cross/radarr/Makefile | 6 +----- spk/radarr/Makefile | 13 ++++++++----- spk/radarr/src/service-setup.sh | 2 -- 4 files changed, 11 insertions(+), 19 deletions(-) diff --git a/cross/libstdc++/Makefile b/cross/libstdc++/Makefile index 3f41d0130f9..a90980163b4 100644 --- a/cross/libstdc++/Makefile +++ b/cross/libstdc++/Makefile @@ -4,25 +4,20 @@ PKG_NAME = libstdc++6 PKG_VERS = 6.3.0-18+deb9u1 PKG_EXT = deb -PKG_ARCH = -LIB_ARCH = +PKG_ARCH = amd64 +LIB_DIR = x86_64-linux-gnu ifeq ($(findstring $(ARCH),$(ARMv7_ARCHS)),$(ARCH)) PKG_ARCH = armhf LIB_DIR = arm-linux-gnueabihf else ifeq ($(findstring $(ARCH),$(ARMv8_ARCHS)),$(ARCH)) PKG_ARCH = arm64 LIB_DIR = aarch64-linux-gnu -else -PKG_ARCH = amd64 -LIB_DIR = x86_64-linux-gnu endif PKG_DIST_NAME = $(PKG_NAME)_$(PKG_VERS)_$(PKG_ARCH).deb PKG_DIST_SITE = http://http.us.debian.org/debian/pool/main/g/gcc-6/ PKG_DIR = $(PKG_NAME)-$(PKG_VERS) -DEPENDS = - HOMEPAGE = https://gcc.gnu.org/ COMMENT = The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, Go, and D, as well as libraries for these languages (libstdc++,...). GCC was originally written as the compiler for the GNU operating system. The GNU system was developed to be 100% free software, free in the sense that it respects the user\'s freedom. LICENSE = GNU GPL v3 diff --git a/cross/radarr/Makefile b/cross/radarr/Makefile index e00f6ee66e9..34eb4b10b0e 100644 --- a/cross/radarr/Makefile +++ b/cross/radarr/Makefile @@ -4,21 +4,17 @@ PKG_NAME = Radarr PKG_VERS = 3.0.2.4552 PKG_EXT = tar.gz -PKG_ARCH = +PKG_ARCH = x64 ifeq ($(findstring $(ARCH),$(ARMv7_ARCHS)),$(ARCH)) PKG_ARCH = arm else ifeq ($(findstring $(ARCH),$(ARMv8_ARCHS)),$(ARCH)) PKG_ARCH = arm64 -else -PKG_ARCH = x64 endif PKG_DIST_NAME = $(PKG_NAME).master.$(PKG_VERS).linux-core-$(PKG_ARCH).$(PKG_EXT) PKG_DIST_SITE = https://github.com/Radarr/Radarr/releases/download/v$(PKG_VERS) PKG_DIR = Radarr -DEPENDS = - 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 = GNU GPL v3 diff --git a/spk/radarr/Makefile b/spk/radarr/Makefile index 26b5f9982ee..823eae2ee22 100644 --- a/spk/radarr/Makefile +++ b/spk/radarr/Makefile @@ -5,17 +5,17 @@ SPK_ICON = src/radarr.png REQUIRED_DSM = 5.0 -# .NET is not support on PPC, ARM5 or x86 +# .NET is not supported on PPC, ARM5 or x86 UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARM5_ARCHES) $(x86_ARCHES) DEPENDS = cross/libstdc++ cross/libmediainfo cross/sqlite cross/radarr MAINTAINER = Team Radarr +MAINTAINER_URL = https://radarr.video/ HELPURL = https://wiki.servarr.com/Radarr SUPPORTURL = https://radarr.video/\#support DESCRIPTION = 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. -RELOAD_UI = yes STARTABLE = yes DISPLAY_NAME = Radarr CHANGELOG = "Update Radarr to v3.0.2.4552 .NET Core" @@ -37,8 +37,11 @@ POST_STRIP_TARGET = radarr_extra_install include ../../mk/spksrc.spk.mk +PACKAGE_VERSION = $(SPK_NAME_ARCH)-$(SPK_TCVERS)_$(SPK_VERS)-$(SPK_REV) +PACKAGE_AUTHOR = [Team Radarr](https://radarr.video) + .PHONY: radarr_extra_install radarr_extra_install: - install -m 755 -d $(STAGING_DIR)/app - install -m 644 src/config.xml $(STAGING_DIR)/app/config.xml - echo "PackageVersion=$(SPK_NAME_ARCH)-$(SPK_TCVERS)_$(SPK_VERS)-$(SPK_REV)\nPackageAuthor=[Team Radarr](https://radarr.video)" > $(STAGING_DIR)/share/Radarr/package_info + @install -m 755 -d $(STAGING_DIR)/app + @install -m 644 src/config.xml $(STAGING_DIR)/app/config.xml + @echo "PackageVersion=$(PACKAGE_VERSION)\nPackageAuthor=$(PACKAGE_AUTHOR)" > $(STAGING_DIR)/share/Radarr/package_info diff --git a/spk/radarr/src/service-setup.sh b/spk/radarr/src/service-setup.sh index c7ab08024c0..5fab8a6f98a 100644 --- a/spk/radarr/src/service-setup.sh +++ b/spk/radarr/src/service-setup.sh @@ -1,5 +1,3 @@ -PATH="${SYNOPKG_PKGDEST}/bin:${PATH}" - RADARR="${SYNOPKG_PKGDEST}/share/Radarr/bin/Radarr" # Radarr uses custom Config and PID directories From 9771396eb5d543210c9cce0d8a8c229279a3f44b Mon Sep 17 00:00:00 2001 From: Sebastian Schmidt Date: Thu, 11 Mar 2021 10:21:20 +1100 Subject: [PATCH 4/4] Framework fix local.md --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 59e44e9d62f..b285142fa9a 100644 --- a/Makefile +++ b/Makefile @@ -170,8 +170,8 @@ dsm-%: local.mk setup-synocommunity: setup @sed -i -e "s|PUBLISH_URL=.*|PUBLISH_URL=https://api.synocommunity.com|" \ - -e "s|MAINTAINER\?=.*|MAINTAINER\?=SynoCommunity|" \ - -e "s|MAINTAINER_URL\?=.*|MAINTAINER_URL\?=https://synocommunity.com|" \ + -e "s|MAINTAINER?=.*|MAINTAINER?=SynoCommunity|" \ + -e "s|MAINTAINER_URL?=.*|MAINTAINER_URL?=https://synocommunity.com|" \ -e "s|DISTRIBUTOR=.*|DISTRIBUTOR=SynoCommunity|" \ -e "s|DISTRIBUTOR_URL=.*|DISTRIBUTOR_URL=https://synocommunity.com|" \ -e "s|REPORT_URL=.*|REPORT_URL=https://github.com/SynoCommunity/spksrc/issues|" \