• 2 posts
  • 3 comments
Joined 6 years ago
Cake day: March 11th, 2021
  • Different angle on this, and it may or may not fit your setup, but it changed things for me.

    I’ve been accumulating audio since the early 2000s. Twenty-some years of ripped CDs, vinyl rips from release groups, random downloads. Several thousand albums. At some point I accepted that tags were never going to be consistent across that pile, because the sources never agreed on anything in the first place: a 1979 vinyl rip tagged by whoever released it, a CD rip from 2004, and a modern FLAC have nothing in common metadata-wise, and no tagger reconciles that without me babysitting it.

    So I stopped trying to fix the tags and leaned on the folder structure instead. My tree already carried everything I cared about: genre at the top, then artist, then Artist - Year - Album, with subfolders for live, compilations and singles. That structure took years to build and it’s reliable in a way my tags never were.

    I run Velvet (mStream fork) as the server for it. It serves the library by folder structure rather than by tag database, so there’s nothing to scan, nothing to match, nothing to get wrong. And I vibe-coded Sharesonic, an Android client for it, because I wanted to browse my library the way it’s actually organized and share a track, a playlist or an entire folder as a public link without exporting anything. Personal project, it’s on GitHub if anyone wants it.

    To be clear about what this does and doesn’t solve: it doesn’t repair your files. If Picard truncated audio on you, that’s a real problem and it needs fixing at the file level, not at the player level. Worth checking whether the audio itself is actually shorter or whether it’s just the duration metadata disagreeing with the stream, because both look identical from the player side and only one of them is destructive.

    The trade-off is real. You lose cross-cutting queries: no “everything from 1977 across all artists”, no proper album artist handling for compilations. If that matters, stay on Jellyfin and keep grinding through Picard. If you mostly navigate by “I want to hear that specific album”, folders are faster than any tag database.

  • Honestly, I don’t know what people expect either, and I do think there’s a fair bit of snobbery and gatekeeping around what this community rightly calls AI slop (and don’t get me started on reddit’s /r/selfhosted lol).

    I’ve been interested in code from afar, but my life priorities and passions mean learning to code properly has to take a back seat. That said, I have ideas, I’m rigorous, and I can read and learn. So I use Claude to vibe-code a whole bunch of tools that fill a real gap in what already exists for my hobbies and my two jobs. Whether I use AI or not is my responsibility, and every public repo I have carries a disclaimer about AI usage.

    For me, the bar should be: does it work, is it documented, and is the AI involvement disclosed clearly ? If yes to all three, I’m curious enough and big enough to review the repo and try it myself.

    Mods here have proposed tags and standards to tell apart projects with varying degrees of AI involvement. Yet the systematic backlash makes me hesitant to share tools that could genuinely help some people, spark ideas for others, or maybe even lead to a collaboration with someone skilled enough to build something exceptional for the community. In my case, AI is a very useful tool, but it only ever produces stuff for me alone.

    Which is a shame.

I AM NOT THE DEV

Hi all,

There are plenty of CalDAV servers out there, but surprisingly very few good self-hosted web interfaces to actually access and manage your calendars.

For the past couple of years I’ve been following a project called Luna, and I think it deserves a bit more visibility here: https://github.com/Opisek/luna

It can pull calendars from multiple sources (CalDAV, Google, iCal links, etc.) and bring them together in a single interface.

For people like me with a constantly changing, busy, and somewhat chaotic schedule, having everything in one place like this is incredibly useful.

The project is still young, but it’s progressing steadily, and the developer has been very patient and responsive whenever I’ve interacted with him.

Just wanted to share it here and show some support.

PS: I think the developer didn’t really expect anyone to promote the project or draw attention to it yet 🙂 Screenshots will probably come in time. It’s still a young project, so a little patience goes a long way.

That was the solution: UFW was blocking internal traffic. Running ufw allow from 172.16.0.0/12 fixed it.


Hello!

So until now, I’ve been self-hosting at home with my own machines, and this is the first time I’m working with a VPS.

I’m running Nginx Proxy Manager (NPM) and my application in separate Docker containers on my AlphaVPS VPS with the IP address 100.100.10.10. I’ve configured UFW to secure my server, and I’m trying to access my application through a domain using NPM, but I’m getting a 504 Gateway Timeout error.

Here’s what I’ve done so far with UFW:

1. Block All Incoming Traffic by Default

ufw default deny incoming
ufw default allow outgoing

2. Allowed Specific IPs

I’ve allowed specific IPs which are my home and work IP:

ufw allow from 100.100.10.11
ufw allow from 100.100.10.12

3. Allowed Ports for Nginx Proxy Manager

I’ve opened the necessary ports for HTTP (80) and HTTPS (443) to be accessible from the outside:

ufw allow 80
ufw allow 443

What I did in Nginx Proxy Manager:

  • I created an A record for sub.domain.com through my registrar, pointing to the VPS IP (100.100.10.10).
  • In Nginx Proxy Manager, I added a Proxy Host for the domain sub.domain.com, set the IP address (100.100.10.10), and the port of my application inside Docker (e.g., 8000).
  • I also enabled SSL and requested a new certificate for sub.domain.com.

Issue:

Even after setting up everything, I’m facing a 504 Gateway Timeout error when trying to access my application through the domain name.

Could someone help me troubleshoot why I’m getting the 504 Gateway Timeout error? I might have done something wrong as my understanding of this is very basic. Could it be a problem with the UFW setup, or is there something wrong with the Nginx Proxy Manager configuration?

Thanks in advance for your help!