# Maintainer: txtsd <aur.archlinux@ihavea.quest> # Maintainer: Donald Webster <fryfrog@gmail.com> # Helpful URL: https://prowlarr.servarr.com/v1/update/develop?version=0.0.0.0&os=linux&runtime=netcore&arch=x64 pkgname=prowlarr-develop _pkgname=Prowlarr pkgver=1.36.3.5071 pkgrel=1 pkgdesc='Indexer manager/proxy for usenet and torrent users (develop branch)' arch=(x86_64 aarch64 armv7h) url='https://prowlarr.com' license=('GPL-3.0-or-later') groups=(servarr-develop) depends=( aspnet-runtime-6.0 gcc-libs glibc sqlite ) makedepends=(dotnet-sdk-6.0 yarn) optdepends=( 'postgresql: postgresql database' 'sabnzbd: usenet downloader' 'nzbget: usenet downloader' 'qbittorrent: torrent downloader' 'deluge: torrent downloader' 'rtorrent: torrent downloader' 'nodejs-flood: torrent downloader' 'vuze: torrent downloader' 'aria2: torrent downloader' 'transmission-cli: torrent downloader (CLI and daemon)' 'transmission-gtk: torrent downloader (GTK+)' 'transmission-qt: torrent downloader (Qt)' 'jackett: torrent indexer proxy' 'nzbhydra2: torznab and usenet indexer proxy' 'flaresolverr: A proxy server to bypass Cloudflare protection' 'sonarr: automatically integrates with and syncs indexers' 'radarr: automatically integrates with and syncs indexers' 'lidarr: automatically integrates with and syncs indexers' 'readarr: automatically integrates with and syncs indexers' 'whisparr: automatically integrates with and syncs indexers' 'mylar3: automatically integrates with and syncs indexers' 'lazylibrarian: automatically integrates with and syncs indexers' ) provides=(prowlarr) conflicts=(prowlarr) install=prowlarr.install source=( "${pkgname}-${pkgver}.tar.gz::https://github.com/Prowlarr/Prowlarr/archive/refs/tags/v${pkgver}.tar.gz" package_info prowlarr.service prowlarr.sysusers prowlarr.tmpfiles ) sha256sums=('07b7599073d680ccf86700fdb0d89f94ed96de54e1f45533a88e00c956b95327' '15b6ed4b78eafc6d0059c87d71945782f1600c57047562a0865fd1779f7ee293' '5aa5a7800453d13948430744ca9f32584bf64f09daadf534e6eb2f6c5c452b4c' 'ee61f5621eae6ab932fb093a4f75a0ab11bf9e3ca829f0d34c25014f68aeff7d' '75591d19518bafc60862c60848ecad84f92c7f2b47b2b4eeafcbbbd650a43043') case ${CARCH} in x86_64) _CARCH='x64' ;; aarch64) _CARCH='arm64' ;; armv7h) _CARCH='arm' ;; esac _framework='net6.0' _runtime="linux-${_CARCH}" _output='_output' _artifacts="${_output}/${_framework}/${_runtime}/publish" _branch='develop' prepare() { cd "${_pkgname}-${pkgver}" # Prepare backend export DOTNET_CLI_TELEMETRY_OPTOUT=1 export DOTNET_NOLOGO=1 export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 dotnet restore "src/${_pkgname}.sln" \ --runtime "${_runtime}" \ --locked-mode # Prepare frontend yarn install --frozen-lockfile --network-timeout 120000 } build() { cd "${_pkgname}-${pkgver}" # Build backend export DOTNET_CLI_TELEMETRY_OPTOUT=1 export DOTNET_NOLOGO=1 export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 dotnet build "src/${_pkgname}.sln" \ --framework "${_framework}" \ --runtime "${_runtime}" \ --no-self-contained \ --no-restore \ --configuration Release \ -p:Platform=Posix \ -p:AssemblyVersion=${pkgver} \ -p:AssemblyConfiguration=${_branch} \ -p:RuntimeIdentifiers=${_runtime} \ -t:PublishAllRids \ && dotnet build-server shutdown # Build servers do not terminate automatically # Build frontend yarn run build --env production } package() { cd "${_pkgname}-${pkgver}" install -dm755 "${pkgdir}/usr/lib/prowlarr/bin/UI" # Remove Service Helpers, Update, and Windows files rm "${_artifacts}/ServiceInstall"* rm "${_artifacts}/ServiceUninstall"* rm "${_artifacts}/Prowlarr.Windows."* # Copy backend cp -dr "${_artifacts}/"* "${pkgdir}/usr/lib/prowlarr/bin" # Copy frontend cp -dr "${_output}/UI/"* "${pkgdir}/usr/lib/prowlarr/bin/UI" # License install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}" # Disable built in updater. cd "${srcdir}" install -Dm644 package_info "${pkgdir}/usr/lib/prowlarr" echo "PackageVersion=${pkgver}-${pkgrel}" >> "${pkgdir}/usr/lib/prowlarr/package_info" # Systemd install -Dm644 prowlarr.service "${pkgdir}/usr/lib/systemd/system/prowlarr.service" install -Dm644 prowlarr.sysusers "${pkgdir}/usr/lib/sysusers.d/prowlarr.conf" install -Dm644 prowlarr.tmpfiles "${pkgdir}/usr/lib/tmpfiles.d/prowlarr.conf" }