Skip to content

Commit

Permalink
Add prowlarr
Browse files Browse the repository at this point in the history
  • Loading branch information
ta264 committed May 10, 2022
1 parent fa4f477 commit 811f708
Show file tree
Hide file tree
Showing 10 changed files with 215 additions and 0 deletions.
34 changes: 34 additions & 0 deletions cross/prowlarr/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
PKG_NAME = Prowlarr
PKG_VERS = 0.3.0.1730
PKG_EXT = tar.gz
PKG_DIST_NAME = $(PKG_NAME).develop.$(PKG_VERS).linux-core-$(PKG_DIST_ARCH).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/Prowlarr/Prowlarr/releases/download/v$(PKG_VERS)
PKG_DIR = Prowlarr

DEPENDS =

UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) $(i686_ARCHS)

HOMEPAGE = https://prowlarr.com/
COMMENT = Prowlarr is an indexer manager/proxy built on the popular *arr .net/reactjs base stack to integrate with your various PVR apps. Prowlarr supports management of both Torrent Trackers and Usenet Indexers. It integrates seamlessly with Lidarr, Mylar3, Radarr, Readarr, and Sonarr offering complete management of your indexers with no per app Indexer setup required (we do it all).

INSTALL_TARGET = prowlarr_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))
PKG_DIST_ARCH = arm
else ifeq ($(findstring $(ARCH),$(ARMv8_ARCHS)),$(ARCH))
PKG_DIST_ARCH = arm64
endif

include ../../mk/spksrc.install-resources.mk

.PHONY: prowlarr_install
prowlarr_install:
rm -rf $(WORK_DIR)/$(PKG_DIR)/Prowlarr.Update
mkdir -p $(STAGING_INSTALL_PREFIX)/usr/lib/prowlarr/bin
tar -cf - -C $(WORK_DIR)/$(PKG_NAME) . | tar -xf - -C $(STAGING_INSTALL_PREFIX)/usr/lib/prowlarr/bin
1 change: 1 addition & 0 deletions cross/prowlarr/PLIST
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rsc:usr/lib/prowlarr
9 changes: 9 additions & 0 deletions cross/prowlarr/digests
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Prowlarr.develop.0.3.0.1730.linux-core-x64.tar.gz SHA1 e24ff8bc15ba8070350108b8dbfb46769fe5da08
Prowlarr.develop.0.3.0.1730.linux-core-x64.tar.gz SHA256 7a264b8291dee49e8e9475da388a435e6f8896cfd0e5d2b9bb335f3dcde0555e
Prowlarr.develop.0.3.0.1730.linux-core-x64.tar.gz MD5 c45e15240c8a8e552677178dcff60d34
Prowlarr.develop.0.3.0.1730.linux-core-arm.tar.gz SHA1 5c3ddbfd0d2a12c19a38d55f2d21a540dfa9870d
Prowlarr.develop.0.3.0.1730.linux-core-arm.tar.gz SHA256 8f758ee24db731f5156110bdabf400f01b715c7ab78c82def8bf1041e8d754bd
Prowlarr.develop.0.3.0.1730.linux-core-arm.tar.gz MD5 0a03f2f15b6b96716e1804a39fd9ce05
Prowlarr.develop.0.3.0.1730.linux-core-arm64.tar.gz SHA1 c853a7f839c8828b6fcda8ef6de7819e729ce3d4
Prowlarr.develop.0.3.0.1730.linux-core-arm64.tar.gz SHA256 52e54727d5c5160b93aa13adb88291b0d99bb35b95f60940d7b6b11bdee47633
Prowlarr.develop.0.3.0.1730.linux-core-arm64.tar.gz MD5 82f923ac4852ed90206e7bd1223197ac
68 changes: 68 additions & 0 deletions spk/prowlarr/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
SPK_NAME = prowlarr_official
SPK_CONFLICT = prowlarr
SPK_VERS = 0.3.0.1730
SPK_ICON = src/prowlarr.png

REQUIRED_MIN_DSM = 6.0

# .NET is not supported on PPC, ARM5, ARM7L and x86
UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(ARMv7L_ARCHS) $(i686_ARCHS)

DEPENDS = cross/prowlarr

MAINTAINER = Team Prowlarr
MAINTAINER_URL = https://prowlarr.com/
HELPURL = https://wiki.servarr.com/Prowlarr

