Comment by eleventen
4 days ago
> Sonarr, Lidarr, Radarr, etc. Every time I read about setting it up, it just sounds like a resource-intensive mess that’s fundamentally prone to frequent breakage. That’s the opposite of what I’m looking for when choosing self-hosted services.
I just checked on my *arr stack. Sonarr and Radarr idle at 157MB and 159MB of memory and approximately no CPU. Jellyfin currently idles at 330MB. I'm not sure where you got this impression from. I grant these tools are complicated and have somewhat clumsy UX, but they aren't especially heavy to run and are not fragile.
OP, point your :robot: at https://github.com/subdavis/selfhosted/blob/main/docker-comp... and ask for an explanation. It's a single compose file that illustrates how the *arrs, transmission, and jellyfin all work together. I'm sure you can set it up :)
Indeed. The other thing to point out is that, once you have set them up, they will chug along fine for years with near zero input.
Here is the stack I recommend:
* Radarr (movies) with optional second instance for 4K versions
* Sonarr (shows) with optional second instance for 4K versions
* Sonarr (anime), separate instance to have control over quality settings
* Prowlarr (tracker/indexer management)
* SABnzbd (Usenet)
* qBittorrent (torrents)
I would also recommend consulting the TRaSH guide to tune your setup and ensure you’re grabbing quality releases. From there, the next logical step is Profilarr :)
I have this stack for 1 year and had 0 issues, 0 maintenance. It just werks.
Im having problem on some new releases where it downloads clear malware with. Exe files, its detecting it and not moving them to my jellyfine storage but it always requires manual intervention. I havent been able to find a way to stop sonarr from grabbing releases before their official releas and with n amount of seedwrs/leechers
[dead]
> I would also recommend consulting the TRaSH guide to tune your setup
Yes and no. E.g. I find Trash guide to quality profiles/settings useless. I wish *arr apps shipped with decent modern quality by default. No, I'm not downloading and watching a Quantum Quality UXZHD Post-Partum HDR BVIU-49.3 format. No one is.
E.g. profilarr pulls in a more sane set of profiles: https://dictionarry.dev/quality-profile
TRaSH is definitely for power users. It becomes much easier to work with when configured with Recyclarr, but there is still a learning curve.
One of the most valuable things for me is the ability to rank different aspects of releases across media types. For example, I prefer dual audio anime, unless the sub is much higher quality. Same idea for surround sound and release groups. I also want to ignore things like dual audio that is non-English, or hardcoded French subs, etc.
1 reply →
Instead of multiple Radarr and Sonarr instances, wouldn't it be simpler to have multiple quality profiles on a single instance?
Multiple instances are needed if you want multiple versions of a given movie or episode. For example, I have a Dolby Vision device that works great with certain files, but on some other devices the file works poorly and doesn't transcode well. Plex handles multiple files fine.
Definitely not a usecase for everyone
The arrs have extensive and solid capabilities for filtering for the quality you want, but they don’t really offer the ability to manage multiple qualities for one specific item.
It’s also nice to have them separated because you can set up distinct plex libraries mapped to the sonarr and radarr 4K media directories. I don’t give everyone access to 4K content because no matter how many times I explain direct play, some people just seem to love transcoding to 720p. So I can limit 4K library access on plex and disable transcoding altogether for plex content.
I also don’t want every item I add in both 4K and 1080p.
Obviously the instance is to hide away from wife, kids and rest of the family. I recommend stashapp.
4 replies →
Curious question, I host a single instance of sonarr that supports anime through tags. Is there an advantage to hosting 2 instances instead?
Single instance works fine, but a separate instance allows you to set global quality settings that are more accurate for anime: https://trash-guides.info/Sonarr/Sonarr-Quality-Settings-Fil...
5 replies →
sabnzbd can be replaced with nzbdav or similar tools (infinidysk, altmount) if you want to free up storage and stream directly from usenet.
Or, even better, the entire arr stack can be replaced with stremio to just keep everything on-demand instead of curating a library at all.
“Even better” is relative. Some people like having media stored locally instead of relying on torrent streaming availability.
Usenet streaming sounds cool, but with releases being DMCAd so frequently, I don’t see how it would be practical for anything but the most recent content.
Also, I imagine that Stremio without Debrid (or equivalent) is kind of a terrible experience most of the time.
2 replies →
> stremio
Is this the latest rendition of Popcorn Time?
3 replies →
With agents I am surprised nobody has combined Plex + qbittorrrent + seerr + *arr into one mega app
There is, it was an Android app called Popcorn Time.
Quite a feat considering it was developed without AI help.
There are a million docker-compose files floating around for exactly this that just need a little bit of configuration.
1 reply →
I actually prefer the separation. Limited blast radius is one advantage, but I also think that the media server and downloader should be separate things anyways.
But I do think that there is an opportunity to merge Sonarr and Radarr.
That app would be blatantly illegal
3 replies →
The interfaces of arr stack are ugly, and linking qbit to indexer manager to arr app is needlessly complex. Maybe there could be plugins in one app like qbit.
I used to think so too, but now I usually just have Muse or another AI agent on my box do those things for me. I should maybe create a slimmed down API first *arr stack equivalent then hmm
Sonarr just got a big UI upgrade FYI
Prowlarr replaces Jackett?
https://github.com/Jackett/Jackett
Yeah, it interfaces way better with Radarr/Sonarr. I still run Jackett though, good for manual searches.
In this day of vibeslop, it's insane no one thinks to combine all these into single app. The best we can do is having single docker compose file that has to manually point each service into each other.
A single dream app that combines: Media server, crawler, downloader, subtitle, cloudflare bypass etc, with plugin support.
I agree. What is stopping me is primarily the metadata stuff. For example, Sonarr runs a closed-source service called Skyhook which exists to make efficient use of TheTVDB. Since Sonarr is free open source software maybe they don't have to pay (looking at https://www.thetvdb.com/api-information and https://opencollective.com/sonarr).
My dream app is split into two parts. One that serves podcasts, music, books (with OPDS so I can browse my library with KOReader), tv, movies, other multimedia (youtube, whatever else). The other handling the metadata APIs and downloading files from different sources (torrent trackers, torrent DHT, nntp, etc...). Sort of like uber-Jellyfin + uber-Arr.
I guess I can probably get a personal API key for TheTVDB, etc... and develop my own sort of proxy and it wouldn't be so bad. Hmm...
People have been doing just that:
1. Arrmada - https://github.com/tristenlammi/Arrmada 2. Mydia - https://github.com/getmydia/mydia 3. MediaManager - https://github.com/maxdorninger/MediaManager 4. Scryer - https://github.com/scryer-media/scryer
Note: I've not tried any of these
i'm the main dev for Scryer! we have a thriving community of active users. would love to chat
I have one that combines most of this. I left Jellyfin out so far because it has clients for all the various devices, but I’ve replaced the arr stack, sabnzbd, jellyseerr, kavita, audio bookshelf, etc into one Rust binary and a SQLite database. As a bonus, uses local LLMs/decision models to replace a lot of the custom regex based detection of the arr stack, and a mini built in agent with tools for finding, downloading, and manipulating media so that I can find Spanish language content for my kid a bit more easily, as language stuff being tagged is still pretty weak in the ecosystem.
It represents a couple weeks of on and off work, an experiment into how far I can push these tools to make sure I’m understanding them and not falling behind, and I like it a lot. I’ve considered open sourcing it, but to be honest, I don’t really want the burden of being a maintainer, and I have no interest in implementing or maintaining things that fall outside my use case, and so it’s just my own little toy. I imagine that many folks will end up doing the same given a bit of time.
> but to be honest, I don’t really want the burden of being a maintainer
release it to GH and disable issues and discussions tab and call it a day?
(personally I would love to see it, the idea of a single binary of all that stuff struck a chord)
> I’ve considered open sourcing it, but to be honest, I don’t really want the burden of being a maintainer
Honestly you could open-source it with a not-maintained disclaimer just as a way for others to take it to not have to redo the work working with Agents and just build off of your existing work (and you can turn off github issues etc. to prevent nags). I for one would love to poke around with it and point an agent at it to see what it can do
There arent many vibeslop that actually have a userbase tho, who wants a program that changes radically and is not stable?
This basically all comes for free in woltspace [0]. Woltspace believes that you should no longer bother building “scalable” apps, but personal apps that literally only run on your own machine. You can access them from anywhere (cloudflare, tailscale eg) and continuously improve them with your wolts over time - from anywhere.
It’s all open source and harness agnostic [1]. I’m the park ranger for life aka maintainer of the project. Did a recent YouTube video with what i think the future of open source multiagent setups will look like [2]
Happy to chat more about it
[0] https://woltspace.com/ [1] https://github.com/jerpint/woltspace [2] https://www.youtube.com/watch?v=H-4khO7o0XQ
This is not reasonable for complex software, which the *arr stack most certainly is.
Most people do not want to solve the problem of: "how do I download and match arbitrary user-uploaded media across multiple databases"
1 reply →
Well, it's apparently easy, so you should do it.
Literally my only AI use case (I'm retired) is having it write all the software for things I want to do in my life, without having to take the time to do it. For example, the app my kids' school uses to communicate with parents SUCKS (it's so slow), so I wrote something that logs in, pulls new updates, and feeds them to the same AI that manages my calendar/to-do list.
By "I" wrote something, I mean I had an AI do it in about ten minutes.
To your actual point, there used to be a philosophy among the tech literate that it's preferable to have something do one thing and do it very well.
So we monoliths are now back in vogue instead of microservices? /s
(And I agree, for most workloads monoliths are much easier to grasp and deploy than microservices)
Hold on, micro services were the original thing and you piped everything together. Just look at how bash scripts work. grep | sed | awk | ping | nectar -a | echo "holy cow" | vim -a -o -f --my-homie-we-win-this *.o
Now you don't need fifteen apps, all of which do text gripping. You just use the same grep.
Same for the above setup: I don't give a crap about BitTorrent, so why would I want RAM devoted to running anything related to that? RAM is expensive, yo!
With the userbase of 10(at max), i think monolith is fine.
There's been two major disruptions in my experience.
First was Lidarr went for months last year (was it this year?) unable to search/add musicians due to complications with how they were relaying those searches. It took them a long time to refactor that part of the software and make it usable again.
Second was the retirement of Readarr, the ebook-version of this software, which was an absolute shame.
But aside from that this is pretty much set-and-forget software. Although the setting is harder than it should be, should be much easier to favour smallest x265 rips at <resolution>, lossless audio, season rips with subtitles.
What did you replace Readarr with?
I'm trying out LazyLibrarian but I don't really like it, I've been manually going to Anna's Archive.
1 reply →
I build my own version, single binary that does every thing. While I built it, I learned I cannot make it open source or distribute, bc it might be illegal to do so, so I assume many people have built that, but you're always locked into the narrowly scoped lego pieces. So I enjoy my media now, without hassles, all the features I need, none I don't. I hope one day I get to share.
Solution is easy, in fact there are 2 solutions:
1. Clear that "might", it either is or isn't. An AI can get you 90% there, maybe the definitive confirmation would be good from a lawyer.
2. None of this matters if you share it from a foreign code forge and an anonymous pseudonym.
ianal, but presumably you could share a research document that explains the theoretical kinds of broad strokes of an all in one type system, and how youd verify it works.
if anyone decided on their own to put that it into a local model and generate their own version of something that met the theoretical spec thats their own deal...
1 reply →
Same. I made the mistake of adding the downloader to it at the start but brute forced my way through. Single Rust binary for all of the *arrs + sabnzbd is nice though. Unfortunately it is not something I am comfortable making public due to the all-in-oneness of it.
Almost all of the time went to to the downloader (usenet is more complicated than I thought). If I had just focused on the basics (sonarr, radarr, seerr) I could probably could have knocked it out in a day or so.
It is important to point out that “a day or so” - or even the ability to spin up your own version - is only possible because these projects already exist.
Without a tested and validated reference implementation that already accounts for the numerous edge conditions and quirks of media releases, APIs, etc., your vibecoded version would have taken much longer to iterate on.
1 reply →
I think it just sounds intimidating if one hasn't tried, but they are really well designed pieces of software, that are relatively simple to set up (just have to go through the motions and connect everything with API keys).
Highly recommend them to OP. My stack went down once in the past 4 years and it was my fault.
I've been running my instances for over 5 years, I update the Dockers every few months and that's it. I have about five users in different households that rely on it it has never missed a beat.
I’ve had mine going for what feels like ten years now no issues. Even longer if you could some of the earlier managers out there. The arrs are some of the most solid apps I’ve run. Especially once I switched them to use Postgres.
oh I never even thought about switching to postgres.
Another good option is nixflix: https://github.com/kiriwalawren/nixflix (a nixos equivalent)
I do agree a bit with the OP regarding setting everything up. First time I did it, it was a multi day project. A few weeks ago when I was setting everything up, I just asked AI to write me a PowerShell script, I'm sure that if I gave it access to my computer it could have done it even faster! I've started more and more just asking AI to set everything us, especially if it's a GitHub project that needs a bunch of configurations and all that.
Oh cool! I have been running it happily for a bit over a year but found the interplay to be annoying. Currently working on https://github.com/tclancy/lintarr to try to "prove" rules across the stack don't conflict with each other.
It appears the large majority agrees that the *arr stack is fantastic and fundamental context to any vibe coded solution for similar services. I can also confirm resource contention or maintainability is not the issue for me with these.
Selecting good releases, for anime, classic cartoons, various dubbs, subtitles, and quality, size, etc can be troublesome. But it is like anything else, you iterate on it.
There must be large amounts of similar code between Radarr, Lidarr, Sonarr etc.
Whenever I use them I wonder if they could be one unified app with plugins...?
For comparison, audiobookshelf idles at 89MB, emby at 178MB and navidrome at 29MB for me.
I think everyone has different definitions of what they consider heavy. I tend to think anything using over 30MB when idle is a bit much and anything over 300MB is something that really needs to earn it's spot.
There’s also https://autobrr.com/ - not exactly the same but many overlapping features, lightweight, written in Go and works well with que and qbitorrent.
I found this trickier to set up and use. I tried it for sports but ended up switching to Sportarr.
This is a fine sample of Cunningham’s law in action.
The bigger reason is Sonarr and Radarr opens you up to a plethora of attack vectors and realistically at this point you're probably already compromised.
I don't see how. I run them with no public ingress, no plugins or mods. I don't torrent. I'm not sure there's really any attack vector worth worrying about. Certainly no more than many of the other services I host.
https://news.ycombinator.com/item?id=50108872
4 replies →
what the hell are you smoking? even the silly article earlier had the caveat "Yeah it downloads EXEs but its up to you or your family to run them"
and that's totally ignoring the fact that it's only a supremely naive user that hasn't yet refined their filters to exclude dangerous extensions (or, if they're too lazy to do that, rely on one of the many many pre-assembled filter/grabber settings across the net which already do so.)
what fear-mongering and FUD-spread.
You may also want to warn the public about the dangers of having curl, wget, python or gcc installed.
They expose a PLETHORA of attack vectors! you're probably already compromised, realistically!"
... and they're actually more dangerous than a free-floating EXE.
> Sonarr, Lidarr, Radarr
There’s no value to this post honestly.
Maybe the resources in question arent RAM.
Also the barrier to entry for these things has dropped immensely with ai