Pullarr

Pullarr

Docker app from FenrisSkoll's Repository

Overview

Manage comic metadata, monitoring and Wanted acquisition, Reading Orders, quality profiles and verified upgrades. Browse GetComics Discover; use SABnzbd, NZBGet or qBittorrent with Prowlarr or Torznab. Reviewed archive maintenance preserves page bytes. Configure authentication before exposing beyond your trusted network.

Pullarr

Manage, monitor and organize your comic library.

Pullarr is a comic library and acquisition manager derived from Kapowarr. This is an actively developed, single-user application, not a claim of production maturity. Back up your database and comics before upgrades or filesystem operations.

Capabilities

  • ComicVine, Metron and GCD metadata with explicit provider identity and reviewed Provider Switching. Configure your own provider credentials in Settings.
  • Library monitoring and Wanted acquisition, distinguishing Missing from Upgrade.
  • Prowlarr/Newznab and direct Torznab search; SABnzbd and NZBGet Usenet clients; qBittorrent torrent acquisition; existing GetComics direct downloads.
  • Source-preserving torrent import, exact job correlation, seeding policies and reviewed cleanup. Client-managed retention is the safe default.
  • Collections, precision-aware release Calendar, exact-issue Reading Orders, CBL import/export and reviewed subscriptions.
  • Revisioned Quality Profiles, verified upgrades and acquisition provenance. Release labels are claims, not verified image quality.
  • GetComics Discover: bounded recent observations, local browsing and opt-in polling. Discover polling never automatically grabs a release.
  • Reviewed Maintenance, including CBR → CBZ, CBZ integrity verification and explicit deterministic repack. Page bytes and admitted metadata are preserved; replacements are journaled and never mutate shared seed bytes in place.

Use sources only for content you are entitled to obtain. Provider and indexer availability, terms and rate limits are outside Pullarr's control.

Docker quick start

The Unraid Community Applications template is included in this repository. Listing remains pending official CA Validate/Scan and review. Use persistent appdata and one common /data mount for media and downloads; hardlinks also require compatible underlying storage. See the Unraid guide.

Docker must be installed. From this source checkout:

docker build -t pullarr:local .
docker compose -f docker-compose.pullarr.yml up -d

Open http://127.0.0.1:5658. The example exposes only the host's loopback interface and uses persistent named volumes. Add /comics as a library root. There is no published Pullarr image or project host URL assumed by these files.

Set authentication in Settings → General → Security before permitting any other machine to connect. A fresh installation has no login password: anyone who can reach it can obtain its API key. Copy/Show/Hide are explicit API-key controls; Regenerate is separate. Do not expose Pullarr directly to the Internet.

Read configuration and deployment for bind mounts, download visibility, permissions, backups and upgrades. Do not run two Pullarr processes against the same database.

For Unraid storage, UID/GID and hardlink guidance, see Unraid deployment. Community Applications availability remains pending official Validate/Scan and review.

Source installation

Tested with Python 3.11 on Windows and Python 3.13 on Linux. Python 3.11+ is required. Install declared dependencies in an isolated environment:

python -m venv .venv
# Activate .venv using your shell's normal activation command.
python -m pip install -r requirements.txt
python Pullarr.py

Fresh source installs bind to 127.0.0.1:5656. Existing configured bind addresses are preserved. python Pullarr.py --help lists path and hosting options. Kapowarr.py, Kapowarr.db, stable settings and browser-storage names are retained compatibility identifiers; do not rename an existing database.

Configuration

Add metadata providers in Settings before searching for volumes. Search Sources are separate from metadata providers: Prowlarr or direct Torznab supply releases, not canonical publication identity. Test configured sources and download clients. NZBGet 21+ and qBittorrent 5.x / Web API 2.9.3+ are the supported added clients. Create the desired qBittorrent category first. Managed clients permit one enabled client per protocol; explicitly selected legacy SABnzbd retains Usenet precedence.

Map remote client paths to paths actually mounted inside Pullarr. A remote path mapping cannot create a Docker mount. For torrent hardlinks, both source and library must be visible on the same underlying filesystem/device. Cross-device imports use verified copies. Neither mode destructively moves seeding payloads. Keep source data until import/review is complete and retention requirements permit cleanup. See deployment and operating safely.

Archives and limits

The public distribution uses UnRAR 7.23, not proprietary trial RAR 6.24. Windows/Linux x64 reader binaries are separately licensed; see third-party notices. Other platforms need a compatible unrar command on PATH. Legacy RAR creation requires a separately installed, appropriately licensed rar command; it is not provided by UnRAR.

Maintenance is explicit: select files, scan, review, then confirm. Healthy CBZs are not automatically rewritten. Supported page payloads are JPEG, PNG and WebP. Encrypted/multipart or unsafe archives require review. Batches are bounded; recovery protects interrupted operations, not unlimited undo after completion. There is no PDF conversion, page editor, arbitrary split/combine or image recompression. qBittorrent is the only supported torrent client.

Development, releases and security

The completed implementation programmes are summarized in the changelog. Private development diaries, runtime evidence and agent instructions are intentionally not part of this public source candidate. The inherited application version 1.3.2 is retained for the first deliberate public release (v1.3.2). The official image reference is ghcr.io/fenrisskoll/pullarr:latest; verify anonymous availability before installing or submitting the CA template.

License and attribution

Pullarr's application code is GPL-3.0; see LICENSE. This is a modified Kapowarr-derived project, not an official Kapowarr release. Copyright notices remain in source. CLU / Clu Comics was an implementation reference where licensed compatibly. See NOTICE and third-party notices. No warranty is provided. Independent bundled utilities keep their own licenses. No Pullarr donation, community or support URL is fabricated.

Install Pullarr on Unraid in a few clicks.

Find Pullarr in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for Pullarr Review the template variables and paths Click Install

Requirements

Linux x86_64. Persistent appdata and access to client downloads. A common data mount and compatible underlying filesystem are required for hardlinks; safe copy fallback is supported.

Related apps

Explore more like this

Explore all

Details

Repository
ghcr.io/fenrisskoll/pullarr:latest
Last Updated2026-10-03
First Seen2026-10-03

Runtime arguments

Web UI
http://[IP]:[PORT:5656]
Network
bridge
Shell
bash
Privileged
false

Template configuration

WebUIPorttcp

Pullarr WebUI. Enable authentication before LAN access; never expose directly to the Internet.

Target
5656
Default
5656
DatabasePathrw

Persistent database and settings. Back up before upgrades.

Target
/app/db
Default
/mnt/user/appdata/pullarr/db
LogsPathrw

Persistent application logs; treat as private.

Target
/app/logs
Default
/mnt/user/appdata/pullarr/logs
Pullarr temporary downloadsPathrw

Pullarr-controlled acquisition workspace. Not the external download client's completed-data path.

Target
/app/temp_downloads
Default
/mnt/user/appdata/pullarr/temp_downloads
DataPathrw

Common parent containing library and client downloads, e.g. media/comics and downloads/torrents. Use the same /data layout in clients; hardlinks also require compatible underlying storage.

Target
/data
Default
/mnt/user/data
PUIDVariable

UID controlling container-created file ownership. Pre-authorize this UID on your data share.

Default
99
PGIDVariable

GID controlling container-created file ownership.

Default
100
TZVariable

Timezone used by container processes, e.g. Etc/UTC.

Default
Etc/UTC