This comment has been minimized.

Copy link
@bakerboy448

bakerboy448 May 12, 2022

Lowercase p

SUPPORTURL = https://prowlarr.audio/\#support

This comment has been minimized.

Copy link
@bakerboy448

bakerboy448 May 12, 2022

typo


DESCRIPTION = Prowlarr is an indexer manager/proxy built on the popular *arr .net/reactjs base stack to integrate with your various PVR apps. Prowlarr supports management of both Torrent Trackers and Usenet Indexers. It integrates seamlessly with Lidarr, Mylar3, Radarr, Readarr, and Sonarr offering complete management of your indexers with no per app Indexer setup required (we do it all).
STARTABLE = yes
DISPLAY_NAME = Prowlarr
CHANGELOG = "${DISPLAY_NAME} v$(SPK_VERS)"

HOMEPAGE = $(MAINTAINER_URL)
LICENSE = GPLv3

SERVICE_USER = auto
SERVICE_SETUP = src/service-setup.sh
SERVICE_PORT = 9696
SERVICE_PORT_TITLE = $(DISPLAY_NAME)

# Admin link for in DSM UI
ADMIN_PORT = $(SERVICE_PORT)

WIZARDS_DIR = src/wizard/

POST_STRIP_TARGET = app_extra_install

# DSM prevents executing from /tmp in 7.1
USE_ALTERNATE_TMPDIR = 1

include ../../mk/spksrc.common.mk

ifeq ($(call version_lt, ${TCVERSION}, 7.0),1)
DEPENDS += cross/bubblewrap cross/debian-buster
app_extra_install: rootfs_install
else ifeq ($(ARCH), comcerto2k)
DEPENDS += cross/debian-buster
SPK_DEPENDS = "bubblewrap>=0.6.1"
app_extra_install: rootfs_install
else
DEPENDS += cross/sqlite cross/prowlarr
endif

include ../../mk/spksrc.spk.mk

PACKAGE_VERSION = $(SPK_VERS)-spk$(SPK_REV)-$(SPK_NAME_ARCH)-$(SPK_TCVERS)
PACKAGE_AUTHOR = [$(MAINTAINER)]($(MAINTAINER_URL))

.PHONY: app_extra_install rootfs_install

