Fetcharr - a human-developed Huntarr replacement
Fetcharr - a human-developed Huntarr replacement
human-developed
Love the distinction. LOL
it’s today’s trend! One I happen to agree with, which is nice.
I’m trying to limit LLM exposure on this one to “as little as possible, within reason”. It’s still a tool and can be used effectively in some areas.
Also people who think they can just vibe code without ever learning how to code for real. I’ll “vibe code”, but I’m also 10+ years experienced. I can quickly detect bullshit from the AI and I check pretty thoroughly.
Some dentist turned vibe coder will make absolute trash
n ot everything the AI companies try to tell us
Of course not. They are sales. They are trying to maximize the profit potential to their investors. I do believe that if we could get some oversight and regulation, as much as I chafe against regulation…it’s necessary, and get past this novelty stage of AI Rice Cookers, I think AI does have a lot of potential.
For some reason the hubub around non-AI software reminds me of produce.
‘Guaranteed 100% locally open-sourced, free-range, GMOAI-free code!’
Maybe we should have some rating system like Rated PG, or R, etc but for opensource software:
It’s better is more fine grained.
neighbor farmer dares to plant non patented seed, and the wind blows his neighbors Monsanto pollen (corn is wind pollinated) into his field and it pollinates his crop, he is now in patent violation of a company he has no business with that is now going to aggressively come after him in court.
so it is like AI - it spreads everywhere and creates a lot of legal problems
That’s an interesting point. In my years of running them all I’ve always needed a third-party something to upgrade or find missing media. I don’t exactly know why the built-in systems don’t work, but they genuinely do not seem to. I’ll occasionally see a scan go off but, for some reason, nothing ever gets picked up.
So, yeah; long story short, the built-ins don’t work and I don’t know why and this was still easier than trying to figure it out.
honestly if they work for you then awesome! Maybe mine is misconfigured somehow or maybe I just have bad luck, but Radarr, Sonarr, Lidarr, etc have never caught everything. Once I started playing with this I realized just how much I was missing.
Either way, if your current system works for you then I don’t usually recommend changing it. Give it a try if you want- the worst it can do it accidentally find something that could be upgraded or missing. Or if you’d rather leave your stack alone that’s perfectly fine as well.
Sonarr and Radarr heavily rely on quality profiles you need to define, for examples see TrashGuides.
Your system probably needs less setup in comparison
They do, but only by passively monitoring RSS feeds for new content that exceeds your current quality. They don’t do active upgrade searches unless you manually trigger them.
The distinction is important if you imported some or all of your media library, rather than building it from scratch with the arr stack stuff. It also matters if you source some your content via providers that don’t have RSS feeds.
that’s a decent point. Not everyone knows about the Huntarr saga (Reddit link but that’s where the story broke) and what it did.
The idea is that you’ll occasionally want to go through all your media and make sure it’s the best quality available and that nothing’s missing. New releases get published, remuxes sometimes fix issues, etc. This little CLI container goes through and periodically searches everything you connect it to, so you don’t have to sacrifice hours of your weekend doing manual hunting.
find and fetch missing or upgradable media
Sounds like a solution in search of a problem, considering the other Servarr apps already do that.
yep! If your arr stack already does what you want then I don’t really recommend adding more to it for the sake of doing so. The issue I have (and maybe it’s a layer 8 problem) is that mine does not. At least not as well as I want. If Sonarr ever did find anything on its own I never saw it, and while developing Fetcharr I definitely grabbed a few movies I was missing. It definitely seems like I’m not alone in this issue so I think it’ll be helpful for folks.
If you want, try it out and see if it does anything for you. If you think it’ll be helpful or a good replacement than great! If you find that you already have everything you need then that’s even better.
#Radarr
curl -X POST “localhost:7878/api/v3/command”
-H “X-Api-Key: YOUR API KEY”
-H “Content-Type: application/json”
-d ‘{“name”: “missingMoviesSearch”}’
This does it for me. I have this in a cronjob together with one for sonarr and it starts the active search of the arrs.
I had a quick look, I think I could find a use for it but what I’d most be interested in is a dry run spitting out a list of missing / low res / low bitrate / stereo (I much prefer 5.1+), perhaps old codec, etc. media. Like many I have my own standards for what needs to be how good and so forth.
Ideally I could edit said list and put it back in as an active search list (perhaps chunking and prioritizing as well and iterating the process). Seems like this is 90% of the way there, any chance of an enhancement ?
if you haven’t yet, I’d check out Configarr and the trash guides as a baseline to create profiles that upgrade media to a certain standard so simply hitting the search button will give you what you want. That’s likely the best option, though it could theoretically be done in Fetcharr itself.
I don’t want to balloon the project but I had an idea early on that people would want customization if I released it, so I thought about adding a sort-of “plugin” system where Fetcharr loads jar files from a directory and they get an API to access and use as needed.
I haven’t figured out the details yet. That’ll be another weekend, or a contribution from someone. The idea and skeleton is there, though.
I don’t want to balloon the project
Fair cop, and no I haven’t really dived into Configarr and the trash guides (although I vaguely remember coming across them), oh joy, another rabbit hole. I do try to keep a simple stack, and what I have has served me well for years. But thanks, no need to reinvent the wheel if that handles my use case.
Having smaller projects with specific scope that do something well and can be plugged together is always preferable to some sprawling monstrosity. Used to be called the Unix way (pipe sed into awk etc.) and could stand to be revisited today. Best of luck.
glad to send someone on another Sunday rabbit hole! To be clear, Fetcharr is essentially automatically hitting the “search” button for you on a few semi-random items in your library. If your profiles are set up well, it will naturally handle the rest itself.
That said, there is a plan-in-my-head for “plugin” support so I don’t end up shoving a bunch of stuff into one app but still allow anyone to make something they need. If profiles don’t fit your use-case then that’ll be an option at some point in the future.
So, unless I didn’t dive deep enough, Configarr / Trash guides is mostly about setting up quality profiles and media paths and so forth, something I long ago sorted out to my satisfaction.
What I guess I was after was something to find stuff that has fallen through the cracks, highlighting stuff that doesn’t meet my standards and seeing whether I care enough to go looking for upgrades.
Strangely there doesn’t seem to be a simple app to run ffprobe over your library and populate a database for querying video quality, maybe I’ll get around to knocking one out one day, but today is not that day.
USE_CUTOFF environment variable.
Yeah, I have “Analyze Video Files” on, doesn’t get me a list of substandard files though, just sends the arr after stuff it’s probably already not finding.
tdarr Hadn’t seen the Property search in here before, might get me most of the way there. Got it around somewhere, might have to spin it back up. Maybe I can raid it’s database as well. Thanks.
people have presented AI slop
that has been happening in this community a lot recently.
I did still use ChatGPT
“not vibecoded” looks inside vibecoded
i’m pretty absolutionist on AI. i don’t use it in any capacity myself, and I do my best to avoid using software that was made with it. that’s not fully possible, unfortunately, but i prefer to put my support where my morals align.
you are clearly a competent programmer, so why are you giving ground to the plagiarism machine that’s killing the planet? can you not do the work without it?
it reminds me of a meme i saw recently. “we know child labor is bad, so in our new product, we only used a little child labor!”
Honestly, I should have figured these kinds of questions would come up around a project that is specifically designed to not use LLMs as much as possible. It’s a fair (and hard) series of questions, so here’s where I currently stand:
I don’t particularly like the profit-driven nature of the companies or NPOs behind the popular LLMs. Capitalism (Communism, Socialism, Anarchism, etc) in their purest forms are all terrible for different reasons, and you can see the issues with Capitalism reflected in the decisions these orgs make affecting their products and stakeholders.
I do, however, like the idea of an LLM as a secondary and more customized option to a search engine. There are questions I’ve had for years that weren’t easily Google-able but answered with <pick your favorite LLM> in a few seconds and easily verifiable with more conventional search techniques. Usually this is because I’m missing terminology or the current terminology is generic enough and the concept specific enough that any information is drowned in pages of results for other things. The vector-based nature of LLMs means you can get to specific concepts quite quickly.
They’re also pretty decent at stuff I am terrible at, like quick bits of math I would spend hours or days figuring out. This is a me problem, but my math skills are roughly around pre-college with patches of understanding around geometry and trig and I had to spend enormous effort getting just-barely-passing math grades for my degree. It’s not fun for me but it’s usually necessary for software development somewhere. A heavy-math portion is a good way to kill my motivation for a project. Similarly, there are languages which just aren’t fun and are repetitive and iterative in nature. Bash is a good example; I’m a Linux sysadmin and DevOps engineer by trade but a bash script with fancy flags and features just sucks to write. An LLM can do them easily and quickly and they’re easy enough to check, modify, and criticize.
There are also things LLMs are terrible at, and LLMs aren’t “excellent” at any particular thing. I’m remembering a clipped-to-death meme of someone in college where one professor says LLMs can’t do their particular subject very well but can do others fine. Another professor says the same thing shortly after, but for their particular subject. It highlights a problem tangentially related to the Dunning-Kruger effect with the same basis: people underestimate the depth of fields they do not understand. That said, LLMs can’t be trusted blindly and need to be verified. You can’t use an LLM to develop an understanding of a thing without a lot of learning on the side from more traditional media sources. You can, however, often use it to fill in gaps of understanding.
There are moral and ethical issues with current LLMs and because of those the acronyms LLM and AI are likely forever tainted- or at least for the next decade or so. The popular phrase “plagiarism machine” is a good example of that. The phrase is accurate enough and hits on an emotional level that’s easy to parrot and remember, and those kinds of things tend to stick around the collective subconscious long after the phrases themselves die.
One of the main issues today is over-reliance on LLMs for doing-your-work-for-you which is where vibe-coding comes in. Obviously it’s terrible for the reasons I explained above (a lack of understanding your own project and learning) but after trying it a bit myself I can see that it’s fun to do. I use opencode on home projects occasionally to keep on top of the understanding of these tools and to try out new things. It’s never directly saved me any time, but often it frees me up to do something else for a while and then I come back to a mostly-what-I-wanted thing that required minimal editing. I’ve never created a full project from start to finish with these tools, however; only to change bits of existing projects and fix issues. My plan was to try this out at some point but after using them for a while and seeing vibe-coded projects online I don’t think I need to in order to get a decent understanding of what will happen.
I can’t say for sure that the current generation and use of LLMs is “killing the planet” because there’s not enough research on it yet. There’s preliminary studies that largely point to “yes” but usually in strange and unexpected ways that could be solved. A few of those are refuted and all of them need reproducible results and peer-reviewing at the very least. So, I mean, yeah, it’s probably not wrong but, unfortunately, we just need to wait and see. There is, of course, the obvious dangers of wait-and-see, but these are difficult society-level issues and I don’t have any answers here. I’m not going to get hung up on problems I can’t solve.
LLMs in their current state remind me of 3D printers. I also use a 3D printer because it’s fun and a useful tool. Over-reliance on 3D-printed produce is problematic and they’re not the tool for every job. There’s second-order effects of 3D printers that are, maybe surprisingly, not talked about frequently with the average user which is plastic waste. I’m sure oil companies love 3D printers because it’s a great way to sell plastic and it’s not in the collective consciousness yet. There’s a number of parallels to be drawn between these and current LLMs (mostly the ones in web browsers owned and hosted by companies, but also self-hosted ones). That said, I still use a 3D printer occasionally for the things that I can 3D print effectively. I use LLMs occasionally for the things that save me time, energy, and/or sanity.
The question I have to ask myself is “so I believe I am a terrible person if I use X thing that I know causes harm?” - the answer is often “no” but it changes based on new information and where I’m at in life. I worry about what I can change and sometimes what I can’t change. There’s the concept of “voting with your wallet” but that’s currently largely been proven to be a moral-high-ground thing more than a hurt-the-company thing. That’s fine; everyone is entitled to their own opinion and everyone has to do what’s best for them.
The only thing I felt was “unfair” about your statement was the idea that any use of an LLM constituted a vobe-coded project. I disagreed with that idea and thought it was a disingenuous take. It was also not cool to tell someone you think their hard work and time is effectively worthless. I see where you’re coming from and I respect that you know what you want and what you’re going to do. I also think that words have meaning and maybe more nuance to your take would have been a good thing to share.