rootfs_install:
sudo debuerreotype-apt-get $(STAGING_DIR)/rootfs update; \
sudo debuerreotype-apt-get $(STAGING_DIR)/rootfs install -y --no-install-recommends --no-install-suggests ca-certificates locales tzdata libicu63 libssl1.1 libstdc++6 zlib1g libsqlite3-0; \
rm -rf $(STAGING_DIR)/tmp/* $(STAGING_DIR)/var/lib/apt/lists/* $(STAGING_DIR)/var/tmp/*; \

app_extra_install:
@install -m 755 -d $(STAGING_DIR)/app
@echo "PackageVersion=$(PACKAGE_VERSION)\nPackageAuthor=$(PACKAGE_AUTHOR)" > $(STAGING_DIR)/usr/lib/prowlarr/package_info
Binary file added spk/prowlarr/src/prowlarr.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
55 changes: 55 additions & 0 deletions spk/prowlarr/src/service-setup.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
APP_LOWER="prowlarr"
APP_UPPER="Prowlarr"

GROUP="sc-download"

USR_LIB="/usr/lib/${APP_LOWER}"
PID_FILE="${SYNOPKG_PKGVAR}/${APP_LOWER}.pid"

# If the bwrap binary is in this package, use it, otherwise use from standalone package.
BWRAP="${SYNOPKG_PKGDEST}/bin/bwrap"
if [ ! -f "${BWRAP}" ]; then
BWRAP="/var/packages/bubblewrap/target/bin/bwrap"
fi

# Some versions include a rootfs to create a chroot container with newer libraries.
ROOTFS="${SYNOPKG_PKGDEST}/rootfs"
if [ -d "${ROOTFS}" ]; then
APP="${USR_LIB}/bin/${APP_UPPER}"
CONFIG_DIR="/var/lib/${APP_LOWER}"
SERVICE_COMMAND="${BWRAP} --bind ${ROOTFS} / --proc /proc --dev /dev --ro-bind /etc/resolv.conf /etc/resolv.conf --bind ${SYNOPKG_PKGDEST}${USR_LIB} ${USR_LIB} --bind ${SYNOPKG_PKGVAR} ${CONFIG_DIR} --bind /volume1 /volume1 --share-net --setenv HOME ${SYNOPKG_PKGVAR} ${APP} --nobrowser --data=${CONFIG_DIR}"
else
APP="${SYNOPKG_PKGDEST}${USR_LIB}/bin/${APP_UPPER}"
SERVICE_COMMAND="env HOME=${SYNOPKG_PKGVAR} LD_LIBRARY_PATH=${SYNOPKG_PKGDEST}/lib ${APP} --nobrowser --data=${SYNOPKG_PKGVAR}"
fi

SVC_BACKGROUND=y

fix_permissions ()
{
if [ ${SYNOPKG_DSM_VERSION_MAJOR} -lt 7 ]; then
if [ -f "${BWRAP}" ]; then
chown root:root "${BWRAP}"
chmod u+s "${BWRAP}"
fi

set_unix_permissions "${SYNOPKG_PKGVAR}"
fi
}

service_postinst ()
{
# Move config.xml to .config
mv ${SYNOPKG_PKGDEST}/app/config.xml ${SYNOPKG_PKGVAR}

fix_permissions
}

service_postupgrade ()
{
# Do an update check on start to avoid possible
# downgrade when synocommunity package is updated
touch ${SYNOPKG_PKGVAR}/update_required

fix_permissions
}
11 changes: 11 additions & 0 deletions spk/prowlarr/src/wizard/install_uifile
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[{
"step_title": "Starting and updating Prowlarr",
"items": [{
"desc": "The first time Prowlarr is started it might take a few moments for the interface to become available!<br><br>Keep Prowlarr up-to-date by using Prowlarr's built-in updater.<br>Navigate to System>Updates in the Prowlarr UI."
}]
},{
"step_title": "DSM Permissions",
"items": [{
"desc": "Permissions for all download-related packages are managed with the group <b>'sc-download'</b> in DSM."
}]
}]
11 changes: 11 additions & 0 deletions spk/prowlarr/src/wizard/install_uifile_fre
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[{
"step_title": "Mettre à jour Prowlarr",
"items": [{
"desc": "Au premier démarrage de Prowlarr cela peut prendre un moment avant que l'interface ne soit disponible !<br><br>Garder Prowlarr à jour en utilisant System>Updates dans l'interface Prowlarr."
}]
},{
"step_title": "Permissions DSM",
"items": [{
"desc": "Les permissions de toutes les applications de téléchargement sont gérées par le groupe <b>'sc-download'</b> dans DSM."
}]
}]
13 changes: 13 additions & 0 deletions spk/prowlarr/src/wizard/upgrade_uifile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[{
"step_title": "Updating Prowlarr",
"items": [{
"desc": "Keep Prowlarr up-to-date by using Prowlarr's built-in updater.<br>Navigate to System>Updates in the Prowlarr UI."
}]
}, {
"step_title": "DSM Permissions",
"items": [{
"desc": "Permissions for all download-related packages are managed with the group <b>'sc-download'</b> in DSM."
},{
"desc": "<strong style='color:red'>NOTE:</strong> The package upgrade will try to set the correct permissions on your folders. If you get permission errors within Radarr, manually set Read/Write permissions for the 'sc-download' group on the reported folders using File Station."
}]
}]
13 changes: 13 additions & 0 deletions spk/prowlarr/src/wizard/upgrade_uifile_fre
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[{
"step_title": "Mettre à jour Prowlarr",
"items": [{
"desc": "Garder Prowlarr à jour en utilisant System>Updates dans l'interface Prowlarr."
}]
},{
"step_title": "Permissions DSM",
"items": [{
"desc": "Les permissions de toutes les applications de téléchargement sont gérées par le groupe <b>'sc-download'</b> dans DSM."
},{
"desc": "<strong style='color:red'>NOTE:</strong> La mise à jour de l'application va tenter de corriger les permissions des répertoires. En cas d'erreur de permission dans Radarr, donner les droits de Lecture/Ecriture au groupe 'sc-download' sur les répertoires mentionnés depuis File Station."
}]
}]

0 comments on commit 811f708

Please sign in to comment.